Skip to content

Commit 435eb37

Browse files
Update prints
1 parent 607afee commit 435eb37

1 file changed

Lines changed: 23 additions & 21 deletions

File tree

_posts/2025-11-15-tunnel-writeup.md

Lines changed: 23 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -17,13 +17,12 @@ comments: true
1717

1818
### 1.1 Scan de portas
1919

20-
![Nmap Port Scan](tunnel/portscanNmap.png)
20+
<img width="800" alt="image" src="https://github.com/user-attachments/assets/47dffbac-2eea-4c65-b6b7-f51d8582842b" />
2121

2222
```bash
2323
nmap -sV 172.16.3.113
2424
```
25-
26-
![Port Scan Results](tunnel/portscan.png)
25+
<img width="800" alt="image" src="https://github.com/user-attachments/assets/3f824288-3cf3-486d-b3c8-f9a9ce516e10" />
2726

2827
```bash
2928
rustscan -a 172.16.3.113
@@ -42,7 +41,7 @@ ffuf -c -u http://172.16.3.113:8000/FUZZ \
4241
-w ~/SecLists/Discovery/Web-Content/raft-large-words.txt -t 150
4342
```
4443

45-
![Initial Fuzzing](tunnel/ffuf-1.png)
44+
<img width="800" alt="image" src="https://github.com/user-attachments/assets/bcbd33eb-7cc2-4fab-8487-f15b40896f62" />
4645

4746
**Descobertas importantes:**
4847

@@ -51,7 +50,7 @@ ffuf -c -u http://172.16.3.113:8000/FUZZ \
5150
/actuator → 403 Forbidden
5251
```
5352

54-
![Error Page](tunnel/error.png)
53+
<img width="800" alt="image" src="https://github.com/user-attachments/assets/c0539110-3f00-4079-82d6-18a82da77a50" />
5554

5655
**Análise técnica:**
5756
A presença de "*Whitelabel Error Page*" e o diretório "*actuator*" indica **Spring Boot Framework**. Esta identificação nos permite usar wordlists específicas para enumerar endpoints do Spring Boot Actuator.
@@ -60,7 +59,7 @@ A presença de "*Whitelabel Error Page*" e o diretório "*actuator*" indica **Sp
6059

6160
### 2.1 Wordlist especializada
6261

63-
![Spring Boot Fuzzing](tunnel/ffuf-2-springBoot.png)
62+
<img width="800" alt="image" src="https://github.com/user-attachments/assets/a953fe73-eb8f-4604-88cd-0c11afac6b24" />
6463

6564
```bash
6665
ffuf -c -u http://172.16.3.113:8000/FUZZ \
@@ -127,7 +126,7 @@ cliente → nginx (HTTP/1.1 proxy) → backend (Spring Boot + h2c support)
127126
- Nginx não consegue mais inspecionar/filtrar requisições
128127
- Todas as regras de proxy_pass são ignoradas
129128

130-
![H2C Smuggling Diagram](tunnel/H2C-Smuggling-White.jpg)
129+
<img width="800" alt="image" src="https://github.com/user-attachments/assets/1ab35a7c-a8c2-4924-a00b-7fc576e06535" />
131130

132131
### 4.4 Implicações de segurança do bypass
133132

@@ -168,7 +167,7 @@ source ~/.bashrc
168167

169168
### 5.2 Testando vulnerabilidade
170169

171-
![H2C Test](tunnel/h2cTest.png)
170+
<img width="800" alt="image" src="https://github.com/user-attachments/assets/5cab71a2-5ca7-4906-8373-effa398878f3" />
172171

173172
```bash
174173
h2csmuggler -x http://172.16.3.113:8000 --test
@@ -197,13 +196,13 @@ h2csmuggler -x http://172.16.3.113:8000 http://backend/actuator
197196
h2csmuggler -x http://172.16.3.113:8000 http://backend/actuator/env
198197
```
199198

200-
![H2C Actuator Env](tunnel/h2csm-act-env.png)
199+
<img width="800" alt="image" src="https://github.com/user-attachments/assets/dd25fd9f-4122-4d15-9d60-81496f98a51a" />
201200

202201
Se formos ao final do arquivo poderemos identificar o JSON que esperamos do /env
203202

204203
## 6. Informações sensíveis encontradas no /actuator/env
205204

206-
![H2C Actuator JSON](tunnel/h2csm-act-env-JSON.png)
205+
<img width="800" alt="image" src="https://github.com/user-attachments/assets/aba4d6c3-4061-4527-8219-5b175216c2c8" />
207206

208207
Ao analisar o JSON retornado do `/env` (utilizando um formatter para melhor legibilidade), identificamos:
209208

