【Windows】分析一个爆破Windows本地登陆密码的小程序

举报
st小龙 发表于 2018/05/16 15:35:21 2018/05/16
【摘要】 背景土司论坛上有人发了一篇帖子,楼主拿到某个韩国服务器的webshell之后,发现这台服务器已经被人拿下了。而且前辈在这台服务器上创建了一个用户 xiao,此拼音属于中文特征,明显是中国某黑阔留下的作品。于是乎作者就想试试看能不能猜到 这位账号 xiao的登陆密码。这样就可以省的自己再去找路子渗透。如果能够猜到密码,就可以直接控制这台韩国服务器了。https://www.t00ls.net/...

背景

土司论坛上有人发了一篇帖子,楼主拿到某个韩国服务器的webshell之后,发现这台服务器已经被人拿下了。而且前辈在这台服务器上创建了一个用户 xiao,此拼音属于中文特征,明显是中国某黑阔留下的作品。
于是乎作者就想试试看能不能猜到 这位账号 xiao的登陆密码。这样就可以省的自己再去找路子渗透。如果能够猜到密码,就可以直接控制这台韩国服务器了。
https://www.t00ls.net/viewthread.php?tid=37559&extra=&page=1

楼主还贴出了自己使用的用来爆破windows登陆密码的小程序

5afbcf5dc37b7.png

最终楼主拿到了密码 xiaogang520
并且在论坛上放出了工具。号称 3分钟可以试探 40万个密码
很多人在帖子下面留言,也有人像我一样,想知道这个工具原理是啥,是如何做到能够短时间内大量口令的离线破解的。

用ida来静态分析下,发现根本没有加壳,非常简单

5afbcfb9803b2.png

非常简单,就是对参数的一些判断和解析

5.png

while循环读取 file中的内容。
sub_401020方法是核心方法
跟入此方法

8.png

发现使用了API函数 LogonUserA

9.png

此函数是由 ADVAPI32.dll 导出。

MSDN的解释

image.png


LogonUser 方法只用于 本地计算机用户尝试本地登陆,不能用于登陆远程计算机。
登陆成功后,会返回这个用户的token,拥有这个token值,可以用来模拟这个用户的所有操作,也可以用来创建可以运行在登陆用户上下文的进程。

这种爆破windows本地账户密码的手段非常简单,之所以速度非常快,是因为不需要通过网络来验证,这是在调用本地API接口来实现密码爆破,在拥有webshell,且其他突破思路受阻(法国奇异果失效,无法抓取hash)时,可以试一下这种方法。


知道了工具爆破的原理,自己重新写了一个工具,加上了多线程爆破,速度可以提升的更多,方便以后遇到类似的渗透测试场景时所使用。


不过这个软件也存在两处缺陷,在于:
1、拥有强大的口令字典;
2、每次尝试本地登陆认证时,如果服务器之前就开启了系统日志审计的话, 会留下大量的登陆痕迹

image.png

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。