Apache Struts 2 Ô¶³Ì´úÂëÖ´ÐÐÎó²î£¨cve-2018-11776£©´¦Öóͷ£ÊÖ²á
2018-08-23
±±¾©Ê±¼ä8ÔÂ22ÈÕ£¬Struts¹Ù·½¹ûÕæÁËÎó²îS2-057£¨CVE-2018-11776£©¡£¸ÃÎó²î¿ÉÄÜÔÚÁ½ÖÖÇéÐÎϱ»´¥·¢£¬µÚÒ»£¬µ±Ã»ÓÐΪµ×²ãxmlÉèÖÃÖнç˵µÄЧ¹ûÉèÖÃnamespaceÖµ£¬²¢ÇÒÆäÉϲ¿²Ù×÷ÉèÖÃûÓÐnamespace»òͨÅänamespaceʱ£¬¿ÉÄÜ×é³ÉRCE¹¥»÷¡£µÚ¶þ£¬µ±Ê¹ÓÃûÓÐvalueºÍaction¼¯µÄurl±êǩʱ£¬²¢ÇÒÆäÉϲã²Ù×÷ÉèÖÃûÓлòͨÅänamespaceʱ£¬Ò²¿ÉÄÜ×é³ÉRCE¹¥»÷¡£
https://cwiki.apache.org/confluence/display/WW/S2-057
¶þ. Ó°Ïì¹æÄ£
l Struts2.3 ¨C 2.3.34
l Struts2.5 ¨C 2.5.16
l Struts 2.3.35
l Struts 2.5.17
Èý. Îó²îÅŲé
3.1 °æ±¾¼ì²â
3.1.1 ͨ¹ýÉèÖÃÎļþ¼ì²â
´ËÎó²î±¬·¢ÓڵͰ汾µÄStruts×é¼þ£¬µ±Ó¦ÓÃϵͳÒýÈëÏà¹Ø×é¼þʱ£¬½«±£´æ±»¹¥»÷ÕßÔ¶³Ì¹¥»÷µÄΣº¦¡£½¨ÒéÓÉÓ¦Óÿª·¢Ö°Ô±ÅŲéÒýÈë×é¼þµÄ°æ±¾ÊÇ·ñ´¦ÓÚÊÜÓ°Ïì¹æÄ£Ö®ÄÚ¡£
Éó²éMavenÉèÖÃÎļþpom.xmlÖйØÓÚ×é¼þµÄ°æ±¾¡£È磺
|
<dependency> <groupId>org.apache.struts</groupId> <artifactId>struts2-core</artifactId> <version>2.5.13</version> </dependency> |
3.1.2 ͨ¹ý×é¼þÃû¼ì²â
Èôºì×ÖËùʾ°æ±¾ÔÚÊÜÓ°Ïì¹æÄ£ÄÚ£¬ÔòÇëÓû§¾¡¿ìÉý¼¶Struts2ÖÁ×îа汾£¬ÒÔ°ü¹Üºã¾ÃÓÐÓõķÀ»¤¡£
LinuxϵͳÏ¿ÉʹÓÃÒÔÏÂÏÂÁî²éÕÒÄ¿½ñʹÓõÄstruts2-core°ü£¬Í¨¹ýÉó²éÆäÎļþÃû£¬ÅжÏÄ¿½ñ°æ±¾¡£
|
find / -name struts2-core-*.jar |
Èôºì¿ò´¦°æ±¾ºÅÔÚÊÜÓ°Ïì¹æÄ£ÄÚ£¬ÔòÇëÓû§¾¡¿ìÉý¼¶ÖÁ×îа汾¡£
ËÄ. Îó²î·À»¤
¹Ù·½ÒÑÔÚ×îа汾ÖÐÐÞ¸´ÁË´ËÎó²î£¬ÇëÓû§¾¡¿ì½«StrutsÉý¼¶ÖÁ¹Ù·½ÐÞ¸´°æ±¾£¬2.3.*µÄÓû§ÐèÉý¼¶ÖÁ2.3.35£»2.5.*µÄÓû§ÐèÉý¼¶ÖÁ2.5.17¡£¿ª·¢Ö°Ô±¿Éͨ¹ýÉèÖÃMaven»òGradleµÄ·½·¨¶ÔÓ¦ÓÃÉý¼¶²¢±àÒëÐû²¼£¬Ò²¿ÉÊÖ¶¯ÏÂÔØ×îÐÂStruts¿ò¼Ü¾ÙÐÐÌæ»»¡£
MavenÉèÖÃ
|
<!-- https://mvnrepository.com/artifact/org.apache.struts/struts2-core --> <dependency> <groupId>org.apache.struts</groupId> <artifactId>struts2-core</artifactId> <version>2.5.17</version> </dependency> |
GradleÉèÖÃ
|
// https://mvnrepository.com/artifact/org.apache.struts/struts2-core compile group: 'org.apache.struts' name: 'struts2-core' version:'2.5.17' |
¹Ù·½ÏÂÔØÁ´½Ó£º
|
Struts2.3.35 |
http://mirrors.hust.edu.cn/apache/struts/2.3.35/struts-2.3.35-all.zip |
|
Struts2.5.17 |
http://mirrors.hust.edu.cn/apache/struts/2.5.17/struts-2.5.17-all.zip |
4.2 ÔÝʱ½â¾ö½¨Òé
ÅŲéËùÓÐStruts 2µÄÉèÖÃÎļþ£¬Èçstruts.xml£¬ÎªÃ»Óнç˵namespaceÃüÃû¿Õ¼äµÄpackage½ÚµãÌí¼ÓÃüÃû¿Õ¼äÉèÖã¬Ê¾ÀýÈçÏ£º
|
<package name="user" namespace="/user" extends="struts-default"> <action name="login"> </action> </package> |
ÉùÃ÷
±¾Ç徲ͨ¸æ½öÓÃÀ´ÐÎò¿ÉÄܱ£´æµÄÇå¾²ÎÊÌ⣬AG¹«Ë¾¿Æ¼¼²»Îª´ËÇ徲ͨ¸æÌṩÈκΰü¹Ü»òÔÊÐí¡£ÓÉÓÚÈö²¥¡¢Ê¹ÓôËÇ徲ͨ¸æËùÌṩµÄÐÅÏ¢¶øÔì³ÉµÄÈκÎÖ±½Ó»òÕß¼ä½ÓµÄЧ¹û¼°Ëðʧ£¬¾ùÓÉʹÓÃÕß×Ô¼ºÈÏÕæ£¬AG¹«Ë¾¿Æ¼¼ÒÔ¼°Ç徲ͨ¸æ×÷Õß²»Îª´Ë¼ç¸ºÈκÎÔðÈΡ£
AG¹«Ë¾¿Æ¼¼ÓµÓжԴËÇ徲ͨ¸æµÄÐÞ¸ÄÏ¢ÕùÊÍȨ¡£ÈçÓû×ªÔØ»òÈö²¥´ËÇ徲ͨ¸æ£¬±ØÐè°ü¹Ü´ËÇ徲ͨ¸æµÄÍêÕûÐÔ£¬°üÀ¨°æÈ¨ÉùÃ÷µÈËùÓÐÄÚÈÝ¡£Î´¾AG¹«Ë¾¿Æ¼¼ÔÊÐí£¬²»µÃí§ÒâÐ޸ĻòÕßÔö¼õ´ËÇ徲ͨ¸æÄÚÈÝ£¬²»µÃÒÔÈκη½·¨½«ÆäÓÃÓÚÉÌҵĿµÄ¡£
¹ØÓÚAG¹«Ë¾¿Æ¼¼
±±¾©ÉñÖÝAG¹«Ë¾ÐÅÏ¢Çå¾²¿Æ¼¼¹É·ÝÓÐÏÞ¹«Ë¾£¨¼ò³ÆAG¹«Ë¾¿Æ¼¼£©½¨ÉèÓÚ2000Äê4Ô£¬×ܲ¿Î»ÓÚ±±¾©¡£ÔÚº£ÄÚÍâÉèÓÐ30¶à¸ö·ÖÖ§»ú¹¹£¬ÎªÕþ¸®¡¢ÔËÓªÉÌ¡¢½ðÈÚ¡¢ÄÜÔ´¡¢»¥ÁªÍøÒÔ¼°½ÌÓý¡¢Ò½ÁƵÈÐÐÒµÓû§£¬Ìṩ¾ßÓн¹µã¾ºÕùÁ¦µÄÇå¾²²úÆ·¼°½â¾ö¼Æ»®£¬×ÊÖú¿Í»§ÊµÏÖÓªÒµµÄÇ徲˳³©ÔËÐС£
»ùÓÚ¶àÄêµÄÇå¾²¹¥·ÀÑо¿£¬AG¹«Ë¾¿Æ¼¼ÔÚÍøÂç¼°ÖÕ¶ËÇå¾²¡¢»¥ÁªÍø»ù´¡Çå¾²¡¢ºÏ¹æ¼°Çå¾²ÖÎÀíµÈÁìÓò£¬Îª¿Í»§ÌṩÈëÇÖ¼ì²â/·À»¤¡¢¿¹¾Ü¾ø·þÎñ¹¥»÷¡¢Ô¶³ÌÇå¾²ÆÀ¹ÀÒÔ¼°WebÇå¾²·À»¤µÈ²úÆ·ÒÔ¼°×¨ÒµÇå¾²·þÎñ¡£
±±¾©ÉñÖÝAG¹«Ë¾ÐÅÏ¢Çå¾²¿Æ¼¼¹É·ÝÓÐÏÞ¹«Ë¾ÓÚ2014Äê1ÔÂ29ÈÕÆðÔÚÉîÛÚ֤ȯÉúÒâËù´´Òµ°åÉÏÊÐÉúÒ⣬¹ÉƱ¼ò³Æ£ºAG¹«Ë¾¿Æ¼¼£¬¹ÉƱ´úÂ룺300369¡£

AG¹«Ë¾ÔÆ





