Omni
Úvod a kontext
U Omni není hlavní hodnota v jednom efektním kroku, ale ve vazbě mezi veřejně dostupné služby a jejich skutečnou roli v řetězci.
Článek dává smysl číst hlavně jako rozbor rozhodování: proč právě tyto stopy vedou k stabilní uživatelský přístup a proč po získání shellu dává smysl řešit lokální enumeraci po získání shellu.
Počáteční průzkum
Vyhledání otevřených portů
Nejprve mapuji veřejně dostupné služby, protože právě z otevřených portů odvodím, které protokoly a aplikace má smysl zkoumat detailněji.
IP=10.10.10.204;ports=$(nmap -p- --min-rate=1000 -T3 -Pn $IP | grep ^[0-9] | cut -d "/" -f 1 | tr "\n" "," | sed s/,$//);nmap -p $ports -A -sC -sV -v -Pn $IP
Získání přístupu
Získání user flagu
User flag zde slouží hlavně jako potvrzení, že už mám běžný uživatelský kontext a mohu pokračovat v lokální analýze systému.
Následující úsek zachycuje přechod k uživatelskému přístupu a jeho ověření přes user.txt.
$credential = Import-CliXml -Path user.txt
$credential.GetNetworkCredential().Password
7cfd50f6bc34db3204898f1505ad9d70
## Eskalace oprávnění
### Získání root flagu
Tento krok ukazuje, jak se nalezená slabina nebo chyba v delegaci oprávnění mění v privilegovaný přístup.
Následující úsek zachycuje i postup, kterým se potvrzuje privilegovaný přístup a načtení `root.txt`.
```text
$credential = Import-CliXml -Path root.txt
$credential.GetNetworkCredential().Password
5dbdce5569e2c4708617c0ce6e9bf11d
```
Shrnutí klíčových poznatků
- První skutečně užitečný závěr plynul z toho, jak do sebe zapadly veřejně dostupné služby a jejich skutečnou roli v řetězci.
- User fáze se opírala o stabilní uživatelský přístup, takže přístup byl reprodukovatelný a ne jen jednorázový.
- Finální kontrolu nad systémem otevřela až mechanika typu lokální enumerace po získání shellu.
Co si odnést do praxe
- Tento řetězec začal u veřejně dostupné služby a jejich skutečnou roli v řetězci; právě tam má obrana největší návratnost. První vstup do systému často nevzniká na hlavní doméně, ale na vedlejší službě, pomocném endpointu nebo chybně publikovaném souboru; i tyto plochy je potřeba aktivně inventarizovat.
- Foothold navázal na stabilní uživatelský přístup, takže oddělení účtů a tajemství není jen teorie. Jakmile se v prostředí objeví použitelný klíč, heslo nebo token, je potřeba předpokládat okamžitý pivot na stabilní shell; obrana proto stojí na segmentaci a oddělení přístupů mezi službami.
- Poslední krok stojí na lokální enumerace po získání shellu, a proto je nutné auditovat i lokální delegaci práv. Po získání shellu je rozhodující systematická lokální enumerace; i bez další CVE často rozhodne kombinace špatných oprávnění, reuse tajemství a pomocných skriptů.