避坑小记:Weblogic漏洞复现环境搭建

避坑小记:Weblogic漏洞复现环境搭建

AabyssZG
2023-01-19 / 0 评论 / 1,091 阅读 / 正在检测是否收录...
温馨提示:
本文最后更新于2023年01月20日,已超过399天没有更新,若内容或图片失效,请留言反馈。

0# 什么是Weblogic?

WebLogic是美国Oracle公司出品的一个application server,确切的说是一个基于JAVAEE架构的中间件,WebLogic是用于开发、集成、部署和管理大型分布式Web应用、网络应用和数据库应用的Java应用服务器。将Java的动态功能和Java Enterprise标准的安全性引入大型网络应用的开发、集成、部署和管理之中。
ld2poapf.png

根据我的个人经验,国内金融产业(银行)、政府等单位都比较喜欢Weblogic,应用还是相对比较广泛的

1# 关于Weblogic搭建

在平常的信息安全相关工作、学习过程中,Weblogic的相关漏洞经常会碰到。而Weblogic环境搭建过程很繁琐,并且平常想要进行代码调试、漏洞复现的时候,经常会有搭建各种Weblogic版本和各种JDK版本的排列组合的需求,导致安全研究人员苦不堪言。

我早些年也被这个问题搞得焦头烂额,当时我一气之下封装了好几个docker才解决问题,但花了不少精力和世界,有没有一个更优雅的方法解决这个问题呢?

最近刚好有两个Weblogic漏洞比较感兴趣,想上手分析一下。正好又看到了奇安信A-Team的Weblogic快速构建项目,这里就上手来试一下,并随手记录一下整个搭建过程。

2# 准备工作

2.1# 准备工具

  • VMware虚拟机(其他虚拟机也行)
  • CentOS 7镜像(这个快速构建项目只能用CentOS,刚开始我用Ubuntu跑不起来,算是踩坑了)
  • WeblogicEnvironment(奇安信A-Team的Weblogic快速构建项目)
  • 对应版本的JDK安装包(看你需求)
  • 对应版本的Weblogic安装包(看你需求)

2.2# 资源下载方式

CentOS镜像下载地址: http://mirrors.aliyun.com/centos/7.9.2009/isos/x86_64/

CentOS阿里云镜像下载.png

下载 CentOS-7-x86_64-DVD-2009.iso 即可,也可以用 CentOS-7-x86_64-DVD-2009.torrent 种子进行下载


WeblogicEnvironment: https://github.com/QAX-A-Team/WeblogicEnvironment

WeblogicEnvironment下载页面.png

直接下载代码即可


JDK安装包下载地址: https://www.oracle.com/java/technologies/downloads/archive/

JDK安装包下载地址.png

选择要安装的版本,比如我想要安装JDK7,直接点击对应链接:

JDK安装包下载.png

选择 Linux x64 并下载即可


Weblogic安装包下载地址: https://www.oracle.com/middleware/technologies/weblogic-server-downloads.html

Weblogic安装包下载地址.png

选择要安装的版本,比如我想要安装 Oracle WebLogic Server 10.3.6,选择 Generic Installer 并下载即可

3# 开始搭建Weblogic漏洞复现环境

准备工作都完成了,那就开始搭建吧~

3.1# 安装CentOS到虚拟机

这一步不需要我教你了吧,有问题百度
如果需要把CentOS系统语言改为中文,可以参考这篇文章: https://www.cnblogs.com/-zzf/p/16137234.html
换源的话,如果觉得原始源太慢可以选择换源

安装VM-Tools,在命令行输入以下命令:

sudo yum install -y open-vm-tools
sudo yum install -y open-vm-tools-desktop

3.2# CentOS安装Docker

最好是切换到 root 账户(我怕权限问题)

su root

切换至root.png

在终端执行以下命令:

yum install -y docker

docker安装完毕.png

显示Docker安装完毕,验证一下是否安装正常即可:

docker --version

或者是这样:

yum list installed | grep docker

docker安装正常.png

如果想每次在服务器启动后都自动启动 Docker 的话,可以使用以下命令开启:

systemctl enable docker

3.2# 配置WeblogicEnvironment

将刚才准备的WeblogicEnvironment压缩包复制到CentOS并解压:

解压WeblogicEnvironment.png

根据项目描述,打开解压后的文件夹,创建两个新文件夹,名字分别是 jdksweblogics

创建文件夹.png

然后将准备好的JDK安装包和Weblogic安装包分别放到 jdksweblogics 这两个文件夹里面

3.3# 运行WeblogicEnvironment

这个项目提供了一键构建Docker镜像的sh脚本,但我们需要修改一下
项目文档中也给出了示例:

同样这两行代码也包含在项目的sh脚本中了,我们修改一下sh脚本文件保存即可:

修改sh文件.png

接下来给文件夹赋予执行权限:

cd /home/demo/WeblogicEnvironment-master  //根据项目的位置自行切换
chmod -R 777 ../WeblogicEnvironment-master

然后看一下执行权限给了没:

cd /home/demo/WeblogicEnvironment-master  //根据项目的位置自行切换
ls -l

给予777权限.png

接下来执行脚本即可:

./run_weblogic1036jdk7u21.sh   //刚才修改的sh脚本名字

3.4# 解决报错问题

这个时候会报错:Error: Failed to download metadata for repo 'appstream': Cannot prepare internal mirrorlist: No URLs in mirrorlist

运行sh报错.png

3.5# 成功搭建Weblogic漏洞复现环境

再次运行sh脚本即可成功将Docker环境跑起来:

Docker构建成功.png

访问 虚拟机IP:7001/console/login/LoginForm.jsp 能登录到 Weblogic Server 管理控制台,用户名密码如下:

默认用户名:weblogic
默认密码:qaxateam01

weblogic-web面板-1.png

weblogic-web面板-2.png

4# 总结

搭建一路上还是遇到了不少坑,也卡了挺久的,有时候确实让人很烦躁
但技术的学习就是这样,很多时候都是在发现问题、解决问题,只有认真、耐心的去面对并解决问题,才能有相应的成长和收获!

同时也希望这篇文章能给各位师傅带来帮助~

13

评论 (0)

取消