AG¹«Ë¾

AG¹«Ë¾

AG¹«Ë¾¿Æ¼¼

  • »ù´¡ÉèÊ©Çå¾²

    »ù´¡ÉèÊ©Çå¾²
  • Êý¾ÝÇå¾²

    Êý¾ÝÇå¾²
  • ÔÆÅÌËãÇå¾²

    ÔÆÅÌËãÇå¾²
  • AIÇå¾²

    AIÇå¾²
  • ¹¤Òµ»¥ÁªÍøÇå¾²

    ¹¤Òµ»¥ÁªÍøÇå¾²
  • ÎïÁªÍøÇå¾²

    ÎïÁªÍøÇå¾²
  • ÐÅÏ¢ÊÖÒÕÓ¦ÓÃÁ¢Òì

    ÐÅÏ¢ÊÖÒÕÓ¦ÓÃÁ¢Òì
  • ËùÓвúÆ·

    ËùÓвúÆ·
  • ËùÓнâ¾ö¼Æ»®

    ËùÓнâ¾ö¼Æ»®

»ù´¡ÉèÊ©Çå¾²


  • Õþ¸®

    Õþ¸®
  • ÔËÓªÉÌ

    ÔËÓªÉÌ
  • ½ðÈÚ

    ½ðÈÚ
  • ÄÜÔ´

    ÄÜÔ´
  • ½»Í¨

    ½»Í¨
  • ÆóÒµ

    ÆóÒµ
  • ¿Æ½ÌÎÄÎÀ

    ¿Æ½ÌÎÄÎÀ

  • AG¹«Ë¾ÔÆ AG¹«Ë¾ÔÆ
  • AG¹«Ë¾ÍþвÇ鱨ÖÐÐÄNTI AG¹«Ë¾ÍþвÇ鱨ÖÐÐÄNTI
  • TechWorldÊÖÒÕ¼ÎÄ껪 TechWorldÊÖÒÕ¼ÎÄ껪
  • ±±¾©AG¹«Ë¾¹«Òæ»ù½ð»á ±±¾©AG¹«Ë¾¹«Òæ»ù½ð»á
  • ÊÖÒÕ²©¿Í ÊÖÒÕ²©¿Í
  • Àֳɰ¸Àý Àֳɰ¸Àý

ÏàÖúͬ°éÉó²é¸ü¶à >

ÏàÖúͬ°é¶¯Ì¬

³ÉΪÏàÖúͬ°é

  • AG¹«Ë¾ÔÆ AG¹«Ë¾ÔÆ
  • AG¹«Ë¾ÍþвÇ鱨ÖÐÐÄNTI AG¹«Ë¾ÍþвÇ鱨ÖÐÐÄNTI
  • TechWorldÊÖÒÕ¼ÎÄ껪 TechWorldÊÖÒÕ¼ÎÄ껪
  • ±±¾©AG¹«Ë¾¹«Òæ»ù½ð»á ±±¾©AG¹«Ë¾¹«Òæ»ù½ð»á
  • ÊÖÒÕ²©¿Í ÊÖÒÕ²©¿Í
  • Àֳɰ¸Àý Àֳɰ¸Àý

ÊÖÒÕÖ§³ÖÉó²é¸ü¶à >

²úÆ·Ö§³Ö

  • AG¹«Ë¾ÔÆ AG¹«Ë¾ÔÆ
  • AG¹«Ë¾ÍþвÇ鱨ÖÐÐÄNTI AG¹«Ë¾ÍþвÇ鱨ÖÐÐÄNTI
  • TechWorldÊÖÒÕ¼ÎÄ껪 TechWorldÊÖÒÕ¼ÎÄ껪
  • ±±¾©AG¹«Ë¾¹«Òæ»ù½ð»á ±±¾©AG¹«Ë¾¹«Òæ»ù½ð»á
  • ÊÖÒÕ²©¿Í ÊÖÒÕ²©¿Í
  • Àֳɰ¸Àý Àֳɰ¸Àý

