PHPMailerÔ¶³Ì´úÂëÖ´ÐÐÎó²î£¨CVE-2021-3603£©

Ðû²¼Ê±¼ä 2021-06-21

0x00 Îó²î¸ÅÊö

CVE     ID

CVE-2021-3603

ʱ      ¼ä

2021-06-21

Àà      ÐÍ

RCE

µÈ      ¼¶

¸ßΣ

Ô¶³ÌʹÓÃ

ÊÇ

Ó°Ïì¹æÄ£

PHPMailer <= 6.4.1  

¹¥»÷ÖØÆ¯ºó

¸ß

¿ÉÓÃÐÔ

¸ß

Óû§½»»¥

ÎÞ

ËùÐèȨÏÞ

ÎÞ

PoC/EXP

ÒѹûÕæ

ÔÚҰʹÓÃ

·ñ

 

0x01 Îó²îÏêÇé

image.png

PHPMailerÊÇÒ»¸öÓÃÓÚ·¢Ë͵ç×ÓÓʼþµÄ¿ªÔ´PHP¿â£¬£¬£¬£¬£¬¿ÉÒÔÉ趨·¢ËÍÓʼþµØµã¡¢»Ø¸´µØµã¡¢ÓʼþÖ÷Ìâ¡¢htmlÍøÒ³¼°ÉÏ´«¸½¼þ£¬£¬£¬£¬£¬Ê¹ÓÃÆðÀ´ºÜÊÇÀû±ã£¬£¬£¬£¬£¬ÏÖÔÚÒѱ»È«ÇòÁè¼Ý900ÍòµÄÓû§Ê¹Óᣡ£

2021Äê06ÔÂ16ÈÕ£¬£¬£¬£¬£¬PHPMaileÐû²¼Ç徲ͨ¸æ£¬£¬£¬£¬£¬ÐÞ¸´ÁËPHPMailerÖеÄ2¸öÔ¶³Ì´úÂëÖ´ÐÐÎó²î£¨CVE-2021-3603ºÍCVE-2021-34551£©£¬£¬£¬£¬£¬Ô¶³Ì¹¥»÷Õß¿ÉÒÔʹÓÃÕâЩÎó²îÔÚϵͳÉÏÖ´ÐÐí§Òâ´úÂë¡£¡£

PHPMailerÔ¶³Ì´úÂëÖ´ÐÐÎó²î£¨CVE-2021-3603£©

¸ÃÎó²îµÄCVSSv3ÆÀ·ÖΪ8.1¡£¡£validateAddress()º¯ÊýÓÃÓÚÑéÖ¤µç×ÓÓʼþµØµã£¬£¬£¬£¬£¬ÈôÊÇvalidateAddress()µÄ$patternselect²ÎÊý±»ÉèÖÃΪ'php'£¨Ä¬ÈÏÖµ£¬£¬£¬£¬£¬ÓÉPHPMailer::$validator½ç˵£©£¬£¬£¬£¬£¬²¢ÇÒÈ«¾ÖÃüÃû¿Õ¼ä°üÀ¨Ò»¸öÃûΪphpµÄº¯Êý£¬£¬£¬£¬£¬Ëü½«ÓÅÏÈÓÚͬÃûµÄÄÚÖÃÑéÖ¤Æ÷±»Å²Óᣡ£Ô¶³Ì¹¥»÷Õß¿ÉÒÔͨ¹ý½á¹¹¶ñÒâÇëÇóÀ´Ê¹ÓôËÎó²î£¬£¬£¬£¬£¬´Ó¶ø¿ÉÒÔÔÚÄ¿µÄϵͳÉÏÖ´ÐÐí§Òâ´úÂë¡£¡£¸ÃÎó²îÒѾ­ÔÚPHPMailer 6.5.0ÖÐͨ¹ý¾Ü¾øÊ¹ÓüòÆÓ×Ö·û´®×÷ΪÑéÖ¤Æ÷º¯ÊýÃû³ÆÀ´»º½â¡£¡£

 

PHPMailerÔ¶³Ì´úÂëÖ´ÐÐÎó²î£¨CVE-2021-34551£©

ÈôÊÇsetLanguage()ÒªÁìµÄ$lang_path²ÎÊýδ¹ýÂËÓû§ÊäÈëÇÒ±»ÉèÖÃΪUNC·¾¶£¬£¬£¬£¬£¬¹¥»÷Õß¿ÉÒÔͨ¹ý´Ó¸ÃUNC·¾¶¼ÓÔØÎļþÀ´Ô¶³ÌÖ´Ðо籾»ò´úÂë¡£¡£´ËÎó²î½ö±£´æÓÚ¿ÉÆÊÎö UNC ·¾¶µÄϵͳ£¬£¬£¬£¬£¬Í¨³£½öÊÊÓÃÓÚ Microsoft Windows¡£¡£

 

Ó°Ïì¹æÄ£

PHPMailer <= 6.4.1

 

0x02 ´¦Öóͷ£½¨Òé

ÏÖÔÚ´ËÎó²îÒѾ­ÐÞ¸´£¬£¬£¬£¬£¬½¨ÒéʵʱÉý¼¶¸üÐÂÖÁPHPMailer 6.5.0¡£¡£

ÏÂÔØÁ´½Ó£º

https://github.com/PHPMailer/PHPMailer

 

ͨÓÃÇå¾²½¨Òé

¶Ô´úÂë¾ÙÐÐÇå¾²É󼯣¬£¬£¬£¬£¬¾¡Ôç¼ì²âDZÔÚµÄÇå¾²Îó²î£¬£¬£¬£¬£¬²¢ÔöÇ¿´úÂëÂß¼­ÐÔ¡£¡£

¶ÔÓû§µÄÊäÈë¾ÙÐйýÂË»òתÒ壬£¬£¬£¬£¬×èÖ¹²ÎÊý¿É¿Ø¡£¡£

Óû§Ó¦°´ÆÚ¸üÐÂÈí¼þ¡¢³ÌÐòºÍÓ¦ÓóÌÐò£¬£¬£¬£¬£¬È·±£Ó¦ÓóÌÐòÊÇ×îе쬣¬£¬£¬£¬ÒÔ±£»£»£»¤ÏµÍ³ÃâÊÜÎó²îʹÓᣡ£

 

0x03 ²Î¿¼Á´½Ó

https://github.com/PHPMailer/PHPMailer/blob/master/SECURITY.md

https://github.com/PHPMailer/PHPMailer/commit/45f3c18dc6a2de1cb1bf49b9b249a9ee36a5f7f3

https://www.huntr.dev/bounties/1-PHPMailer/PHPMailer/

https://nvd.nist.gov/vuln/detail/CVE-2021-3603

 

0x04 ʱ¼äÏß

2021-06-16  PHPMailerÐû²¼Ç徲ͨ¸æ

2021-06-21  VSRCÐû²¼Ç徲ͨ¸æ

 

0x05 ¸½Â¼

 

CVSSÆÀ·Ö±ê×¼¹ÙÍø£ºhttp://www.first.org/cvss/

image.png