分享我的渗透项目进度

中文翻译:

环境准备:

     在此处下载要进行渗透测试的 OVA 文件。

在 VirtualBox 中导入 OVA,并仅为其配置一个 仅主机(Host-Only) 网络适配器。启动虚拟机。

     在你的 Kali 机器上,同样添加一个 仅主机(Host-Only) 网络适配器。启动 Kali 并检查是否有一个 IP 地址属于 192.168.56.0/24 网段的网络接口。这两台机器将在同一网络中。

挑战:

      目标机器 M16_blackbox1 中隐藏了 7 个 flag,你的任务是找到尽可能多的 flag。

你需要使用 课堂上尚未介绍的工具和技术,因此需要根据测试结果进行 自主研究,探索可行的方法。

你可以 使用人工智能(AI) 来寻找新的工具和测试方法。但要取得好的结果,你需要仔细分析你获得的反馈,并基于这些信息给 AI 提供准确的指令。

挑战目标:

  1. 在 黑盒测试(Blackbox) 环境中应用已知的渗透工具

  2. 通过实战挑战 学习更多渗透测试工具

  3. 记录渗透测试的结果

享受挑战的乐趣!

目标机器 :192.168.56.101

FLAG1

使用nmap寻找内网服务:

  • sudo nmap 192.168.56.101

端口80是开放状态

打开浏览器然后局域网访问,由于http默认80的端口,所以输入ip即可

右键然后点击源代码

flag1就藏在后面

FLAG2

怀疑过是不是有没有其他隐藏的目录,所以使用 Gobuster 查找隐藏目录,输入以下命令:

  • gobuster dir -u http://192.168.56.102 -w /usr/share/wordlists/dirb/common.txt

有两个隐藏的活动目录,分别是/images和/hidden,依次在浏览器访问

images目录

图片1,CatsKills.jpg:

图片2,pedraforca.jpg

图片3,turo_home.jpg

hidden目录

list_words.txt:

words.txt:

以上所有出现的文件我们都用wget 下载并存放在pentest里面

输入binwalk 来检测图片里有什么隐藏的信息:

  • binwalk pedraforca.jpg CatsKills.jpg turo_home.jpg

可以看到只有pedraforca.jpg有额外的信息,有ZIP存档,里面还有一个目录和三个子目录,输入binwalk -e 来导出这个隐藏ZIP:

  • binwalk -e pedraforca.jpg

导出之后进入输出结果的目录,进入flag目录,就看到一个名为flag的文件,里面的内容就是flag2

FLAG3

在knock目录有个叫做url.txt的文件,这就是flag3的线索,我们复制过来,输入ip加上这条url

可以看到出现的界面就是turo_home.jpg的照片,怀疑跟pedraforca.jpg一样有隐藏的数据,使用 steghide 来检测有没有隐藏内容,结果显示需要密码,证明真的有隐藏内容,但奈何没有密码

密码在 word.txt里面,我们需要使用字典攻击一个一个测试猜到密码,创建一个脚本来寻找这个代码

这个脚本会:

  1. 创建 success_files 目录(如果不存在)。

  2. 读取 words.txt 里的密码列表。

  3. 遍历当前目录下的 .jpg 文件,尝试用密码解压。

  4. 如果找到正确密码,则复制该 .jpg 文件到 success_files 并停止执行。

密码是543216,我们再次输入steghide命令,输入正确的密码,导出了名为secret.txt的文件

输入cat命令即看到flag3和flag3的线索

FLAG4

复制secret.txt的url的链接

输入ip加url,来到一个login.php界面

在密码段输入' OR 1=1 -- sql 注入攻击来绕过登陆验证

在网页后面,就找到flag4了

FLAG5

我们返回 php 部分页面,什么也不要输入直接点击提交,界面会报错 error login,然后在上面复制整个url:http://192.168.56.101/7ecc6be80294a3baf0093e66c6cde772/login.php?nombre=&pass=

打开sqlmap工具进行 SQL 注入测试,然后输入:

  • sqlmap -u "http://192.168.56.101/7ecc6be80294a3baf0093e66c6cde772/login.php?nombre=&pass=" --batch --dbs

    得到的结果是有一个名为public的数据库(照片忘记拍了)

各部分含义:

  • sqlmap:使用 SQL 注入自动化测试工具 sqlmap。

  • -u "http://192.168.56.101/7ecc6be80294a3baf0093e66c6cde772/login.php?nombre=cat&pass="

  • --batch:自动确认提示(避免手动输入)。

  • --dbs:如果漏洞存在,列出所有数据库。

接着输入:

  • sqlmap -u "http://192.168.56.101/7ecc6be80294a3baf0093e66c6cde772/login.php?nombre=cat&pass=" -D public --tables

各部分含义:

  • sqlmap:使用 SQL 注入自动化测试工具 sqlmap。

  • -u "http://192.168.56.101/7ecc6be80294a3baf0093e66c6cde772/login.php?nombre=cat&pass="

    • -u 指定目标 URL(这里是一个 login.php 登录页面)。

    • nombre=cat:在请求中提供 nombre 参数值为 cat。

    • pass=:pass 参数为空,sqlmap 可能会自动测试 SQL 注入点。

  • -D public:指定数据库 public,表示要在这个数据库中进行操作。

  • --tables:列出 public 数据库中的所有表名。

我们的得到的结果是有三个表,分别是flag,knock,products和users,我们使用此 sqlmap 命令从标志表列中提取flag表的信息:

  • sqlmap -u "http://192.168.56.101/7ecc6be80294a3baf0093e66c6cde772/login.php?nombre=cat&pass=" -D public -T flag --dump

结果

成功,flag5就在这里:

到目前为止,我已经找到了前五个 flag,但 flag6 和 flag7 还是没能搞定。文档的线索提到它们跟 SSH 和 Docker 有关,不过我尝试了好几次,还是没找到突破口,可能是这方面的技术还不够熟练。希望能再摸索一下,或者找到新的思路来解决

更多游戏资讯请关注:电玩帮游戏资讯专区

电玩帮图文攻略 www.vgover.com