目录

基础知识

LLMNR是什么?

LLMNR 的工作过程

NetBIOS是什么?

Windows系统名称解析顺序

LLMNR和NetBIOS欺骗攻击

攻击原理

Responder工具利用过程

针对LLMNR和NetBIOS欺骗攻击的防御


基础知识

LLMNR是什么?

链路本地多播名称解析LLMNR)是一个基于协议的域名系统(DNS)数据包的格式,使得双方的IPv4和IPv6的主机来执行名称解析为同一本地链路上的主机。当局域网中的DNS服务器不可用时,DNS客户端会使用LLMNR本地链路多播名称解析来解析本地网段上的主机的名称,直到网络连接恢复正常为止。

LLMNR 的工作过程

当一台主机想要访问到另一台主机时,主机在自己的内部名称缓存中查询名称,如果在缓存中没有找到名称,那么主机就会向自己配置的DNS服务器发送查询请求,如果主机没有收到回应或收到了错误信息,即DNS解析会失败,那么就会转为使用LLMNR链路本地多播名称解析。

使用链路本地多播名称解析时,主机会通过 UDP 向局域网内发送多播查询,查询主机名对应的IP,查询范围被限制在本地子网内。本地子网内每台支持LLMNR的主机在收到这个查询请求后,收到该请求的主机会判断自己的主机名是不是这个查询的主机名。如果是,这台主机会回复自己IP地址给请求该查询的主机;如果不是则丢弃该请求。

NetBIOS是什么?

Netbios(Network Basic Input Output System):网络基本输入输出系统,它提供了OSI模型中的会话层服务,让在不同计算机上运行的不同程序,可以在局域网中,互相连线,以及分享数据。严格来说,Netbios是一种应用程序接口(API),系统可以利用WINS服务、广播及Lmhost文件等多种模式将NetBIOS名解析为相应IP地址,几乎所有的局域网都是在NetBIOS协议的基础上工作的。NetBIOS也是计算机的标识名称,主要用于局域网内计算机的互访。NetBIOS的工作流程就是正常的机器名解析查询应答过程。在Windows操作系统中,默认情况下在安装 TCP/IP 协议后会自动安装NetBIOS。

Windows系统名称解析顺序

1. 本地hosts文件(%windir%\System32\drivers\etc\hosts)

2. DNS缓存/DNS服务器

3. 链路本地多播名称解析(LLMNR)和NetBIOS名称服务(NBT-NS)

也就是说,如果在缓存中没有找到名称,DNS名称服务器又请求失败时,Windows系统就会通过链路本地多播名称解析(LLMNR)和Net-BIOS名称服务(NBT-NS)在本地进行名称解析。这时,客户端就会将未经认证的UDP广播到网络中,询问它是否为本地系统的名称。这就产生了一个安全问题。由于该过程未被认证,并且广播到整个网络,从而允许网络上的任何机器响应并声称是目标机器。通过工具监听LLMNR和NetBIOS广播,攻击者可以伪装成受害者要访问的目标机器,并从而让受害者交出相应的登陆凭证。

LLMNR和NetBIOS欺骗攻击

攻击原理

我们利用SMB协议获取目标网络中计算机的Net-NTML Hash。

当用户输入 不存在、包含错误 或者 DNS中没有的主机名 时,主机先在自己的内部名称缓存中查询名称,如果没找到,主机就会向DNS服务器查询,而DNS解析会失败,此时就会退回LLMNR和NetBIOS进行计算机名称解析。那么攻击者就能够代替网络上任何不存在的主机回答请求,并诱导搜索内容的主机连接到我们。如果攻击者使用 Metasploit 和 Responder 等工具,就可以要求验证受害者主机的身份,而如果攻击者被认为是这些主机所在的本地网络中的一部分时,他们就会把自己进行哈希后的Windows凭据发给攻击者。核心过程与arp欺骗类似。

在渗透测试中,如果进入目标系统后没有获取到任何凭证,可以使用LLMNR和NetBIOS欺骗攻击对目标网络进行渗透。

Responder工具利用过程

下载地址:https://github.com/sdfzy/Responder