·µ»ØÁбí

Apache Struts2 Ô¶³Ì´úÂëÖ´ÐÐÎó²î£¨S2-057£© ÊÖÒÕÆÊÎöÓë·À»¤¼Æ»®

2018-08-24

Ðû²¼ÕߣºAG¹«Ë¾¿Æ¼¼

×ÛÊö

   ±±¾©Ê±¼ä2018Äê8ÔÂ22ÈÕ £¬Apache¹Ù·½Ðû²¼Í¨¸æÐû²¼ÁËStruts2ÖÐÒ»¸öÔ¶³Ì´úÂëÖ´ÐÐÎó²î£¨CVE-2018-11776 £¬CNVD-2018-15894 £¬CNNVD-201808-740£©¡£¸ÃÎó²îÔÚÁ½ÖÖÇéÐÎϱ£´æ £¬µÚÒ» £¬µ±xmlÉèÖÃÖÐδÉèÖÃnamespaceÖµ £¬ÇÒÉϲãÐж¯ÉèÖã¨action(s) configurations£©ÖÐδÉèÖûòʹÓÃͨÅä·ûnamespaceֵʱ £¬¿ÉÄܵ¼ÖÂÔ¶³Ì´úÂëÖ´ÐÐÎó²îµÄ±¬·¢¡£µÚ¶þ £¬Ê¹ÓÃδÉèÖÃvalueºÍactionÖµµÄurl±êÇ© £¬ÇÒÉϲãÐж¯ÉèÖÃÖÐδÉèÖûòʹÓÃͨÅä·ûnamespaceÖµ £¬Í¬Ñù¿ÉÄܵ¼ÖÂÔ¶³Ì´úÂëÖ´ÐС£

     Ïà¹ØÁ´½ÓÈçÏ£ºhttps://cwiki.apache.org/confluence/display/WW/S2-057


ÊÜÓ°Ïì°æ±¾

l Struts 2.3 - 2.3.34

l Struts 2.5 - 2.5.16


²»ÊÜÓ°Ïì°æ±¾

l Struts 2.3.35

l Struts 2.5.17


ÊÖÒÕ·À»¤¼Æ»®

°æ±¾¼ì²â

ͨ¹ýÉèÖÃÎļþ¼ì²â

´ËÎó²î±¬·¢ÓڵͰ汾µÄStruts×é¼þ £¬µ±Ó¦ÓÃϵͳÒýÈëÏà¹Ø×é¼þʱ £¬½«±£´æ±»¹¥»÷ÕßÔ¶³Ì¹¥»÷µÄΣº¦¡£½¨ÒéÓÉÓ¦Óÿª·¢Ö°Ô±ÅŲéÒýÈë×é¼þµÄ°æ±¾ÊÇ·ñ´¦ÓÚÊÜÓ°Ïì¹æÄ£Ö®ÄÚ¡£

Éó²éMavenÉèÖÃÎļþpom.xmlÖйØÓÚ×é¼þµÄ°æ±¾¡£È磺

<dependency>

    <groupId>org.apache.struts</groupId>

    <artifactId>struts2-core</artifactId>

    <version>2.5.13</version>

</dependency>


ͨ¹ý×é¼þÃû¼ì²âÈôºì×ÖËùʾ°æ±¾ÔÚÊÜÓ°Ïì¹æÄ£ÄÚ £¬ÔòÇëÓû§¾¡¿ìÉý¼¶Struts2ÖÁ×îа汾 £¬ÒÔ°ü¹Üºã¾ÃÓÐÓõķÀ»¤¡£

LinuxϵͳÏ¿ÉʹÓÃÒÔÏÂÏÂÁî²éÕÒÄ¿½ñʹÓõÄstruts2-core°ü £¬Í¨¹ýÉó²éÆäÎļþÃû £¬ÅжÏÄ¿½ñ°æ±¾¡£


