影响范围:
Weblogic版本:10.3.6(11g)
漏洞描述:
攻击者通过弱口令登录后台,通过部署war包的方式上传jsp马获取webshell。
如果不存在弱口令的情况下,该
复现操作步骤:
使用vulhub搭建靶场。
访问weblogic的后台页面,http://ip:7001/console
尝试使用弱口令登录后台,此靶场环境存在weblogic:Oracle@123弱口令。但是该环境存在登录限制,错误五次后会锁定。
weblogic常用弱口令:system/password、weblogic/weblogic、admin/security、joe/password、may/password、system/security、wlcsystem/wlcsystem、wlpisystem/wlpisystem等
在登录进后台后,使用后台部署功能进行上传jsp马。
将冰蝎生成的jsp马打包成war包上传。
创建一个空目录war将生成的jsp马放入目录中,在使用cmd命令:jar -cvf shell.war war
shell.war是打包后的名称,最后的war是存放jsp马的目录,也可进入war目录直接使用.打包当前目录所以文件
打包结束后上传war包进行部署。
到此结束部署,访问http://ip:7001/shell/shell.jsp正常,冰蝎连接成功
本次靶场还存在任意文件读取漏洞,通过http://ip:7001/hello/file.jsp?path=/etc/passwd读取下载passwd文件。
weblogic密码是使用AES(老版本3DES)加密,可以进行读取weblogic密文和密钥文件进行解密。
密文存储路径:/root/Oracle/Middleware/user_projects/domains/base_domain/config/config.xml
密钥存储路径:/root/Oracle/Middleware/user_projects/domains/base_domain/security/SerializedSystemIni.dat
在本次环境中基于当前目录/root/Oracle/Middleware/user_projects/domains/base_domain,所以路径为config/config.xml和security/SerializedSystemIni.dat。
config.xml是base_domain的全局配置文件,所以乱七八糟的内容比较多,找到其中的的值,即为加密后的管理员密码。
SerializedSystemIni.dat是一个二进制文件,所以一定要用burpsuite来读取,用浏览器直接下载可能引入一些干扰字符。在burp里选中读取到的那一串乱码,右键copy to file就可以保存成一个文件:
使用解密工具进行解密,可以使用靶场环境decrypt目录下的weblogic_decrypt.jar,也可以在github下载
获取了账号密码之后,和上面弱口令一样进行部署getshell。
略·····························································································
参考链接:
https://vulhub.org/#/environments/weblogic/weak_password/
https://github.com/TideSec/Decrypt_Weblogic_Password