struts2架构网站漏洞修复详情与利用漏洞修复方案

简介:

struts2从开发出来到现在,很多互联网企业,公司,平台都在使用apache struts2系统来开发网站,以及应用系统,这几年来因为使用较多,被攻击者挖掘出来的struts2漏洞也越来越,从最一开始S2-001到现在的最新的s2-057漏洞,本文着重的给大家介绍一下struts2漏洞的利用详情以及漏洞修复办法。

010884cc7d1c411890fbcb8ee9b637fd.jpeg

先从1开始吧,S2-001影响的版本是Struts 2.0.0 - Struts 2.0.8版本,最早开始的版本漏洞太低级,当时的apache官方并没有设置安全机制,导致在提交参数的时候紧接的执行了递归化查询数据,导致可以插入恶意参数进行SQL注入攻击。

s2-001漏洞的修复是将struts2的默认altsyntax功能进行关闭使用其他方式进行递归化的查询,为什么要关闭altsyntax功能是因为这个功能的标签会自动的进行表达式的安全解析,关闭该功能就不会进行解析恶意参数了。

4815988ceb004c7b899bd642a56b44a4.png

s2-003漏洞是没有过滤恶意参数,导致可以进行参数注入,影响的版本是Struts 2.0.0 - Struts 2.0.11.2版本,这次的版本新添加了一个功能就是安全拦截器,在参数传输过程中进行了关键词安全检测,一些非法注入的参数可以被过滤掉,但是apache官方并没有过滤掉特殊编码的方式进行提交,导致伪造编码进行了sql注入攻击,该漏洞的修复方案是关于编码注入这里进行详细的过滤,并使用了正则表达式进行过滤非法的注入参数。

01254f78076448429e433489afee6055.png

s2-005漏洞产生的原因也跟上次的S2-003大致相同,也是在传入参数值的时候带进了恶意非法注入参数,导致可以使用ognl解析的方式来进行远程代码的注入执行。关于该漏洞的修复是需要将apache系统参数值denyMethodExecution设置为关闭,然后将参数的拦截过滤系统进行了升级,更为严格的一个正则表达式过滤。

S2-007,S2-008,S2-009漏洞详情是需要开启decmode开发模式,在调试开发代码过程中存在了注入的漏洞,甚至对于单引号并没有进行安全限制,导致可以提交到后台进行转义,造成变量上的转义注入,S2-009也是POST提交参数的注入攻击,跟S2-005,S2-003的参数注入不同的是,没有对其参数里的安全值进行过滤,导致可以插入恶意参数进行SQL数据库注入攻击。 同样的官方修复方案是对其过滤系统进行升级,严格执行正则表达式过滤一些可能导致注入的非法参数。

S2-012漏洞的产生原因是默认的apache 配置文件struts.xml对默认的对象进行了重定向的一个功能设置,导致该重定向之解析表达式的过程中产生了远程代码执行漏洞,关于该漏洞的修复官方进行了表达式解析的安全过滤。

S2-013漏洞利用是因为标签属性的原因,标签设置参数里竟然可以执行表达式,会让URL值的参数进行传递表达式,漏洞的修复也很简单对其标签属性进行了删除。S2-015的漏洞是因为系统配置里的任意通配符映射导致二次执行ognl表达式进行了远程代码的执行漏洞,首先该系统没有对网站URL进行白名单的安全检测,当使用一些特殊符号叹号,百分号的时候可以直接提交上去。造成了恶意代码的远程执行。漏洞的修补办法是对DefaultActionMapper的类进行了安全检测,过滤非法的注入代码。

如果您对网站的漏洞不懂的话,建议让网站安全公司帮您修复网站漏洞,以及清除木马后门,做好网站安全加固防止被入侵,国内的网站安全公司,像SINE安全公司、绿盟安全公司、启明星辰、都是比较专业的。

以上是S2-001到S2-015漏洞的产生原因,以及漏洞修复的办法介绍,因为文章字数限制,其他版本的struts2漏洞将会在下一篇文章中给大家讲解。

相关文章
|
7月前
|
SQL 安全 网络安全
交易所开发测试版丨交易所系统开发规则玩法/架构设计/项目步骤/方案逻辑/案例解析/源码部署
The development process of the exchange system involves multiple steps and links. The following is the detailed process and steps for the development of the exchange system:
|
25天前
|
存储 Java 应用服务中间件
【分布式技术专题】「架构实践于案例分析」盘点互联网应用服务中常用分布式事务(刚性事务和柔性事务)的原理和方案
【分布式技术专题】「架构实践于案例分析」盘点互联网应用服务中常用分布式事务(刚性事务和柔性事务)的原理和方案
45 0
|
25天前
|
canal 消息中间件 关系型数据库
【分布式技术专题】「分布式技术架构」MySQL数据同步到Elasticsearch之N种方案解析,实现高效数据同步
【分布式技术专题】「分布式技术架构」MySQL数据同步到Elasticsearch之N种方案解析,实现高效数据同步
73 0
|
1月前
|
Web App开发 监控 应用服务中间件
全新架构!日志服务 SLS 自研免登录方案发布
全新架构!日志服务 SLS 自研免登录方案发布
87433 7
|
1月前
|
消息中间件 存储 缓存
性能基础之大型网站技术架构模式
【2月更文挑战第15天】性能基础之大型网站技术架构模式
69 3
性能基础之大型网站技术架构模式
|
2月前
|
SQL 存储 缓存
后端架构优化方案探讨
【2月更文挑战第6天】在当今互联网时代,后端的稳定性和高效性至关重要。本文从数据库设计、服务器负载均衡、缓存策略等方面,探讨了后端架构优化的方案,旨在提供一些实用性的建议。
|
2月前
|
Unix Linux iOS开发
操作系统透视:从历史沿革到现代应用,剖析Linux与网站服务架构
操作系统透视:从历史沿革到现代应用,剖析Linux与网站服务架构
51 0
|
7月前
|
消息中间件 缓存 NoSQL
|
5月前
|
数据采集 SQL 数据可视化
79 网站点击流数据分析案例(整体技术流程及架构)
79 网站点击流数据分析案例(整体技术流程及架构)
54 0
|
6月前
|
开发框架 运维 测试技术
ARBT(阿尔比特)智能合约系统开发稳定版/详细案例/步骤逻辑/需求方案/成熟技术/源码架构
需求分析:与客户充分沟通,了解其业务需求和期望,明确系统的功能和性能要求。