find / -name struts2-core-*.jar


    Èôºì¿ò´¦°æ±¾ºÅÔÚÊÜÓ°Ïì¹æÄ£ÄÚ £¬ÔòÇëÓû§¾¡¿ìÉý¼¶ÖÁ×îа汾¡£AG¹«Ë¾(Öйú¼¯ÍÅ)¡¤ÓÐÏÞ¹«Ë¾¹ÙÍø


¹Ù·½ÐÞ¸´¼Æ»®

¹Ù·½ÒÑÔÚ×îа汾ÖÐÐÞ¸´ÁË´ËÎó²î £¬ÇëÓû§¾¡¿ì½«StrutsÉý¼¶ÖÁ¹Ù·½ÐÞ¸´°æ±¾ £¬2.3.*µÄÓû§ÇëÉý¼¶ÖÁ2.3.35£»2.5.*µÄÓû§ÇëÉý¼¶ÖÁ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

ÔÝʱ½â¾ö¼Æ»®

ÅŲéËùÓÐStruts 2µÄÉèÖÃÎļþ £¬Èçstruts.xml £¬ÎªÃ»Óнç˵namespaceÃüÃû¿Õ¼äµÄpackage½ÚµãÌí¼ÓÃüÃû¿Õ¼äÉèÖá£

<package name="user" namespace="/user" extends="struts-default">

    <action name="login">

    </action>

</package>



AG¹«Ë¾¿Æ¼¼·À»¤½¨Òé

AG¹«Ë¾¿Æ¼¼¼ì²âÀà²úÆ·Óë·þÎñ

1¡¢ ¹«Íø×ʲú¿ÉʹÓÃAG¹«Ë¾ÔÆ ½ôÆÈÎó²îÔÚÏß¼ì²â £¬¼ì²âµØµãÈçÏ£º

ÊÖ»ú¶Ë»á¿´·¨Ö·£º

https://cloud.nsfocus.com/megi/holes/hole_struts2_2018_8_23.html

PC¶Ë»á¿´·¨Ö·£º

https://cloud.nsfocus.com/#/krosa/views/initcdr/productandservice?service_id=1026

2¡¢ÄÚÍø×ʲú¿ÉÒÔʹÓÃAG¹«Ë¾¿Æ¼¼µÄÈëÇÖ¼ì²âϵͳ(IDS) £¬Ô¶³ÌÇå¾²ÆÀ¹Àϵͳ£¨RSAS V5¡¢V6£©ºÍWebÓ¦ÓÃÎó²îɨÃèϵͳ£¨WVSS£©¾ÙÐмì²â¡£

l  ÈëÇÖ¼ì²âϵͳ£¨IDS£©

http://update.nsfocus.com/update/listIds

l Ô¶³ÌÇå¾²ÆÀ¹Àϵͳ£¨RSAS V5£©

http://update.nsfocus.com/update/listAurora/v/5

l Ô¶³ÌÇå¾²ÆÀ¹Àϵͳ£¨RSAS V6£©

http://update.nsfocus.com/update/listRsasDetail/v/vulweb

l WebÓ¦ÓÃÎó²îɨÃèϵͳ£¨WVSS£©http://update.nsfocus.com/update/listWvssDetail/v/6/t/plg

ͨ¹ýÉÏÊöÁ´½Ó £¬Éý¼¶ÖÁ×îа汾¼´¿É¾ÙÐмì²â£¡

ʹÓÃAG¹«Ë¾¿Æ¼¼·À»¤Àà²úÆ·¾ÙÐзÀ»¤

l  ÈëÇÖ·À»¤ÏµÍ³£¨IPS£©

http://update.nsfocus.com/update/listIps

l  ÏÂÒ»´ú·À»ðǽϵͳ£¨NF£©

http://update.nsfocus.com/update/listNf

l  WebÓ¦Ó÷À»¤ÏµÍ³£¨WAF£©

http://update.nsfocus.com/update/wafIndex

