前不久在使用mimikatz抓取hash的时候遇到了报错,本着追根溯源的原则去查看了mimikatz抓取密码的原理。在学习的过程中发现了mimikatz的每种报错都有不同的原因,本文就记录一下自己的学习过程,从mimikatz的防御角度出发来分析如何防御mimikatz抓取密码。
通过控制内网主机发送 NTLM 请求,我们可以使用 responder 等工具截获主机用户的 Net-NTLMHash,此 Hash 虽然不能进行哈希传递,但是有了Net-NTLM Hash之后,我们可以对 Net-NTLM Hash进暴力破解、或重放,从而实现内网的横向渗透
NTLM Relay其实严格意义上并不能叫NTLM Relay,而是应该叫 Net-NTLM Relay。它是发生在NTLM认证的第三步,在 Type3 Response消息中存在Net-NTLM Hash,当攻击者获得了Net-NTLM Hash后,可以进行中间人攻击,重放Net-NTLM Hash,这种攻击手法也就是大家所说的NTLM Relay(NTLM 中继)攻击。
全文翻译自微软官方文档英文版 What's new in ASP.NET Core 3.0
3)使用此NTLM支持PowerShell Docker镜像到Linux的PS-Remote,您可以从Linux到Windows进行PS远程到Windows。
大多数渗透测试人员都听说过哈希传递(Pass The Hash)攻击。该方法通过找到与账户相关的密码散列值(通常是 NTLM Hash)来进行攻击。在域环境中,用户登录计算机时使用的大都是域账号,大量计算机在安装时会使用相同的本地管理员账号和密码,因此,如果计算机的本地管理员账号和密码也是相同的,攻击者就能使用哈希传递攻击的方法登录内网中的其他计算机。同时,通过哈希传递攻击攻击者不需要花时间破解哈希密在Windows网络中,散列值就是用来证明身份的(有正确的用户名和密码散列值,就能通过验证),而微软自己的产品和工具显然不会支持这种攻击,于是,攻击者往往会使用第三方工具来完成任务。在Windows Server2012R2及之后版本的操作系统中,默认在内存中不会记录明文密码,因此,攻击者往往会使用工具将散列值传递到其他计算机中,进行权限验证,实现对远程计算机的控制。
2019年6月11日,微软发布6月份安全补丁更新。在该安全补丁更新中,对 CVE-2019-1040 漏洞进行了修复。该漏洞存在于Windwos 大部分版本中,当中间人攻击者能够成功绕过NTLM 消息完整性校验(MIC)时,Windows 存在可能可篡改的漏洞。成功利用此漏洞的攻击者可以获得降级 NTLM 安全功能的能力。要利用此漏洞,攻击者需要篡改NTLM 交换,然后修改NTLM 数据包的标志,而不会使签名无效。结合其他漏洞和机制,在某些场景下,攻击者可以在仅有一个普通账户域账户的情况下接管全域。
这个页面中的相关平台中的内容是不被支持的。因此,Atlassian 支持不能保证能够为你提供任何支持。请注意,这个页面下面提供的信息仅为你提供参考同时也不能保证所有的的配置能正常工作。如果你按照本页面中的内容进行配置,所有的风险自负。
如果我们获取的Hash为NTLM Hash v1,那么我们可以通过直接跑字典来尝试爆破,但是如今大多都只能拿到Hash v2,除非有强大的字典,否则尝试暴力破解是非常错误的选择,此时,我们可以尝试使用NTLM重放攻击
当我们在一台Windows机器上面创建用户的时候,该用户的密码会加密储存在一个SAM(Security Account Manager 安全账号管理器)中,是Windows操作系统管理用户帐户的安全所使用的一种机制,该文件存储路径如图1-1所示。
Pass The Hash 即哈希传递攻击,简称 PTH,该攻击方法通过找到与账户相关的密码散列值 NTLM Hash 来进行攻击的。由于在 Windows 系统 NTLM 认证的 TYPE 3 消息计算 Response 的时候,客户端是使用用户的 NTLM Hash 进行计算的,而不是用户密码进行计算的。因此在模拟用户登录或对访问资源的用户进行身份认证的时候,是不需要用户明文密码的,只需要用户 Hash。攻击者可以利用 NTLM HASH 直接远程登录目标主机或反弹 Shell。
链路本地多播名称解析(LLMNR)是一个基于域名系统(DNS)数据包格式的协议,使得 IPv4 和 IPv6 的主机可以通过此协议对同一本地链路上的主机执行名称解析,例如:如果路由器出现故障,从而网络上的所有 DNS 服务器切断了子网时,则支持 LLMNR 的子网上的客户端可以继续在对等基础上解析名称,直到网络连接还原为止。
在内网渗透的过程中,最重要的就是信息搜集,但是在极端情况下我们找不到能够横或者跨域的机器,那么这时候我们就可以尝试做一个水坑,来尝试获取hash。当然这只是理想情况,在愈发强调对抗的当下,利用水坑钓鱼也变得不是那么简单。
在平时的测试中,经常会碰到处于工作组的计算机,处于工作组的计算机之间是无法建立一个可信的信托机构的,只能是点对点进行信息的传输。
NTLM中继是一种众所周知的技术,主要用于在网络内的服务器上建立某种立足点或用于权限提升,这种攻击在没有为LDAP和SMB协议启用签名的网络中是可行的,此外使用高权限的帐户对服务器和工作站进行身份验证的域管理员可能会给攻击者提供完整域信息泄露的可能性,因为他们的凭据可以通过LSASS或使用Remote Potato技术进行转储
Preempt的研究人员发现了如何在NTLM身份验证上绕过MIC(Message Integrity Code)保护措施并修改NTLM消息流中的任何字段(包括签名)。该种绕过方式允许攻击者将已经协商签名的身份验证尝试中继到另外一台服务器,同时完全删除签名要求。所有不执行签名的服务器都容易受到攻击。 这个漏洞其实就是可以绕过NTLM MIC的防护,也是NTLM_RELAY漏洞。攻击者利用该漏洞可以绕过NTLM中的MIC(Message Integrity Code)。攻击者可以修改已经协商签名的身份验证流量,然后中继到另外一台服务器,同时完全删除签名要求。通过该攻击方式可使攻击者在仅有一个普通域账号的情况下,运程控制域中任意机器(包括域控服务器)。
【声明:本文所述相关技术仅限研究和学习使用,请遵守国家网络安全法律法规,勿用于入侵等非法用途,使用本文相关技术造成的法律问题与本公司无关。】
什么是Telnet? 对于Telnet的认识,不同的人持有不同的观点,可以把Telnet当成一种通信协议,但是对于入侵者而言,Telnet只是一种远程登录的工具。一旦入侵者与远程主机建立了Telnet连接,入侵者便可以使用目标主机上的软、硬件资源,而入侵者的本地机只相当于一个只有键盘和显示器的终端而已。
作者:天融信阿尔法实验室一、漏洞概述2019年6月,Microsoft发布了一条安全更新。该更新针对CVE-2019-1040漏洞进行修复。此次漏洞,攻击者可以通过中间人攻击,绕过NTLM MIC(消息完整性检查)保护,将身份验证流量中继到目标服务器。通过这种攻击使得攻击者在仅有一个普通域账号的情况下可以远程控制 Windows 域内的任何机器,包括域控服
早期SMB协议在网络上传输明文口令。后来出现"LAN Manager Challenge/Response"验证机制,简称LM,它是如此简单以至很容易被破解。微软提出了WindowsNT挑战/响应验证机制,称之为NTLM。现在已经有了更新的NTLMv2以及Kerberos验证体系。Windows加密过的密码口令,我们称之为hash(中文:哈希),Windows的系统密码hash默认情况下一般由两部分组成:第一部分是LM-hash,第二部分是NTLM-hash。
Kerberos域网络中,默认NTLM协议是主要的替代认证协议,几乎伴随着Kerberos协议,NTLM协议的安全性会对域网络产生重要的冲击,所以我们单独成立一个独立的章节介绍与NTLM协议相关的漏洞和攻击手段。
利用burp编码爆破Basic Authorization认证、smb连接的多种方法、windows用户的NTLM值破解方法、evil-winrm的运用、windows主机信息收集工具、msf运行powershell脚本、远程运行powershell脚本、PrintNightmare漏洞提权等多个知识点。
NTLM主要应用于用于Windows NT 和 Windows 2000 Server(或更高版本) 工作组环境
早在2013年9月,蜘蛛实验室( Spider Labs)就发表过一篇题为“SpiderLabs在你内网中获取域管的五大方式”的文章。这篇文章是我继该文的,应该说是非官方的“Part 2”部分。
横向的手法从简单的远程桌面协议(rdp)到漏洞利用,手法不断在改变,要对抗的设备产品也不断地变化,有个技术主管问我,红蓝的快乐在于什么?为什么我钟情在红蓝。我想中快乐就是来自于对抗吧。
启用SMB签名和通信会话签名后,应用服务器和客户端之间的所有流量都有签名验证保护,中间人攻击者因为无法伪造签名而不能与目标主机进行正常的通信。签名密钥SessionKey基于客户端账号的口令NTLM值生成,应用服务器在认证阶段从认证服务器获取;客户端采用和认证服务器相同的算法,基于自身口令的NTLM值生成会话密钥。由于SessionKey不需要交换,因此中间人攻击没有办法获取会话密钥,如果中间人可以获取SessionKey,则可以实现对数据的篡改复用等。
Mimikatz 是一款功能强大的轻量级调试神器,通过它你可以提升进程权限注入进程读取进程内存,当然他最大的亮点就是他可以直接从 lsass.exe 进程中获取当前登录系统用户名的密码, lsass是微软Windows系统的安全机制它主要用于本地安全和登陆策略,通常我们在登陆系统时输入密码之后,密码便会储存在 lsass内存中,经过其 wdigest 和 tspkg 两个模块调用后,对其使用可逆的算法进行加密并存储在内存之中, 而 mimikatz 正是通过对lsass逆算获取到明文密码!也就是说只要你不重启电脑,就可以通过他获取到登陆密码,只限当前登陆系统!
NTLM Relay大家已经不再陌生了,很多时候我们通过NTLM Relay进行攻击时,会受到协议签名(ldap/s、smb等协议签名)的影响从而导致攻击失败,并且随着时间的流逝,我们想要遇到忽略签名的smb等服务也变得越来越困难了,我们有哪些方法来忽略服务端验证签名的影响从而达到我们relay攻击的目的呢?
pass the hash攻击,除去常见的使用本地管理员账户进行hash传递外,还可以使用机器账户进行提权。
windows的认证方式主要有NTLM认证、Kerberos认证两种。同时,Windows Access Token记录着某用户的SID、组ID、Session、及权限等信息,也起到了权限认证的作用。
在实战渗透中,常常存在把windows主机作为跳板以此进行横向移动的情况,其实际原理并不难。本篇来谈windows系统的认证原理,并演示抓取密码相关场景。
在渗透测试中,往往会遇到企业内网环境中使用的一些常用组件,这些组件对内或对外提供了服务与接口,也给渗透测试人员与黑客提供了新的可尝试的攻击面,合理的利用组件服务提供的功能和接口,可以帮助渗透测试人员完成信息收集、环境侦测,甚至通过其漏洞弱点、配置缺陷、功能滥用直接拿下权限,在渗透测试与后渗透阶段达到事半功倍的效果。 Windows Exchange Server,应该是国内外应用都非常广泛的邮件服务器了,本文将围绕Exchange展开,介绍在渗透测试中对Exchange服务器的攻击利用。
本篇文章我们主要介绍AD CS攻击系列中的中继攻击的基本原理和攻击手法进行简单阐述~
NTLM是NT LAN Manager的缩写,这也说明了协议的来源。NTLM 是指 telnet 的一种验证身份方式,即质询/应答身份验证协议
添加完网卡后打开虚拟机会连接到VMnet2网卡(如果没有就手动连一下)。其中Web-Centos为出网机,需要重新获取IP,然后Ping测试一下各主机连通性
哈希传递(pth)攻击是指攻击者可以通过捕获密码的hash值(对应着密码的值),然后简单地将其传递来进行身份验证,以此来横向访问其他网络系统,攻击者无须通过解密hash值来获取明文密码,因为对于每个Session hash值都是固定的,除非密码被修改了(需要刷新缓存才能生效),所以pth可以利用身份验证协议来进行攻击,攻击者通常通过抓取系统的活动内存和其他技术来获取哈希。
IPC共享命名管道的资源,为了让进程间通信而开放的命名管道,可以通过验证用户名和密码获得相应的权限,远程管理计算机和检查计算机的共享资源时使用。
目标公司是隶属于粤港澳类型在香港上市的一家普通能源公司,这里初期的信息收集适用天眼查/小蓝本企业查,我这里使用的是小蓝本企业查(免费)。
Kerberos是一种由MIT(麻省理工学院)提出的一种网络身份验证协议,可通过密钥系统为客户端/服务端提供认证服务。它能够为网络中通信的双方提供严格的身份验证服务,确保通信双方身份的真实性和安全性。该认证过程的实现不依赖于主机操作系统的认证,无需基于主机地址的信任,不要求网络上所有主机的物理安全。
lsarelayx 是系统范围的 NTLM 中继工具,旨在将传入的基于 NTLM 的身份验证中继到运行它的主机。lsarelayx 将中继任何传入的身份验证请求,其中包括 SMB。由于 lsarelayx 挂钩到现有的应用程序身份验证流,该工具还将在中继完成后尝试为原始身份验证请求提供服务。这将防止目标应用程序/协议显示错误,并为最终用户针对 lsarelayx 主机进行身份验证正常工作。
NTLM(New Technology LAN Manager)身份验证协议是微软用于Windows身份验证的主要协议之一。早期SMB协议以明文口令的形式在网络上传输,因此产生了安全性问题。后来出现了LM(LAN Manager)身份验证协议,它是如此的简单以至于很容易被破解。后来微软提出了NTLM身份验证协议,以及更新的NTLM V2版本。NTLM协议既可以为工作组中的机器提供身份验证,也可以用于域环境身份验证。NTLM协议可以为SMB、HTTP、LDAP、SMTP等上层微软应用提供身份认证。
lsarelayx是一个系统范围的NTLM中继工具,主要用于中继目标主机中基于NTLM的认证传入连接。lsarelayx将会中继任何包含了SMB的传入认证请求。由于lsarelayx可以挂钩现有的应用程序身份验证流,因此该工具还将尝试在中继完成后为原始身份验证请求提供服务。这种模式可以防止目标应用程序/协议显示错误,并使终端用户通过lsarelayx主机进行身份验证时能够正常工作。
本文借鉴安全界各位大佬所写的Windows认证入门科普(它们的站点我附在来源)对其中的知识点做了一个整理总结,同时复现里面的算法方便以后自己理解以及在其他域渗透/内网渗透方式中提供基础知识,这篇文章很适合小白入门Windows认证协议简单明了;
在一个大型单位中,可能有成百上千台计算机,他们相互连接组成局域网,如果不进行分组,那么网络关系就会杂乱不堪,此时工作组的出现,成功解决了这个问题。它将局域网中不同的计算机按功能分别列入不同的工作组,使得网络更有序。
这是关于域中深度隐蔽后门系列的第二篇,第一篇为利用文件目录ACL深度隐藏后门。 本篇主要介绍利用域中主机账号的口令散列值制作白银票据,结合文章《利用域委派获取域管理权限》中的委派方式,在域中埋伏隐蔽后门,以长期隐蔽有效地高权限控制域。 前提条件:已经控制了域,并获取了域中主机账号的口令散列值。 0x01 白银票据基本原理 网络上有众多关于kerberos协议、黄金票据、白银票据的资料,本篇通过下图言简意赅地介绍白银票据的基本原理。 Kerberos协议
然而,有一种可以绕过这个问题的方法,就是使用 NTLM(NT LAN Manager)协议进行身份验证。下面,我将通过一个 Python 示例,展示如何使用 NTLM 协议安全地进行远程管理。
在上节《内网横向移动:获取域内单机密码与Hash》中,我们讲了如何在内网渗透中抓取主机的的密码和哈希值。获取了Hash,我们可以对其进行破解,破解不出来的,我们就可以利用他们通过PTH、PTT等攻击手法继续对内网横向渗透,即下面要讲的。
在看 Net-NTLM Relay Attack 之前,需了解一下攻击原理是怎样实现的。
在本地登陆的情况下,操作系统会使用用户输入的密码作为凭据去与系统中的密码进行校验,如果成功的话表明验证通过。操作系统的密码存储在C盘的目录下:
领取专属 10元无门槛券
手把手带您无忧上云