- tactic: TA0001 (Initial Access) technique: T1190 (Exploit Public-Facing Application) procedure: “IDOR via förutsägbar ID-sekvens”
**Riskbedömning:**
`CVSS 8.6` – Som att ha hänglås på grinden men glömma låsa ytterdörren. 😱
---
### 🕵️♂️ Så hittar du IDOR-sårbarheter
1. **Steg 1:** Fånga trafik med Burp Proxy
2. **Steg 2:** Testa med curl:
```bash
curl -H "Authorization: Bearer [TOKEN]" https://target.com/api/v1/user/1338/profile
- Steg 3: Automatisera med Burp Intruder (testa ID:n 1000-9999)
“Men vi har referer-kontroll!” 😏 Bypassa med:
GET /api/v1/user/1339/profile
X-Original-URL: /legit-sida # 🎩 Trollkonst!
💥 Del 2: Path Traversal – Din ZIP-fil är en trojansk häst #
🧩 MITRE ATT&CK-mappning #
- Taktik: TA0001 (Initial Access)
- Teknik: T1190 (Exploit Public-Facing App) → T1059 (RCE)
“En ZIP-fil med filnamnet ‘../../etc/passwd’ är som en brevduva med sprängmedel.” 💣
🔥 Sårbarhetsanalys: Från filskrivning till RCE #
Kodkatastrof:
// Osäker kod utan sanering
var fileName = TarReaderEntry.getFileName(); // "malicious/../../etc/passwd"
File.Create(fileName); // 💥
Upptäcktsprocess med CodeQL:
codeql database analyze --format=sarif-latest -q ./custom-zipslip.ql
Anpassad Data Flow-regel:
override predicate isAdditionalStep(DataFlow::Node src, DataFlow::Node sink) {
exists(MethodAccess ma | ma.getMethod().getName() = "name" | ...)
}
🛠️ Verktygskonfiguration – Din säkerhetsverktygslåda #
burp_suite:
match_replace_rules:
- type: "Request Header"
replace: "Cookie: session=INJECTED_SESSION" # 🤖 Automatisk sessionsrotation
codeql:
custom_rules: "Anpassade regler för ZIP-bibliotek"
💡 Rekommendationer – Gör koden hackarresistent #
- Sanera som om det vore kirurgiska instrument:
var safePath = Path.GetFullPath(fileName).StartsWith(rootDir); // ✅
- Mästra CodeQL-dataflöden – det är som röntgenblick för kod
- Testa med “riktiga” payloads:
%2e%2e%2f
istället för../
🎯 Slutord: Säkerhet är ett evigt kapplopp #
“Att strunta i IDOR och Path Traversal är som att lämna bilnycklarna i tändningen – någon kommer köra iväg med dem.” 🚗💨
Utmaning till dig:
- Granska dina API:er – använder ni gissningsbara ID:n?
- Testa ZIP-uppladdning med
../exploit.php
– vad händer?
👨💻 Vill du lära dig mer? Boka min workshop om CodeQL och säker dataflödesanalys!
“Det perfekta brottet existerar inte – men det gör den perfekta säkerheten heller inte. Det handlar om att göra det tillräckligt jobbigt.” 🔐💪
Vad gör DU idag för att skydda din kod? 💬⬇️