0x01基础信息
| 具体信息 | 详情 |
|---|---|
| ATT&CK编号 | T1003-001 |
| 所属战术阶段 | 凭据访问 |
| 操作系统 | windows 7 旗舰版 SP1 |
| 创建时间 | 2022年11月17日 |
| 监测平台 | 火绒安全、火绒剑、sysmon |
0x02技术原理
攻击者可能会尝试访问存储在本地安全机构子系统服务 (LSASS) 进程内存中的凭证材料。用户登录后,系统生成各种凭证材料,存储在LSASS进程内存中。这些凭证材料可以由管理用户或 SYSTEM 获取,并用于使用使用备用身份验证材料 进行横向移动 。
与内存技术一样,LSASS 进程内存可以从目标主机转储并在本地系统上进行分析。
例如,在目标主机上使用 procdump:
-
procdump -ma lsass.exe lsass_dump
在本地,可以使用以下方式运行 mimikatz:
-
sekurlsa::Minidump lsassdump.dmp -
sekurlsa::logonPasswords
也可以使用内置的 Windows 工具,例如 comsvcs.dll:
-
rundll32.exe C:\Windows\System32\comsvcs.dll, MiniDump lsass-PID lsass.dmp full
Windows 安全支持提供程序 (SSP) DLL 在系统启动时加载到 LSSAS 进程中。一旦加载到 LSA 中,SSP DLL 就可以访问存储在 Windows 中的加密和明文密码,例如任何登录用户的域密码或智能卡 PIN。SSP 配置存储在两个注册表项中:
HKLM\SYSTEM\CurrentControlSet\Control\Lsa\Security Packages和
HKLM\SYSTEM\CurrentControlSet\Control\Lsa\OSConfig\Security Packages。攻击者可能会修改这些注册表项以添加新的 SSP,这些 SSP 将在下次系统启动时或调用 AddSecurityPackage Windows API 函数时加载。
0x03 复现环境
| 工具列表 | 相关链接 |
|---|---|
| sysmon日志记录工具 | https://learn.microsoft.com/en-us/sysinternals/downloads/sysmon |
| sysmon默认规则文件 | https://github.com/SwiftOnSecurity/sysmon-config/blob/master/sysmonconfig-export.xml |
| sysmon安装命令 | sysmon64.exe -accepteula -i sysmonconfig-export.xml |
| 攻击条件 | 已经获取管理员权限的shell |
0x04 复现过程
lsass.exe(Local Security Authority Subsystem Service )进程空间中,存有着机器的域、本地用户名和密码等重要信息。如果获取本地高权限,用户便可以访问LSASS进程内存,从而可以导出内部数据(password),用于横向移动和权限提升。
lsass.exe 的内存经常被转储用于离线凭据盗窃攻击。这可以通过 Sysinternals ProcDump 来实现。
成功执行后,您应该会看到创建了以下文件 c:\windows\temp\lsass_dump.dmp。
| 命令 | 描述 | 默认值 |
|---|---|---|
| output_file | 结果转储存放的路径 | C:\Windows\Temp\lsass_dump.dmp |
| procdump.exe | Procdump 可执行文件的路径 | Path To swordheartFolder\procdump.exe |
攻击命令
procdump.exe -accepteula -ma lsass.exe lsass_dump.dmp

转储了lsass进程,把内存dump出来的dmp文件可以通过本地mimikatz进行解密
Sekurlsa::minidump lsass_dump.dmp
Sekurlsa::logonPasswords full

lsass.exe 的内存经常被转储用于离线凭据盗窃攻击。这可以通过内置的 dll 来实现。
成功执行后,您应该会看到创建了以下文件 $env:TEMP\lsass-comsvcs.dmp。
攻击命令【使用powershell运行】: rundll32.exe comsvcs.dll, MiniDump lsass-PID lsass-comsvcs.dmp full
C:\Windows\System32\rundll32.exe C:\windows\System32\comsvcs.dll, MiniDump (Get-Process lsass).id $env:TEMP\lsass-comsvcs.dmp full
获取lsass.exe的pid为540

MiniDump需要首字母大写,comsvcs.dll可以单独从system中取出来,因为存在杀软对敏感路径的访问进行拦截的行为,单独取出来火绒不会进行拦截

可以从当前目录直接转到powershell界面,在攻击时可以把comsvcs.dll放置到目标主机然后dump内存,与前面一样转储文件取回本地进行解密

lsass.exe 的内存经常被转储用于离线凭据盗窃攻击。这可以通过使用直接系统调用和 API 脱钩来避免检测来实现。
成功执行后,您应该会看到创建了以下文件 C:\windows\temp\dumpert.dmp。
dumpert:利用直接系统调用和API脱钩技术来实现AV/EDR软件的逃避
【直接系统调用】
为了理解系统调用到底是什么,我们首先必须深入了解操作系统体系结构,特别是 W

本文介绍通过不同技术手段转储LSASS进程内存的方法,包括使用ProcDump、comsvcs.dll、Dumpert工具及NanoDump等,并探讨了针对这些技术的安全检测与防御策略。

798

被折叠的 条评论
为什么被折叠?



