发布时间:2022-12-12 分类: 电商动态
从struts2的发展到现在,许多互联网公司,公司,平台都在使用apache struts2系统来开发网站和应用系统。近年来,由于使用更多,攻击者利用的struts2漏洞也越来越多。最新的S2-001到当前的s2-057漏洞,本文重点介绍struts2漏洞详细信息和漏洞修复方法的使用。
首先从1开始,受S2-001影响的版本是Struts 2.0.0 - Struts 2.0.8。该漏洞的最早版本太低。那时,apache官方没有设置安全机制,这导致了参数的提交。递归查询数据的实现,导致为SQL注入攻击插入恶意参数。
修复s2-001漏洞是为了关闭struts2的默认altsyntax函数,并使用其他方法进行递归查询。为什么要关闭altyntax函数,因为此函数的标签将自动执行表达式的安全性解析,并且函数不会被关闭。将解析恶意参数。
s2-003漏洞不会过滤恶意参数,从而导致参数注入。受影响的版本是Struts 2.0.0 - Struts 2.0.11.2。此版本在参数传输期间为安全拦截器添加了新功能。进行了关键字安全检测,可以过滤掉一些非法注入的参数,但apache官方没有过滤掉提交的特殊编码方法,导致SQL注入攻击的伪造编码。此漏洞的修复程序是关于此处的编码注入。执行详细过滤并使用正则表达式过滤非法注入参数。
s2-005漏洞的原因类似于之前的S2-003。传入参数值时,它还会引入恶意非法注入参数,可用于使用ognl解析执行远程代码注入执行。此漏洞的修复方法是将apache系统参数值denyMethodExecution设置为off,然后将参数的拦截过滤系统升级为更严格的正则表达式过滤。
S2-007,S2-008,S2-009漏洞细节需要打开decmode开发模式,在调试开发代码的过程中有注入漏洞,即使是单引号,也没有安全限制,可以提交到后台对于转义,导致对变量进行转义注入,S2-009也是POST提交参数的注入攻击。与参数注入S2-005,S2-003不同,参数中的安全值未被过滤,导致插入恶意参数以进行SQL数据库注入攻击。同样的官方修复是升级其过滤系统并严格执行可能导致注入的一些非法参数的正则表达式过滤。
S2-012漏洞是由默认的apache配置文件struts.xml引起的,该文件将默认对象重定向到函数设置,从而在解析重定向表达式的过程中导致远程执行代码漏洞。修复官员为表达式解析执行了安全过滤器。
S2-013漏洞利用了label属性。表达式可以在label设置参数中执行,URL值参数将传递给表达式。删除标签属性也很简单。 S2-015的漏洞是因为系统配置中的任意通配符映射导致第二次执行ognl表达式以执行远程执行代码漏洞。首先,系统不对网站URL执行白名单安全检测。使用某些特殊符号感叹号时,您可以在百分号时直接提交。导致远程执行恶意代码。此漏洞的修补方法是对DefaultActionMapper类执行安全检查并过滤非法注入代码。
如果您不了解网站的漏洞,建议网站安全公司帮您修复网站漏洞并清除木马的后门,并做好网站安全防范入侵。国内网站安全公司,如SINE Security Company,NSF Security Company,Venus Star,更专业。
以上是造成S2-001到S2-015漏洞的原因,并引入漏洞修复方法,因为文章字数限制,其他版本的struts2漏洞将在下一篇文章中解释。