weblogic反序列化介绍
weblogic是一个常用的web中间件,它的反序列化漏洞也算是比较经典,而在weblogic里面其实反序列化漏洞大致分为两种,一个是基于T3协议的反序列化漏洞,一个是基于XML的反序列化漏洞,以后再说吧,这篇先说一下环境搭建,主要也是搭了很久才好
环境搭建
环境搭建 参考:
WebLogic_T3反序列化漏洞(一) - 哔哩哔哩 (bilibili.com)
主要就几步 下载三个文件
jdk版本:
jdk-7u21(https://www.oracle.com/java/technologies/javase/javase7-archive-downloads.html)
weblogic版本:
10.3.6.0(https://www.oracle.com/middleware/technologies/weblogic-server-downloads.html)
环境
https://github.com/QAX-A-Team/WeblogicEnvironment
三个文件都放在 WeblogicEnvironment下
然后放在 创建 jdks 和 weblogics ,把jdk7u21放在 jdks下,源码放在weblogics 下,像我这样:
然后运行:
docker build --build-arg JDK_PKG=jdk-7u21-linux-x64.tar.gz --build-arg WEBLOGIC_JAR=wls1036_generic.jar -t weblogic1036jdk7u21 .
如果你出现这个问题
那么你需要修改当前文件下的Dockerfile 文件:
然后再编译运行:
成功了
再次运行:
docker run -d -p 7001:7001 -p 8453:8453 -p 5556:5556 --name weblogic1036jdk7u21 weblogic1036jdk7u21
访问 http://ip:7001/console/login/LoginForm.jsp
,出现weblogic就ok了
接下来是将一些weblogic的依赖Jar包给导出来进行远程调试
mkdir ./middleware
docker cp weblogic1036jdk7u21:/u01/app/oracle/middleware/modules ./middleware/
docker cp weblogic1036jdk7u21:/u01/app/oracle/middleware/wlserver ./middleware/
//这里我手动在middleware文件夹下创建了一个coherence_3.7
docker cp weblogic1036jdk7u21:/u01/app/oracle/middleware/coherence_3.7/lib ./coherence_3.7/lib
弄好了以后我这里使用xftp把它转到我的桌面上,直接把它当成一个项目用idea去open
直接打开:
添加一下库
然后配置远程调试:
需要添加一些远程调试 然后配置一下ip和端口
所有都配置好之后我们找到入口类
wlserver\server\lib\wlthint3client.jar!\weblogic\rjvm\InboundMsgAbbrev.class
断点后执行检测工具,如果能直接跳到断点处就是ok了
参考文章:
Java安全之初探weblogic T3协议漏洞 - nice_0e3 - 博客园 (cnblogs.com)