前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >我是如何获取全域用户明文密码的?

我是如何获取全域用户明文密码的?

作者头像
FB客服
发布2018-02-23 17:13:18
2.1K1
发布2018-02-23 17:13:18
举报
文章被收录于专栏:FreeBuf

简介

在组策略之外,Windows 允许你自定义密码策略,滥用这个机制可以实现一些恶意行为。今天为大家科普下

当我们按下 CTRL + ALT + DEL,修改用户密码时,在 Windows 服务器端,会发生什么呢?

首先,Windows 服务器(域控)会检查注册表,找到 Password Filter,也就是 LSA Notification Package。然后挨个调用DLL,检查密码是否符合策略,

如果不符合策略,就提示密码不够健壮,

在默认情况下,域上的服务器包含两个DLL,其中 seccli 负责实现密码安全策略,也就我们常用的GPO了

我们今天的主题,就是如何滥用这个机制,实现一个密码策略插件,以记录所有域用户的密码

一家上市公司,为了符合SOX 404审计要求,密码每三个月就要强制修改一次,刚好可以触发这个机制

查了下官方文档,一个密码插件需要导出三个函数,

其中 PasswordFilter 负责检查密码是否合规;PasswordChangeNotify 是在工作站上执行,负责告知工作站用户密码变更。

最终的源代码和64位的DLL可以点击阅读原文下载(使用 build.cmd 编译)

安装插件

我们登陆域控,将编译好的 SecureFilter.dll 复制到 %system32% 目录,

然后打开注册表,找到HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa\Notification Package

添加SecureFilter 字样

重启 DC 服务器后生效

实战演示

我们登陆一台工作站,修改密码,

回到域控,发现日志已经写入了

写在最后

经过测试,无论你用何种方式修改密码,OWA 还是命令行,效果都是一样的;在未加域的服务器上效果也是一样

如果想要立即获取某个用户的密码,在域控上轻轻一勾即可 “User must change password at next logon”,如图所示:

参考资料

  1. https://www.slideshare.net/nFrontSecurity/how-do-password-filters-work
  2. https://technet.microsoft.com/en-us/library/cc963221.aspx
  3. https://msdn.microsoft.com/en-us/library/windows/desktop/ms721766(v=vs.85).aspx.aspx)
本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2017-03-21,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 FreeBuf 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 简介
  • 安装插件
  • 实战演示
  • 写在最后
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档