ͨ¹ýÉÏÊöÁ´½Ó £¬Éý¼¶ÖÁ×îа汾¼´¿É¾ÙÐзÀ»¤£¡

¼ì²â·À»¤²úÆ·Éý¼¶°ü/¹æÔò°æ±¾ºÅ

¼ì²â²úÆ·

Éý¼¶°ü/¹æÔò°æ±¾ºÅ

IDS

5.6.7.732¡¢5.6.8.732¡¢5.6.9.18479¡¢5.6.10.18479

RSAS V5 web²å¼þ°ü

V051758

RSAS V6 web²å¼þ°ü

V6.0R02F00.1004

WVSS V6 web²å¼þ°ü

V6.0R03F00.113


·À»¤²úÆ·

Éý¼¶°ü/¹æÔò°æ±¾ºÅ

IPS

5.6.7.732¡¢5.6.8.732¡¢5.6.9.18479¡¢5.6.10.18479

NF

5.6.7.732¡¢6.0.1.732

WAF

v6.0.5.1.39591¡¢v6.0.7.0.39590¡¢v6.0.6.1.39589

ÏêϸÉèÖÃÏê¼û¸½Â¼


ÊÖÒÕÆÊÎö

²¹¶¡±ÈÕÕ

ÈçͼËùʾ £¬²¹¶¡Ö÷ÒªÌí¼ÓÁËcleanNamespaceNameÒªÁì £¬¸ÃÒªÁìͨ¹ý°×Ãûµ¥µÄ·½·¨À´ÑéÖ¤namespaceÊÇ·ñÕýµ± £¬´Ó¹Ù·½ÐÎòºÍÎó²îÐÞ¸´·½·¨À´¿´ £¬¸ÃÎó²îÓ¦¸ÃÊÇÒ»¸öOgnlµÄ±í´ïʽעÈëÎó²î¡£

AG¹«Ë¾(Öйú¼¯ÍÅ)¡¤ÓÐÏÞ¹«Ë¾¹ÙÍø


¶¯Ì¬ÆÊÎö

Îó²îÐû²¼¼¸¸öСʱ֮ºó £¬Îó²î·¢Ã÷×÷ÕßÐû²¼ÁËÕû¸ö·¢Ã÷Àú³Ì £¬²¢ÇÒÏêϸÆÊÎöÁËÒ»ÖÖÎó²îÇéÐΣºhttps://lgtm.com/blog/apache_struts_CVE-2018-11776¡£Æ¾Ö¤¸Ã²©¿ÍµÄ˵·¨ £¬À­È¡struts2-showcaseÏîÄ¿×÷ΪʾÀý £¬ÐÞ¸Ästruts-actionchaining.xml £¬ÏêϸÈçÏ£º


1.  <struts>

2.      <package name="actionchaining" extends="struts-default" >

3.          <action name="actionChain1" class="org.apache.struts2.showcase.actionchaining.ActionChain1">

4.              <result type="redirectAction">

5.                  <param name = "actionName">register2</param>

6.              </result>

7.          </action>

8.      </package>

9.  </struts>




ÔÚÕâÖÖÇéÐÎÏ £¬ËùÓе½actionChain1.actionµÄÇëÇóµÄ·µ»ØÐ§¹û¶¼»áÖ¸Ïòregister2 £¬²¢ÇÒÖ´ÐÐÁ´»áµ½ServletActionRedirectResult.executeÒªÁìÖÐ £¬ÏêϸÈçÏ£º

AG¹«Ë¾(Öйú¼¯ÍÅ)¡¤ÓÐÏÞ¹«Ë¾¹ÙÍø


