NetBIOS名称欺骗和LLMNR欺骗

article/2025/9/17 19:41:28

本文原创作者: 贺兰山缺口

原创投稿详情:重金悬赏 | 合天原创投稿等你来!

NetBIOS和LLMNR简介

       NetBIOS和Link-LocalMulticast NameResolution(LLMNR)是Microsoft针对工作组和域设计的名称解析协议,主要用于局域网中的名称解析。当DNS解析失败时,Windows系统会使用NetBIOS和LLMNR搜索名称。这些协议只为本地连接设计。

NetBIOS和LLMNR在WindowsVista以后的系统中均实现,二者的主要区别在于:1)NetBIOS基于广播,而LLMNR基于多播;2)NetBIOS在WindowsNT以后的所有操作系统上均可用,而只有WindowsVista和更高版本才支持LLMNR;3)LLMNR还支持IPv6,而NetBIOS不支持,因此,在启用了IPv6,但对IPv6管理不如IPv4那样细致的复杂网络中,就可能发生更广泛的攻击。

当使用DNS的主机名解析失败后,工作站将广播一个查询来获取NetBIOS名称,或者通过LLMNR地址224.0.0.252(对于IPv6位FF02:1:3)发送一个多播请求来获取名称。

攻击原理

NetBIOS和LLMNR协议对于没有DNS的工作站系统来说很有帮助,但也对攻击者大开方便之门。当人们输入不存在、包含错误或者DNS中没有的主机名时,就会使用这些协议在网络中搜索主机,这些协议的本质决定了本地网络上的任何主机都可以回答请求。这意味着作为攻击者,我们能够代替网络上任何不存在的主机回答请求,并诱导搜索内容的主机连接到我们。攻击示意图如图1所示。

图1LLMNR/NetBIOS欺骗攻击示意图

更严重的是,当我们使用Metasploit和Responder等工具时,可以要求验证受害者主机的身份,而如果我们被认为是这些主机所在的本地网络中的一部分时,他们就会把自己进行哈希后的Windows凭据发给我们。

Responder简介

Responder是由LaurentGaffie发布的一款功能强大且简单易用的内网渗透工具,将NetBIOS名称服务(NBNS)、LLMNR和MDNS欺骗集成到一个工具中。

下载地址为https://github.com/SpiderLabs/Responder,当前最新版本是2.3。

默认Kali已安装responder

Responder的特性包括内置SMB认证服务器、MSSQL认证服务器、HTTP认证服务器、HTTPS认证服务器、LDAP认证服务器,DNS服务器、WPAD代理服务器,内建FTP、POP3、IMAP、SMTP服务器用于收集明文的凭据。

Responder会将所有抓取到的hash打印到标准输出接口上同时会以下面的格式存储到logs/文件夹下。

(MODULE_NAME)-(HASH_TYPE)-(CLIENT_IP).txt

所有的活动都会记录到Responder-Session.log,分析模式下的日志保存到Analyze-Session.log,毒化模式下的日志保存到Poisoners-Session.log.同时所有抓到的hash都会存储到我们在Responder.conf中配置的sqlite数据库中.

为了获取Responder的帮助选项,输入responder–h,如图2所示。

图2Responder帮助

攻击场景

接下来我们开始进行NetBIOS和LLMNR欺骗攻击。以下操作都在VMware虚拟机中进行。

所使用的网络环境如下表,攻击者和受害者在同一局域网中。

角色

操作系统

IP地址

密码

攻击者

Kali

192.168.26.204


受害者

Windows 7

192.168.26.144

123456

攻击流程

1.运行Responder

在攻击者主机上运行Responder,命令如下:

responder –I eth0 –f

命令解释:-I指定使用的网卡,-f允许攻击者查看受害者的主机指纹。

开启后,如图3所示,从图中可以看出,针对LLMNR、NBT-NS(NetBIOS名称服务)、DNS/MDNS的毒化攻击已经开启。

图3开启responder