Responder是监听LLMNR和NetBIOS协议的工具之一,能够抓取网络中所有的LLMNR和NetBIOS请求并进行响应,获取最初的账户凭证。

Responder会利用内置SMB认证服务器、MSSQL认证服务器、HTTP认证服务器、HTTPS认证服务器、LDAP认证服务器,DNS服务器、WPAD代理服务器,以及FTP、POP3、IMAP、SMTP等服务器,收集目标网络中的明文凭据,还可以通过Multi-Relay功能在目标系统中执行命令。

Kali中内置了该工具。

在渗透测试中,使用responder并启动回应请求功能,responder会自动回应客户端的请求并声明自己就是被输入了错误主机名称的那台主机,然后尝试建立SMB连接。对于SMB协议,客户端在连接服务端时,默认先使用本机的用户名和密码hash尝试登录,此时攻击者就可以得到受害机的Net-NTML Hash,并用john、hashcat等工具破解出客户端当前用户的明文密码。

1. 开启监听

responder -I eth0 -f       
  • -I:指定使用的网卡
  • -f:允许攻击者查看受害者的主机指纹

如上图,“ON”代表针对服务数据包的监听开启,“OFF”代表关闭监听。

2. 受害机操作

可以使用以下几个命令,随便输入一个不能解析的名称(whoami)

net use \\whoami
dir \\whoami\c$

也可以在“运行”里面连接

此时会尝试连接主机“whoami”,然而通过检查内部名称缓存和DNS都没找到,就会通过LLMNR和NetBIOS,在局域网中进行搜索。

此时攻击者收到了受害者用户的Net-NTML Hash:

Net-NTML Hash是指在网络环境中经过NTML认证的散列值。挑战/响应验证中的响应就包含Net-NTML Hash。使用responder抓取的通常就是Net-NTML Hash。攻击者无法使用Net-NTML Hash进行哈希传递攻击,只能使用hashcat等工具爆破或进行NTLM-Relay攻击。

Net-NTML Hash详情请见:https://blog.csdn.net/qq_36119192/article/details/85941222

攻击端收到了受害机的 Net-NTLMHash 的值后,可以对其进行爆破,也可以利用该 Net-NTLMHash 进行NTLM-Relay攻击(日后讲解)。

停止Responder后,Responder会将所有抓取到的数据存储到 /usr/share/responder/logs/ 文件夹下,会为每个service-proto-IP生成唯一的文件,如图

3. 爆破Net-NTLMHash

像抓取到的Net-NTLMHash保存到hash.txt中,使用hashcat对hash进行爆破:

hashcat下载地址:https://hashcat.net/files/hashcat-6.0.0.7z

hashcat.exe -m 5600 hash.txt rockyou.txt
// rockyou.txt为字典

得到明文密码。也可以使用kali自带的john工具进行破解,如下:

John the Ripper是一个快速的密码破解程序,目前可用于Unix,Windows,DOS和OpenVMS的许多口味。其主要目的是检测弱Unix密码。

John可以使用外部字典,使用--wo选项指定外部字典,这里,我们使用john的默认字典,对上面responder生成的SMB-NTLMv2-SSP-192.168.1.5.txt文件进行爆破。

成功了得到明文密码。

针对LLMNR和NetBIOS欺骗攻击的防御

关闭NetBIOS和LLMNR服务。

注意:在关闭这些服务以后,用户的一些正常需求可能会受到影响哦。

参考:

https://baike.baidu.com/item/NETBIOS/611263?fr=aladdin

https://baike.baidu.com/item/LLMNR/1116392?fr=aladdin

https://blog.csdn.net/qq_38154820/article/details/106329725