´ÓÉÏͼ¿ÉÒÔ¿´³ö £¬Í¨¹ýnamespace×Ö¶Î £¬ÎÛȾÁËtmpLocation×Öµä £¬²¢ÇÒÉèÖÃΪÁËÔ¤ÆÚµÄÖ´ÐеÄPoC £¬ÕâÒ²ÊDz¹¶¡ÖÐΪʲôҪ¾»»¯namespaceµÄÔµ¹ÊÔ­ÓÉ £¬¼ÌÐø¸ú×ÙnamespaceµÄÈ¥ÏòÖ´ÐÐÁ´»áµ½ServletActionRedirectResultµÄ¸¸ÀàµÄ¸¸ÀàStrutsResultSupport.executeÒªÁìÖÐ £¬ÏêϸÈçÏÂͼ£º

AG¹«Ë¾(Öйú¼¯ÍÅ)¡¤ÓÐÏÞ¹«Ë¾¹ÙÍø

ÕâÀïÓиöconditionParseÒªÁì £¬Õâ¸ö·½·¨¾ÍÊÇʹÓÃOgnl±í´ïʽÀ´ÅÌËãÊý¾ÝÖµ £¬ÔÚϵͳÖÐÓõúÜÊÇ¶à £¬²¢ÇÒÔÚһЩÀúÊ·Îó²îÖÐ £¬Ò²Ó¦¸ÃÓÉËüÀ´±³¹ø £¬ËäÈ»×î´óµÄ¹øÕÕ¾Éstruts¹Ù·½ £¬Ã¿´ÎÎó²î³öÔÚÄľÍÐÞÔÚÄÄ £¬µä·¶µÄͷʹҽͷ £¬½ÅÍ´Ò½½Å¡£ÒªÁìʵÏÖÈçÏÂͼËùʾ£º

AG¹«Ë¾(Öйú¼¯ÍÅ)¡¤ÓÐÏÞ¹«Ë¾¹ÙÍø

ÔÚÕâ¸öÒªÁìÖлáʹÓõ½TextParseUtil.translateVariablesÒªÁì £¬¼ÌÐø¸ú×Ù £¬Å²ÓÃÕ»½øÈëOgnlTextParserÖеÄevaluateÒªÁìÊ×ÏÈ»áÅжϴ«ÈëµÄ±í´ïʽÊÇ·ñÕýµ± £¬ºÃ±ÈÊÇ·ñÄÜÕÒµ½${}»òÕß%{}¶Ô £¬½Ó×ÅŲÓÃevaluator.evaluateÇóÖµ £¬ÇóÖµÀú³ÌºÜÊÇÖØ´ó £¬×ܵÃÀ´Ëµ¾ÍÊÇÁ´Ê½Ö´ÐÐÀú³Ì £¬ÏêϸÈçÏÂŲÓÃÕ»£º

AG¹«Ë¾(Öйú¼¯ÍÅ)¡¤ÓÐÏÞ¹«Ë¾¹ÙÍø

´ÓÉÏͼҲ¿ÉÒÔ¿´³ö×î¶¥²ã¾ÍÊÇͨ¹ý·´ÉäµÄ·½·¨À´Å²ÓÃProcessBuilderµÄ½á¹¹º¯Êý £¬ÖÐÐIJ¿·Ö¾ÍÊÇÁ´Ê½Ö´ÐÐÀú³ÌÖÐÇ£Éæµ½Ò»Ð©²Ù×÷¡£
ÎÒÃÇ¿ÉÒÔ¿´ÏÂÇóÖµÀú³ÌÖвÎÊýµÄһЩÇéÐΡ£À´Éó²éOgnlÇå¾²¼Ó¹ÌµÄһЩת±ä £¬ÏêϸÈçÏÂͼ£º

AG¹«Ë¾(Öйú¼¯ÍÅ)¡¤ÓÐÏÞ¹«Ë¾¹ÙÍø

Ö÷ÒªÊǺÚÃûµ¥ÉÏÓÖÌí¼ÓÁËһЩÀà £¬»®·ÖÊÇ£º
class ognl.DefaultMemberAccess 
class com.opensymphony.xwork2.ognl.SecurityMemberAccess 
class java.lang.ProcessBuilder


