J2EE框架Struts2再次被爆存在远程代码执行漏洞(S2-045),编号:CVE-2017-5638。受影响范围:Struts  2。3。5 - Struts 2。3。31, Struts 2。5 - Struts 2。5。10)

危害等级:及其严重

黑客可以利用该漏洞在远程服务器上执行任意系统命令,将会对受漏洞影响站点造成严重影响,引发数据泄露、网页篡改、后门植入、成为肉鸡等安全事件。

影响版本s2-045

Struts2。3。5  到 Struts2。3。31 以及 Struts2。5 到 Struts2。5。10

自查方式

查看web目录下/WEB-INF/lib/目录下的struts-core。x。x。jar  如果这个版本在Struts2。3。5 到 Struts2。3。31 以及 Struts2。5 到 Struts2。5。10之间则存在漏洞。

修复建议s2-045

更新至Struts  2。3。32 或者 Struts 2。5。10。1 或  使用第三方的防护设备进行防护。临时解决方案:删除commons-fileupload-x。x。x。jar文件(会造成上传功能不可用)。

由于该漏洞影响范围广,漏洞危害程度极为严重,请各用户及时采取措施,避免受影响。SHCERT将持续关注该漏洞。

修改Struts2的Multipart parser

 

使用搜索工具搜索ssh连接工具xshell5连接目标机172。16。12。2,用户名root,密码123456

 

修改配置文件

 

将struts2-core-2。3。31。jar路径:/var/www/apache-tomcat-7。0。14/webapps/ROOT/WEB-INF/lib/下载到本地桌面,修改文件扩展名为struts2-core-2。3。31。zip,将其解压到struts2-core-2。3。31文件夹中,打开里面的文件夹org\apache\struts2右击目录下default。properties文件,使用notepad++进行编辑。

 

找到struts。multipart。parser,该选项就是Struts2的Multipart parser应用配置,默认值为jakarta,即此次出现命令执行漏洞的上传框架。

 

将其修改为pell,相当于将存在漏洞的jakarta框架禁用了。修改后值struts。multipart。parser=pell,保存,退出。

 

注意在行首不能存在注释符 # 号

 

 

重新打包jar文件

 

在struts2-core-2。3。31文件夹中全部选中,压缩打包为zip格式,文件名:struts2-core-2。3。31。jar

 

 

替换jar文件

 

使用工具Xftp,将/var/www/apache-tomcat-7。0。14/webapps/ROOT/WEB-INF/lib/路径下的struts2-core-2。3。31。jar移动到根目录/,将我们修改配置后重新打包的jar文件放到该目录下。

 

重启tomcat

 

替换文件后需要重启tomcat服务,切换到/var/www/apache-tomcat-7。0。14/bin/目录下,首先执行。/shutdown。sh,然后执行。/startup。sh

 

重启tomcat服务会有15秒左右的延时

验证漏洞

 

执行下面命令:

 

poc。exe http://172。16。12。2/example/HelloWorld。action "cat /etc/passwd"


上一篇:scheduledTimerWithTimeInterval如何使用
下一篇:postgresql命令大全postgresql常用命令

杭州地区居民对社区卫生...

酒店实习生管理现状调查问卷

城乡居民对全科医生的信任度调查问卷

历史博物馆叙事性展示对...

PRT训练的注意事项与原则设计教学方案流程图

黑道殿下的绝宠

sj解散

股票个别风险和预期收益率的关系

浅谈全球价值链视角下传...

小學生语文學习兴趣的激发与培养【2255字】

学院教职工体育活动现状调查问卷表

關于民办高校人才队伍建...

crm成功案例分析crm成功案例

浅谈地质灾害及其分布规律【2498字】

17岁學生怎么兼职赚钱,...

磁流变液可控阻尼离合器的设计+CAD图纸

陶渊明赠答诗与嵇康赠答诗文献综述