内网渗透
01基础知识
02域环境的搭建
03工作组权限
04域内权限
05Windows本地认证
06网络认证
07Kerberos协议
08工作组的信息搜集
09域内的信息搜集
10工作组的密码抓取
11域内的密码抓取
12Dcsync原理以及攻击
13RDP密码凭证抓取
14横向移动概述
15IPC$横向移动
16PTH哈希传递
17PTK密钥传递
18PTT票据传递
19PSexec进行横向移动
20SMBexec进行横向移动
21利用WinRM服务进行横向移动
22利用WMI进行横向移动
23用户枚举与喷洒
24用户枚举与喷洒-实验
25Roasting攻击
26Kerberoasting
27黄金票据
28黄金票据-实验
29白银票据
30白银票据-实验
31委派概述
32非约束性委派攻击
33约束性委派攻击
34约束性委派攻击-实验
35基于资源的约束性委派
36基于资源的约束性委派-实验
-
+
首页
06网络认证
 > 概述 网络认证:Windows网络认证指在Windows操作系统中进行网络通信和资源访问时,验证用户身份和授权权限的过程。确保只有经过身份验证的用户才能够访问网络资源,并根据其权限级别进行授权操作。 # 认证方式 > 1、用户名和密码认证 最为常见的认证方式,用户提供有效的用户名和密码用于验证身份,这种认证方式适用于本地计算机账户或域账户。 > 2、Kerberos认证 Kerberos是一种网络身份验证协议,在Windows域环境中被广泛使用, 通过使用票据和票据授予票证(TGT)来验证用户身份,并生成会话密钥用于加密通信。 > 3、NTLM协议 NTLM(NT LAN Manager)是一种早期的Windows网络认证协议,基于挑战(Challenge)-响应(Response)的方式进行身份验证。 目前Kerberos已成为首选的认证协议,但NTLM仍然在少数情况下使用,特别是与旧版Windows系统或非Windows系统进行互操作时。 > 4、密钥身份认证 Windows支持使用密钥来进行身份的验证,这种方式涉及使用预先共享的密钥对用户进行身份验证,通常用于特定的场景和应用。 > 5、远程桌面认证(Remote Desktop Authentication) 在进行远程桌面连接时,用户需要提供目标计算机的凭证进行认证,以验证身份并获得远程访问权限。 # NTLM协议 主机A想要访问主机B上的资源,就要向主机B发送一个存在于主机B上的一个账户,主机B接收以后会在本地进行验证,如果验证成功,才会允许主机A进行相应的访问。 NTLM(NT LAN Manager)认证是一种早期的Windows网络身份验证协议,在Windows系统中用于验证用户的身份,并提供对网络资源的访问控制。 NTLM协议是一种基于挑战(Challenge)/响应(Response)认证机制 ## NTLM协议 挑战 /响应认证机制 大致流程如下: 1、协商:双方确定传输协议的版本等信息 2、质询:Challenge/Response 认证机制的关键之处 3、验证:对质询的最后结果进行一个验证,验证通过后,即允许访问资源 ## 认证过程 认证分为认证成功与认证失败两种 1、client端会向server端发起请求连接商议信息 2、server端会在本地生成一个(16位或8位)随机字符,即challenge,并将生成的challenge 传递给client端 3、当client端接收到challenge信息时,将username的NTLM-hash对challenge进行加密,并和用户名、域名、机器名等相关信息生成response,并将response发送给给server端 4、server端在收到response后,将其和相同的方法进行加密生成另一个response。如果相同,则验证成功, 如果不同,则验证失败。  ## Wireshark抓包分析 > 实验环境 两台Windows server 2008 R2机器进行NTLM认证抓包分析 | 机器IP地址 | 机器名 | 机器用户 | | ------------- | --------------- | ------------- | | 192.168.110.7 | lm | administrator | | 192.168.110.8 | WIN-LUOQFIF9141 | administrator | 在机器192.168.110.7上执行net use \\IP /u:账号名 密码 进行认证,同时进行抓包  流量分析  > 前四条数据都是用于信息协商  > 第五个数据包是用户的身份验证信息和某些规则,主要为flag里面的规则  > 第六条数据包 包含同意列表和challenge值  可以观察到该challenge值为16位,这是因为采用的是NTLM v2协议。如果是NTLM v1协议,则challenge值为8位。 > 第七个数据包是发送response的数据包,包含账户名和response等相关信息  > 第8个数据包返回的是结果,用于表示成功还是失败  ## challenge值与response值 Challenge是服务器端发送给客户端的一串随机字符,NTLM-v1协议中是8位,NTLM-v2协议中是16位,自从Windows vista之后就开始默认使用v2协议了。 Reponse值是由客户端生成发送给服务端,用于进行校验。 > 协议对比 1. LM-HASH:针对早期Windows用户密码进行加密的hash值 2. NTLM-HASH:针对目前Windows用户密码进行加密的hash值 3. NTLM协议认证:一种认证方式,用于建立两台计算机的信任,分为NTLM-v1协议和NTLM-v2协议 4. NTLM-v2-hash:在NTLM-v2协议认证过程中的一段加密的hash值 5. NET-NTLM v1 hash:是由不同字段组成的值,用于计算机进行对比 > NTLM协议安全问题 1. PTH攻击:因为在NTLM认证过程中,会使用到用户的NTLM-HASH值进行计算,如果攻击者知道计算机中用户的hash值,就可以进行PTH攻击 2. NET-NTLM hash relay攻击:NTLM中间人攻击,如果获得net-NTLM v1 hash可以重放,进行认证 3. NET-NTLM v1 & v2 hash破解:v1破解比较简单,使用DES容易破解。如果是V2就要使用碰撞的方式,可以使用彩虹表等方式,获取明文的账号及密码
毛林
2025年9月7日 11:39
转发文档
收藏文档
上一篇
下一篇
手机扫码
复制链接
手机扫一扫转发分享
复制链接
Markdown文件
PDF文档(打印)
分享
链接
类型
密码
更新密码