¡¾·ì϶¹«¸æ¡¿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 ¸½Â¼

GA»Æ½ð¼×¼ò½é

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

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

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


¹ØÓÚGA»Æ½ð¼×

GA»Æ½ð¼×°²È«Ó¦¼±ÏìÓ¦ÖÐÐÄÖØÒªÕë¶Ô³ÁÒª°²È«·ì϶µÄÔ¤¾¯¡¢¸ú×ٺͷÖÏíÈ«Çò×îеÄÍþвµý±¨ºÍ°²È«»ã±¨¡£

¹Ø×¢ÒÔϹ«¼ÒºÅ£¬»ñȡȫÇò×îа²È«×ÊѶ£º

image.png