@@ -213,13 +212,13 @@ Ao analisar o JSON retornado do `/env` (utilizando um formatter para melhor legi
213212
hackingclub{c71b3ebb3e25f3c8304d9010a1c3765742309a3f}
214213
```
215214

216-
![JSON Flag 1](tunnel/json-flag1.png)
215+
<img width="800" alt="image" src="https://github.com/user-attachments/assets/c05b08ba-cc27-4adc-9fb2-f205fe80af69" />
217216

218217
### 6.1 Endpoints importantes descobertos
219218

220219
Juntando o que encontramos anteriormente com esse json podemos identificar/mapear importantes pontos para exploração
221220

222-
![Spring Boot Endpoints](tunnel/ffuf-2-springBoot-HeapDump-Env.png)
221+
<img width="800" height="699" alt="image" src="https://github.com/user-attachments/assets/94b837cd-1b99-446c-bc3b-e3995206f6b8" />
223222

224223
**Endpoints mapeados:**
225224

@@ -235,7 +234,7 @@ Juntando o que encontramos anteriormente com esse json podemos identificar/mapea
235234
/admin/internal-web-socket-endpoint
236235
```
237236

238-
![JSON Debug Path](tunnel/json_beautifier_debug_path.png)
237+
<img width="800" alt="image" src="https://github.com/user-attachments/assets/6d4ff368-01bd-44a9-a930-c6800edf0530" />
239238

240239
### 6.2 Chrome DevTools Protocol (CDP) - Contexto técnico
241240

@@ -277,7 +276,7 @@ GET http://172.16.3.113:8000/admin/internal-web-socket-endpoint/
277276
WebSocket request was expected
278277
```
279278

280-
![WebSocket Expected](tunnel/websocketExpectedAdmin.png)
279+
<img width="800" alt="image" src="https://github.com/user-attachments/assets/804f407a-ad91-45d9-a59d-ebfaf4d86ed5" />
281280

282281
**Análise:**
283282

@@ -286,11 +285,11 @@ WebSocket request was expected
286285

287286
### 7.2 Tentando conexão WebSocket
288287

289-
![Postman 1](tunnel/postamn1.png)
288+
<img width="800" alt="image" src="https://github.com/user-attachments/assets/814ab118-bb9c-494e-9ea3-37beadae9520" />
290289

291-
Utilizando o Postman para testar WebSocket:
290+
Utilizando o Postman para testar, vamos criar não apenas para WebSocket como também para HTTP :
292291

293-
![Postman 2](tunnel/postman2.png)
292+
<img width="800" alt="image" src="https://github.com/user-attachments/assets/ab46653e-c951-49eb-af92-f829429a53a3" />
294293

295294
**Testando WebSocket direto:**
296295

@@ -304,7 +303,7 @@ ws://172.16.3.113:8000/admin/internal-web-socket-endpoint/
304303
Unexpected server response: 400
305304
```
306305

307-
![Postman WebSocket 1](tunnel/postman-ws1.png)
306+
<img width="800" alt="image" src="https://github.com/user-attachments/assets/d1646138-3ed5-4d08-812d-a6fa3a577c14" />
308307

309308
**Conclusão:** Não é o WebSocket principal — falta descobrir o caminho correto.
310309

@@ -349,7 +348,7 @@ A URL do WebSocket debug usa a raiz + ID. Como estamos acessando via `/admin/int
349348
ws://172.16.3.113:8000/admin/internal-web-socket-endpoint/7efa5220-45c7-44c2-b367-d9068de778bd
350349
```
351350

352-
![Postman JSON List](tunnel/postman-http-json-list.png)
351+
<img width="800" alt="image" src="https://github.com/user-attachments/assets/d47d4b67-07eb-4888-acef-3f69381a0b8a" />
353352

354353
**✅ Conexão WebSocket aceita com sucesso no Postman.**
355354

@@ -363,7 +362,7 @@ ws://172.16.3.113:8000/admin/internal-web-socket-endpoint/7efa5220-45c7-44c2-b36
363362
{}
364363
```
365364

366-
![Postman WebSocket 3](tunnel/postman-ws3.png)
365+
<img width="800" alt="image" src="https://github.com/user-attachments/assets/cd232c50-857d-4829-98e9-13b4f6232048" />
367366

368367
**Erros obtidos:**
369368

@@ -946,7 +945,8 @@ Este cenário demonstra uma **cadeia crítica** onde múltiplas vulnerabilidades
946945

947946
---
948947

949-
![Tunnel Machine](tunnel/tunnel_machine_176.png)
948+
<img width="800" alt="image" src="https://github.com/user-attachments/assets/31368014-08f4-4943-a1d6-521341f4c673" />
949+
950950

951951
**Flags capturadas:**
952952

@@ -960,3 +960,5 @@ Este cenário demonstra uma **cadeia crítica** onde múltiplas vulnerabilidades
960960
- Chrome DevTools Protocol RCE
961961
- Docker privilege escalation
962962
- Host filesystem mounting
963+
964+
<img width="800" alt="image" src="https://github.com/user-attachments/assets/f0667214-3a4e-4ad9-b792-0d97287fb8ca" />

0 commit comments

Comments
 (0)