ÆÊÎö¾Í¿¢ÊÂÁË £¬ÅÌËãÆ÷ÕÕ¾ÉÒªµ¯µÄ £¬ÈçÏÂͼ£º

AG¹«Ë¾(Öйú¼¯ÍÅ)¡¤ÓÐÏÞ¹«Ë¾¹ÙÍø


·À»¤¼Æ»®ÏÂÔØ


Apache Struts2  Ô¶³Ì´úÂëÖ´ÐÐÎó²î£¨S2-057£©  ÊÖÒÕÆÊÎöÓë·À»¤¼Æ»®


?

ÄúµÄÁªÏµ·½·¨

*ÐÕÃû
*µ¥Î»Ãû³Æ
*ÁªÏµ·½·¨
*ÑéÖ¤Âë AG¹«Ë¾(Öйú¼¯ÍÅ)¡¤ÓÐÏÞ¹«Ë¾¹ÙÍø
Ìá½»µ½ÓÊÏä

¹ºÖÃÈÈÏß

  • ¹ºÖÃ×Éѯ:

    400-818-6868-1

Ìá½»ÏîÄ¿ÐèÇó

½Ó´ý¼ÓÈëAG¹«Ë¾¿Æ¼¼ £¬³ÉΪÎÒÃǵÄÏàÖúͬ°é£¡
  • *ÇëÐÎòÄúµÄÐèÇó
  • *×îÖÕ¿Í»§Ãû³Æ
  • *ÏîÄ¿Ãû³Æ
  • Äú¸ÐÐËȤµÄ²úÆ·
  • ÏîĿԤËã
ÄúµÄÁªÏµ·½·¨
  • *ÐÕÃû
  • *ÁªÏµµç»°
  • *ÓÊÏä
  • *Ö°Îñ
  • *¹«Ë¾
  • *¶¼»á
  • *ÐÐÒµ
  • *ÑéÖ¤Âë AG¹«Ë¾(Öйú¼¯ÍÅ)¡¤ÓÐÏÞ¹«Ë¾¹ÙÍø
  • Ìá½»µ½ÓÊÏä
AG¹«Ë¾(Öйú¼¯ÍÅ)¡¤ÓÐÏÞ¹«Ë¾¹ÙÍø
AG¹«Ë¾(Öйú¼¯ÍÅ)¡¤ÓÐÏÞ¹«Ë¾¹ÙÍø

·þÎñÖ§³Ö

ÖÇÄܿͷþ
ÖÇÄܿͷþ
¹ºÖÃ/ÊÛºóÊÖÒÕÎÊÌâ
Ã˹ܼÒ-ÊÛºó·þÎñϵͳ
Ã˹ܼÒ-ÊÛºó·þÎñϵͳ
ÔÚÏßÌáµ¥|ÖÇÄÜÎÊ´ð|֪ʶ¿â
Ö§³ÖÈÈÏß
Ö§³ÖÈÈÏß
400-818-6868
AG¹«Ë¾¿Æ¼¼ÉçÇø
AG¹«Ë¾¿Æ¼¼ÉçÇø
×ÊÁÏÏÂÔØ|ÔÚÏßÎÊ´ð|ÊÖÒÕ½»Á÷
΢²©
΢²©

΢²©

΢ÐÅ
΢ÐÅ

΢ÐÅ

BÕ¾
BÕ¾

BÕ¾

¶¶Òô
¶¶Òô

¶¶Òô

ÊÓÆµºÅ
ÊÓÆµºÅ

ÊÓÆµºÅ

·þÎñÈÈÏß

400-818-6868

·þÎñʱ¼ä

7*24Сʱ

? 2026 NSFOCUS AG¹«Ë¾¿Æ¼¼ www.nsfocus.com All Rights Reserved . ¾©¹«Íø°²±¸ 11010802021605ºÅ ¾©ICP±¸14004349ºÅ ¾©ICPÖ¤110355ºÅ

ÍøÕ¾µØÍ¼