freeBuf
主站

分类

云安全 AI安全 开发安全 终端安全 数据安全 Web安全 基础安全 企业安全 关基安全 移动安全 系统安全 其他安全

特色

热点 工具 漏洞 人物志 活动 安全招聘 攻防演练 政策法规

官方公众号企业安全新浪微博

FreeBuf.COM网络安全行业门户,每日发布专业的安全资讯、技术剖析。

FreeBuf+小程序

FreeBuf+小程序

后渗透——Window下多种密码提取的小技巧
2025-01-11 20:46:25
所属地 湖北省

在后渗透阶段,想要长久控制一台或多台主机,获取主机密码是非常关键的一个环节,本次为各位提供了目前非常有效的几种密码提取方法。

无问社区超链接

需要注意,windows server 2008及以前的版本在系统中存储的是明文密码,而在之后的版本默认导出的密码均为NTLM hash,本文会提供此类问题的解决方法。

方法一:procdump转储lsass dmp获取系统密码

使用procdump获取密码副本,采用此方式可以解决mimikatz无法使用的问题,导出的dmp文件可在其他主机进行还原密码。

1736352481_677ea2e1b0c60383ceb20.png!small?1736352482536

在导出dmp文件后通过Mimikatz对密码进行解密。

1736352487_677ea2e7b437634f4d638.png!small?1736352489662

方法二:通过Wdigest获取Windows密码

Wdigest是lsass进程的一个SSP程序,用于LDAP认证和WEB身份认证,他会将用户的密码信息以加密的形式存储在内存中。而我们常用Mimikatz的logonpasswords命令也是依托于它运行的。

在这里可以看到使用logonpasswords无法获取系统密码,因为这个方法是在windows server 2012上运行的,在该版本的windows中默认是无法获取到明文密码的。

1736352491_677ea2ebf0d347925a9e1.png!small?1736352492841

解决这个问题的方法很简单,通过将注册表


HKLM\SYSTEM\CurrentControlSet\Control\SecurityProviders\WDigest下的UseLogonCredential

的值修改为1即可,如果没有这一项可以自己添加(下面第一张图是没有这个选项的)。

操作命令:


reg add HKLM\SYSTEM\CurrentControlSet\Control\SecurityProviders\WDigest /v UseLogonCredential /t REG_DWORD /d 1 /f

1736352496_677ea2f0ee0cded9ef256.png!small?1736352497817

1736352505_677ea2f9f0df211e0efe9.png!small?1736352506851

剩下的就是需要让用户再次输入密码登录(锁屏、故意使服务挂掉),然后再次运行logonpasswords命令便可看到内存中的明文密码。

1736352509_677ea2fd2ee202235a754.png!small?1736352509918

这种方法同样适用于导出dmp文件的场景,同样都是需要在修改注册表后让用户再次登录。

1736352512_677ea3009019db9d67c9d.png!small?1736352514382

1736352515_677ea303dad250291f037.png!small?1736352516762

方法三:使用comsvcs.dll导出系统密码

这种方法与方法一的原理一样,通过转储lsass进程的dmp文件来解密获取密码。只不过这里不需要依托于procdump,而是直接依靠系统自带的组件。

首先需要获取lsass.exe的进程号。

1736352523_677ea30b4696ed01924bb.png!small?1736352523860

之后通过procdump的minidump函数来转储文件。

1736352539_677ea31b19b1367bdd24a.png!small?1736352539996

需要注意这里的命令需要在powershell中执行,因为转储文件需要有SeDebugPrivilege权限,而cmd下默认是没有开启的。

1736352543_677ea31f47b3e6a0dc898.png!small?1736352544348

方法四:注册表导出SAM文件

通过注册表导出的方式只能获取到hash,无法获取到明文,命令比较简单可参考下图。

1736352546_677ea3229bb6d83c4f6c4.png!small?1736352547366

1736352550_677ea3266c4a3a030bb97.png!small?1736352551231

方法五:恶意SSP记录用户登录密码

这属于被动的获取密码方法,需要让用户登录。原理是通过修改lsass进程的SSP加载程序来执行恶意操作。这里所用到恶意程序就是mimikz中的mimilib.dll在使用时候请根据操作系统情况选择不同位数的mimilib.dll。

将mimilib.dll放在C:/windows/system32/目录下

1736352553_677ea329eadcc82a91ee8.png!small?1736352555292

修改注册表HKLM\SYSTEM\CurrentControlSet\Control\lsa中Security Packages项的值如下图

1736352557_677ea32d0a252934c3bf7.png!small?1736352564572

用户再次登以后在C:/windows/system32/目录下会生成kiwissp.log文件,里面会记录用户的密码信息。

1736352561_677ea33115fb643397c3a.png!small?1736352564572


# 系统安全 # 内网渗透
本文为 独立观点,未经授权禁止转载。
如需授权、对文章有疑问或需删除稿件,请联系 FreeBuf 客服小蜜蜂(微信:freebee1024)
被以下专辑收录,发现更多精彩内容
+ 收入我的专辑
+ 加入我的收藏
相关推荐
  • 0 文章数
  • 0 关注者
文章目录