🔥码云GVP开源项目 12k star Uniapp+ElementUI 功能强大 支持多语言、二开方便! 广告
[TOC] ## PTH pass-the-hash在内网渗透中是一种很经典的攻击方式,原理就是攻击者可以直接通过LM Hash和NTLM Hash访问远程主机或服务,而不用提供明文密码。 pass the hash原理: * 在Windows系统中,通常会使用NTLM身份认证 * NTLM认证不使用明文口令,而是使用口令加密后的hash值,hash值由系统API生成(例如LsaLogonUser) * hash分为LM hash和NT hash,如果密码长度大于15,那么无法生成LM hash。从Windows Vista和Windows Server 2008开始,微软默认禁用LM hash * 如果攻击者获得了hash,就能够在身份验证的时候模拟该用户(即跳过调用API生成hash的过程) 这类攻击适用于: * 域/工作组环境 * 可以获得hash,但是条件不允许对hash爆破 * 内网中存在和当前机器相同的密码 ## PTT ptt攻击的部分就不是简单的NTLM认证了,它是利用Kerberos协议进行攻击的,这里就介绍三种常见的攻击方法: MS16-068,Golden ticket,SILVER ticket。 之前介绍了Kerberos协议具体工作方法,在域中,简要介绍一下: * 客户机将明文密码进行NTLM哈希,然后和时间戳一起加密(使用krbtgt密码hash作为密钥),发送给kdc(域控),kdc对用户进行检测,成功之后创建TGT(Ticket-Granting Ticket) * 将TGT进行加密签名返回给客户机器,只有域用户krbtgt才能读取kerberos中TGT数据 * 然后客户机将TGT发送给域控制器KDC请求TGS(票证授权服务)票证,并且对TGT进行检测 * 检测成功之后,将目标服务账户的NTLM以及TGT进行加密,将加密后的结果返回给客户机。