¡¾Â©¶´Í¨¸æ¡¿Apache Struts2Ô¶³Ì´úÂëÖ´ÐЩ¶´£¨CVE-2021-31805£©

Ðû²¼Ê±¼ä 2022-04-13


0x00 ©¶´¸ÅÊö

CVE   ID

CVE-2021-31805

ʱ    ¼ä

2022-04-12

Àà    ÐÍ

RCE

µÈ    ¼¶

¸ßΣ

Ô¶³ÌÀûÓÃ

ÊÇ

Ó°Ï췶Χ

Apache Struts 2.0.0-2.5.29

¹¥»÷ÅÓ´ó¶È


Óû§½»»¥


PoC/EXP

            ÒѹûÈ»

ÔÚÒ°ÀûÓÃ


 

0x01 ©¶´ÏêÇé

Apache Struts2ÊÇÒ»¸ö»ùÓÚMVCÉè¼ÆģʽµÄÁ÷ÐеÄWebÓ¦Ó÷¨Ê½¿ò¼Ü¡£

4ÔÂ12ÈÕ£¬Apache Struts2Ðû²¼Äþ¾²Í¨¸æ£¨S2-062£©£¬ÐÞ¸´ÁËApache Struts2ÖеÄÒ»¸öÔ¶³Ì´úÂëÖ´ÐЩ¶´£¨CVE-2021-31805£©¡£

ÓÉÓÚ¶ÔCVE-2020-17530µÄÐÞ¸´²»ÍêÕû£¬ÔÚApache Struts 2.0.0-2.5.29ÖУ¬Èç¹û¿ª·¢ÈËԱʹÓà %{...} Óï·¨Ó¦ÓÃÇ¿ÖÆ OGNL ½âÎö£¬±êÇ©µÄijЩÊôÐÔÈÔÈ»¿É±»¶þ´Î½âÎö¡£µ±¶Ô±êÇ©ÊôÐÔÖÐδ¾­ÑéÖ¤µÄԭʼÓû§ÊäÈë½øÐнâÎöʱ¿ÉÄܻᵼÖÂÔ¶³Ì´úÂëÖ´ÐС£

´Ë©¶´µÄPoC/EXPÒѹûÈ»£¬½¨ÒéÏà¹ØÓû§¾¡¿ìÐÞ¸´¡£ÑéÖ¤ÈçÏ£º

image.png


Ó°Ï췶Χ

Apache Struts 2.0.0-2.5.29

 

0x02 Äþ¾²½¨Òé

Ä¿Ç°´Ë©¶´ÒѾ­ÐÞ¸´£¬½¨ÒéÊÜÓ°ÏìÓû§¼°Ê±Éý¼¶¸üе½Apache Struts 2.5.30»ò¸ü¸ß°æ±¾¡£

ÏÂÔØÁ´½Ó£º

https://cwiki.apache.org/confluence/display/WW/Version+Notes+2.5.30

»º½â´ëÊ©£º

ÖÆÖ¹¶Ô²»ÊÜÐÅÈλòδ¾­ÑéÖ¤µÄÓû§ÊäÈëʹÓÃÇ¿ÖÆ OGNL ½âÎö¡£

 

0x03 ²Î¿¼Á´½Ó

https://cwiki.apache.org/confluence/display/WW/S2-062

https://www.mail-archive.com/announce@apache.org/msg07237.html

 

0x04 °æ±¾ÐÅÏ¢

°æ±¾

ÈÕÆÚ

ÐÞ¸ÄÄÚÈÝ

V1.0

2022-04-13

Ê×´ÎÐû²¼

V1.0

2022-04-15

ÐÂÔö©¶´ÑéÖ¤ÐÅÏ¢


0x05 ¸½Â¼

¶¶È¦Îª¶Ä¶øÉú¼ò½é

¶¶È¦Îª¶Ä¶øÉú¹«Ë¾½¨Á¢ÓÚ1996Ä꣬²¢ÓÚ2010Äê6ÔÂ23ÈÕÔÚÉî½»ËùÖÐС°åÕýʽ¹ÒÅÆÉÏÊУ¬ÊǹúÄÚ¼«¾ßʵÁ¦µÄ¡¢ÓµÓÐÍêÈ«×ÔÖ÷֪ʶ²úȨµÄÍøÂçÄþ¾²²úÎï¡¢¿ÉÐÅÄþ¾²¹ÜÀíƽ̨¡¢Äþ¾²·þÎñÓë½â¾ö·½°¸µÄ×ÛºÏÌṩÉÌ¡£

¹«Ë¾×ܲ¿Î»ÓÚ±±¾©ÊÐÖйشåÈí¼þÔ°£¬ÔÚÈ«¹ú¸÷Ê¡¡¢ÊС¢×ÔÖÎÇøÉèÓзÖÖ§»ú¹¹£¬ÓµÓÐÁýÕÖÈ«¹úµÄÇþµÀÌåϵºÍ¼¼ÊõÖ§³ÖÖÐÐÄ£¬²¢ÔÚ±±¾©¡¢ÉϺ£¡¢³É¶¼¡¢¹ãÖÝ¡¢³¤É³¡¢º¼ÖݵȶàµØÉèÓÐÑз¢ÖÐÐÄ¡£

¶àÄêÀ´£¬¶¶È¦Îª¶Ä¶øÉúÖÂÁ¦ÓÚÌṩ¾ßÓйú¼Ê¾ºÕùÁ¦µÄ×ÔÖ÷´´ÐµÄÄþ¾²²úÎïºÍ×î¼Ñʵ¼ù·þÎñ£¬×ÊÖú¿Í»§È«ÃæÌáÉýÆäIT»ù´¡ÉèÊ©µÄÄþ¾²ÐÔºÍÉú²úЧÄÜ£¬Îª´òÔìºÍÌáÉý¹ú¼Ê»¯µÄÃñ×åÐÅÏ¢Äþ¾²¹¤ÒµÁì¾üÆ·Åƶø²»Ð¸Å¬Á¦¡£


¹ØÓÚ¶¶È¦Îª¶Ä¶øÉú

¶¶È¦Îª¶Ä¶øÉúÄþ¾²Ó¦¼±ÏìÓ¦ÖÐÐÄÖ÷ÒªÕë¶ÔÖØÒªÄþ¾²Â©¶´µÄÔ¤¾¯¡¢¸ú×ٺͷÖÏíÈ«Çò×îеÄÍþвÇ鱨ºÍÄþ¾²³ÂËß¡£

¹Ø×¢ÒÔϹ«Öںţ¬»ñÈ¡È«Çò×îÐÂÄþ¾²×ÊѶ£º

image.png