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