2.受害者访问不存在的主机

在访问之前,首先确保Windows7主机的网络类型是工作网络或者家庭网络中,这将确保凭据通过SMB发送。如图4所示。

图4设置网络类型

受害者在资源管理器的地址栏中输入\\gha时,如图5所示,Windows系统会尝试连接主机“gha”。首先,它会检查DNS,如果不存在,就会通过LLMNR协议进行多播,在局域网中进行搜索。此时,我们可以在攻击机上看到Responder的响应,然后受害者的Windows机器会向攻击者进行身份验证。

图5连接主机gha

可以看到,受害者请求gha主机时,攻击者的Responder会返回一个LLMNR欺骗,并得到受害者Windows的操作系统信息。当Windows系统尝试连接时,Responder会记录发送的哈希,用户名、IP地址等信息,如图6所示。

图6LLMNR欺骗

至此,我们获取了一个NTLMv2哈希。NTLM的全称是NTLAN Manager,是微软提出的WindowsNT挑战/响应验证机制,用于在局域网内传输口令信息,NTLMv2是NTLM的更新版本。

3.破解NTLMv2哈希

在一个局域网环境中,我们让Responder运行几分钟到几个小时,以捕获尽可能多的凭据。

停止Responder后,在安装目录的logs文件夹下,会为每个service-proto-IP生成唯一的文件,如图7所示。

图7Responder日志目录

本例中是SMB-NTLMv2-SSP-192.168.26.144.txt

接下来,使用johnthe ripper进行破解NTLMv2。JohntheRipper是一款快速密码破解器,目前可用于Unix,Windows,DOS和OpenVMS等多种版本。它的主要目的是检测弱Unix密码。除了支持各种Unix系统上最常见的几种密码哈希类型之外,还支持WindowsLM哈希,在社区增强版本中,还支持大量其他哈希和密码。

默认kali中已经安装该工具,启动命令是john。John可以使用外部字典,使用--wo选项指定外部字典,本例中,我们没有使用外部字典,而是使用john的默认字典,因此没有使用--wo选项。命令如下图。

图8john破解密码

可以看出,破解出密码后,就显示到屏幕上。由于我们的密码比较简单,所以很快就破解出来。

如果收集到很多凭据,可以通过cat*NTLMv2* > NTLMv2.txt将所有的NTLMv2凭据汇聚到一个文件中,然后使用该文件同时破解多个密码。

防御措施

为了防止在局域网内遭到NetBIOS名称欺骗和LLMNR欺骗攻击,可以考虑关闭NetBIOS和LLMNR服务。不过在关闭这些服务以后,可能用户的一些正常需求会受到影响。

关闭NetBIOS

依次点击控制面板->网络和Internet->网络连接,右击本地连接或者无线网络连接,选择“属性->Internet协议版本4->属性->高级”,在WINS标签栏中的NetBIOS设置中禁用NetBIOS,如图9所示。

图9关闭NetBIOS

关闭LLMNR

点击开始->运行,输入gpedit.msc,如图10所示,打开本地组策略管理器。

图10运行

依次点击计算机配置->管理模板->网络->DNS客户端,如图11所示。

图11本地组策略管理器

在右侧的设置里,双击最下面的“关闭多播名称解析”,选择“已禁用”,并应用,如图12所示。

图12关闭多播名称解析

(完)

看不过瘾?合天2017年度干货精华请点击《【精华】2017年度合天网安干货集锦》

别忘了投稿哦!

合天公众号开启原创投稿啦!!!

大家有好的技术原创文章。

欢迎投稿至邮箱:edu@heetian.com

合天会根据文章的时效、新颖、文笔、实用等多方面评判给予100元-500元不等的稿费哟。

有才能的你快来投稿吧!

重金悬赏 | 合天原创投稿等你来!


http://chatgpt.dhexx.cn/article/UGPUyuQc.shtml

相关文章

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