内网渗透研究:LLMNR和NetBIOS欺骗攻击分析相关推荐

  1. LLMNR和NetBIOS欺骗攻击分析及防范

    本文首发于先知社区:https://xz.aliyun.com/t/9714 链路本地多播名称解析(LLMNR)是一个基于域名系统(DNS)数据包格式的协议,IPv4和IPv6的主机可以通过此协议对同 ...

  2. 【内网学习笔记】18、LLMNR 和 NetBIOS 欺骗攻击

    0.前言 如果已经进入目标网络,但是没有获得凭证,可以使用 LLMNR 和 NetBIOS 欺骗攻击对目标进行无凭证条件下的权限获取. 1.基本概念 LLMNR 本地链路多播名称解析(LLMNR)是一 ...

  3. 【Web安全】内网渗透研究之利用MSF和Impacket工具拿域控

    内网渗透拿域控 环境:http://afsgr16-b1ferw.aqlab.cn/?id=1 [查看资料] 1.进去一看,典型的sql注入 2.测试了一下,可以爆库,也可以写一句话,并且还爆了绝对路 ...

  4. [内网渗透]—NTLM网络认证及NTLM-Relay攻击

    NTML网络认证 Windows认证分为本地认证和网络认证,当我们开机登录用户账户时,就需要将lsass.exe进程转换的明文密码hash与 sam文件进行比对,这种方式即为--本地认证 而当我们访问 ...

  5. 内网渗透中最常见的十种漏洞分析总结

    [环境搭建资料.工具包.全套视频-等籽料]私信聆取 以下信息是根据2020年和2019年为全球各种中型组织和企业完成的60多个渗透测试报告汇总而来的,在跳转到列表之前,让我们简要介绍一下全面的测试方法 ...

  6. 内网渗透测试:NTLM Relay攻击分析

    目录 基础知识 NTLM认证过程 NTLM中继攻击原理 获得Net-NTLM Relay的思路 利用LLMNR和NetBIOS欺骗获得Net-NTLMHash 利用WPAD劫持获得Net-NTLMHa ...

  7. 内网渗透测试:Windows权限提升思路

    我的Freebuf:https://www.freebuf.com/author/MrAnonymous 我的博客:https://whoamianony.top/ 文章目录 Windows系统内核溢 ...

  8. 内网渗透-----权限分析及防御

    第四章 权限提升分析及防御 生成MSF木马 msfvenom -p windows/meterpreter/reverse_tcp lhost=10.10.10.2 lport=1234 -f exe ...

  9. 内网渗透-实战|手把手教你如何进行内网渗透

    实战|手把手教你如何进行内网渗透 x00 Preface 内网渗透主要是基于前期外围打点getshell的webserver,通过收集webserver上的信息,然后对其他内网主机进行口令上的攻击,当 ...

最新文章

  1. 带你简单了解通信工程
  2. 如何让MFC编写的应用程序(用VC6.0开发)能在别的电脑上运行
  3. html 右侧滚动条,html中去掉textarea右侧滚动条和右下角拖拽
  4. 服务器点播直播系统,服务器点播直播系统
  5. u-boot 详细介绍 .
  6. java 将3变为03,03 Java序列化引发的血案
  7. ceph中查看一个rbd的image的真实存储位置
  8. 【数据库基础知识】数据库表格——主键和外键
  9. SAP License:SAP职场处好人际关系的六大秘籍
  10. 2011年12月1日学习内容总结
  11. EMNLP2020文档级关系抽取模型GAIN 论文Double Graph Based Reasoning for Document-level Relation Extraction
  12. Python对象内存地址
  13. XX公司的薪酬设计案例分析
  14. 新手小白,做二次剪辑的必备工具,帮你快人一步
  15. android keep倒计时,Android仿Keep运动休息倒计时圆形控件
  16. binlog2sql快速闪回
  17. 第二章 6 选择并 遮住
  18. 被严重 “高估” 的未来
  19. 6月17日吃鸡服务器维护,英雄联盟6月17日更新了什么
  20. 线性代数(一)-行列式

热门文章

  1. 信息组织 | 历史发展与未来趋向
  2. Java Servlet 实战入门教程-10-servlet 过滤器 Filter
  3. php 取整,PHP取整的方法有哪些
  4. MapReduce 详细教程
  5. 洗衣店v2.5.0微信小程序源码下载
  6. Android模拟器apk程序安装器
  7. 2017 Java开发面试题-Java Web篇(1)
  8. 低代码协同政务OA升级,打造智慧办公平台
  9. C++primer plus部分解答
  10. 如何认识网络变压器芯片引脚图及网络变压器外围BOB-SMITH电路