0、前言 如果已经进入目标网络,但是没有获得凭证,可以使用 LLMNR 和 NetBIOS 欺骗攻击对目标进行无凭证条件下的权限获取。 1、基本概念 LLMNR 本地链路多播名称解析(LLMNR)是一种域名系统数据包格式,当局域网中的…

LLMNR Poison技术详解

一、LLMNR 协议 简介 从 Windows Vista 起,Windows 操作系统开始支持一种新的名称解析协议 —— LLMNR,主要用于局域网中的名称解析。LLMNR 能够很好的支持 IPv4 和 IPv6,因此在 Windows 名称解析顺序中是一个仅次于 DNS 的名称解析方式&am…

最简单的动态数据源配置

动态数据源配置 操作步骤:一、数据源配置配置方式:二、动态数据源相关类1. 枚举类定义如下:2. 重写查找当前数据源的方法:3. 用ThreadLocal变量存储查询数据源的字符串:4. 用动态数据源替换掉普通的数据源 二、测试结果。1. Mapper类2.TestMapper 二、重点来了!! 操作步骤: 提…

几种数据源的配置方式

目录 1.c3p0配置方式 2.dbcp配置方式 3.DriverManagerDataSource配置方式 4.HikariDataSource配置方式 5.多数据源整合&#xff08;编程式事务&#xff09; 1.c3p0配置方式 lib: applicationContext.xml <?xml version"1.0" encoding"UTF-8"?&g…

多数据源配置-springBoot

前言 这里展示的是springBoot项目双数据源的配置&#xff0c;为了增加一定的代表性&#xff0c;这里采用两个不同的数据库Orcale和Mysql作为数据源。 依赖 <!-- orcale驱动包 --> <dependency><groupId>com.oracle.database.jdbc</groupId><arti…

若依多数据源配置

1.修改application-druid.yml文件&#xff0c;这里使用mysql数据源&#xff0c;分别有ry-vue、ry-test1、ry-test2三个数据库。 2.修改DataSourceType类&#xff08;MASTER主库&#xff0c;SLAVE、LOGIN两个从库&#xff09;。 3.修改DruidConfig类。 以上配置完成后&#xff0…

如何配置数据源

(一&#xff09;官网 Spring Initializrhttps://start.spring.io/ &#xff08;二&#xff09;各依赖 &#xff08;三&#xff09;打印一下数据源 &#xff08;四&#xff09;查看有哪些bean &#xff08;五&#xff09;不用spring boot自己配置bean 1、数据源相关 • DataSou…

SpringBoot 之数据源配置

文章目录 市面上的几种数据源比对SpringBoot自动装配DataSource原理HiKariCP 数据源配置Druid 数据源配置SpringBoot集成Druid连接池Druid 多数据源配置&#xff08;不同Mapper操作不同数据源&#xff09;HikariCP 多数据源动态配置 springboot2.0整合druid&#xff0c;以及spr…

P值 卡方值

P值&#xff1a; P值即概率&#xff0c;反映某一事件发生的可能性大小。 不同的P数值所表达的含义也是不一样的。 统计学根据显著性检验方法所得到的P 值&#xff0c;一般以P < 0.05 为有统计学差异&#xff0c; P<0.01 为有显著统计学差异&#xff0c;P<0.001为有…

Python数据挖掘学习6卡方检验

1.定义&#xff1a;一种用途很广的计数资料的假设检验方法。它属于非参数检验的范畴&#xff0c;主要是比较两个及两个以上样本率( 构成比&#xff09;以及两个分类变量的关联性分析。 2.基本思想&#xff1a;统计样本的实际观测值与理论推断值之间的偏离程度&#xff0c;实际…

python scipy 密度函数 分位数 累计函数计算p值 卡方检验 t检验 F检验 假设检验 AB实验 显著性检验

AB实验&#xff1a; 1. 人均类->t检验 # 计算t值 def get_t(x):# 遍历看x需要几次的显著性检验。可能有多个实验组&#xff0c;需要一对一检验x1 x[x.分组.astype(str)1].iloc[0] # 对照组&#xff0c;组号固定为1&#xff0c;转为Series格式for i in x[x.分组.astype(st…

卡方检验c语言算法,R语言 | 卡方检验(Chi-squaretest)

卡方检验在计数资料中的应用,包括推断两个总体率或构成比之间有无差别、多个总体率或构成比之间有无差别、多个样本率间的多重比较、两个分类变量之间有无关联性、多维列联表的分析和频数分布拟合优度的卡方检验。选自:周支瑞老师 下面分别介绍计数资料怎么进行卡方检验。 目…

SPSS篇—卡方检验

今天依旧跟大家分享一个在SPSS中使用率比较高的分析方法&#xff1a;卡方检验。 在开始做分析之前&#xff0c;我们需要明白两件事情&#xff1a;卡方检验是什么&#xff1f;一般用来干什么&#xff1f;我们只有充分了解分析方法以后才能够正确的使用它。 卡方检验在百科中的…

四格表卡方检验.医学统计实例详解-医学统计助手★卡方检验,t检验,F检验,秩和检验,方差分析

四格表卡方检验是医学统计学中常用的一种方法&#xff0c;用于确定两个分类变量之间是否存在关联。在医学研究中&#xff0c;四格表卡方检验被广泛应用于研究疾病和治疗方法之间的关联&#xff0c;以及预测疾病发展的风险因素。 四格表卡方检验基于一个二维表格&#xff0c;也…

卡方检验四格表怎么做_运用SPSS进行医学诊断数据的Kappa一致性检验 ——【杏花开医学统计】...

杏花开生物医药统计 一号在手,统计无忧! 关 注 运用SPSS进行医学诊断数据的 Kappa一致性检验 关键词:SPSS、 Kappa 导读 在医学诊断试验中,经常会遇到将待评价的诊断实验方法的诊断结果与金标准的诊断结果进行比较的情况,或者是将两种不同的诊断方法用于同一样本的诊断结果…

卡方检验四格表怎么做_等级变量的假设检验怎么做?

作者&#xff1a;丁点helper 来源&#xff1a;丁点帮你 今天&#xff0c;我们讲等级变量的假设检验。首先&#xff0c;回顾一下&#xff0c;什么叫等级变量&#xff0c;也称有序变量。 一般而言&#xff0c;等级变量属于分类变量(如上)的一种&#xff0c;与之相对的就是无序变…

Pearson卡方该如何计算?

一、Pearson卡方 Pearson卡方可用研究定类和定类数据的差异&#xff0c;比如性别和是否吸烟之间的差异关系。 二、分析 SPSSAU通用方法里面的‘交叉&#xff08;卡方&#xff09;’研究方法默认使用Pearson卡方&#xff0c;并且提供百分比按行或者按列两种方式。如下图&…

卡方检验概述

前言、什么是卡方检验 卡方检验是一种用途很广的计数资料的假设检验方法。它属于非参数检验的范畴&#xff0c;主要是比较两个及两个以上样本率( 构成比&#xff09;以及两个分类变量的关联性分析。其根本思想就是在于比较理论频数和实际频数的吻合程度或拟合优度问题。 它在…

Python计算卡方值

Python代码 import numpy as np from scipy.stats import chi2_contingencyd np.array([[2, 1, 1, 0, 276], [9, 7, 4, 2, 258]]) print(chi2_contingency(d)) # 第一个值为卡方值&#xff0c; # 第二个值为P值&#xff0c; # 第三个值为自由度&#xff0c; # 第四个为与原数…

卡方检验值转换为P值

卡方检验作为一种常见的假设检验&#xff0c;在统计学中的地位是显而易见的&#xff0c;如果你还不太清楚可以参看这篇博文:卡方检验用于特征选择&#xff0c;写的非常的浅显易懂&#xff0c;如果你还想再扩展点卡方检验方面的知识&#xff0c;可以参看这篇博文卡方检验基础&am…