9.6 Zkouškové okruhy
Tato sekce obsahuje vypracované odpovědi na zkouškové otázky týkající se tématu bezpečnosti operačních systémů (lekce 09 dle ExamTopic.md).
Otázka 24: SMB: co to je a jak ho otestovat?
Server Message Block (SMB) je síťový protokol vyvinutý převážně pro sdílení souborů, tiskáren a dalších komunikačních abstrakcí ve Windows sítích. Zpravidla využívá port 445 (nebo starší 139).
Jak testovat SMB:
Jak testovat SMB:
- Enumerace: Zjištění informací o verzích protokolu, sdílených složkách a uživatelích. Běžně se používají nástroje jako
Nmap(skripty z rodinysmb-enum-*), nebonetexec/crackmapexec(nxc smb IP_adresa). Využít lze i nástrojenum4linux. - Anonymní přístup (Null session): Kontrola, zda systém umožňuje výpis sdílených adresářů (shares) či uživatelů bez zadání hesla. Často se testuje nástrojem
smbclient -L //IP_adresa/ -U "". - Brute-forcing: SMB patří k častým cílům slovníkových útoků k nalezení platného hesla s užitím
hydranebonxc. - Zranitelnosti a Exploity: Náchylnost na známé exploity z rodiny EternalBlue (MS17-010) nebo novější zranitelnosti jako SMBGhost. Můžeme odhalit Nmapem pomocí
--script smb-vuln-*. Metasploit nabízí přímo exploit moduly.
Otázka 25: Typická eskalace privilegií na Linuxu (Typical Linux privilege escalation)
Cílem je získání práv uživatele
root. K dosažení eskalace se útočník zaměřuje na následující postupy (typicky se začíná kompletní enumerací systému nástrojem jako LinPEAS):- Kernel Exploity: Spuštění kódu využívajícího zranitelnost v jádře operačního systému, pokud chybí aktualizace.
- Zneužití SUID: Vyhledání programů s nastaveným SUID bitem. Pokud zranitelný program může vykonat jiný příkaz nebo zapsat do chráněné oblasti a vlastní jej root, útočník dokáže práva eskalovat (k tomu nápomáhá projekt GTFOBins).
- Chybné nastavení Sudo: Nalezení příkazů, které smí neprivilegovaný uživatel provést s rootovskými právy (přes
sudo -l). Následně využití parametru, interaktivní funkce nebo únikové (escape) cesty programu k získání root shellu. - Hesla v historii/souborech: Lidé často nechávají hesla v
.bash_historynebo na čitelných místech v nešifrované podobě, případně nechají nechráněný soukromý SSH klíč k root účtu. - Zastaralý/zranitelný software běžící jako root: Pokud webový server nebo jiná aplikace běží jako root a zneužijeme zranitelnost do získání RCE.
- Špatně nakonfigurované úlohy Cron (Cronjobs): Pravidelně spouštěné skripty vlastníkem root, k jejichž modifikaci má přístup běžný uživatel.
Otázka 26: Typická eskalace privilegií na Windows (Typical Windows privilege escalation)
Podobně jako na Linuxu se útočník snaží stát administrátorem nebo uživatelem se systémovými oprávněními (
NT AUTHORITY\SYSTEM). Začíná enumerací (např. nástroje WinPEAS, PowerUp). K obvyklým cestám patří:- Zneužití zastaralého softwaru a služeb: Identifikace služeb třetích stran běžících jako SYSTEM, které mohou postrádat aktualizace a mají veřejné exploity.
- Chybné konfigurace služeb: Pokud má běžný uživatel právo na modifikaci nebo výměnu EXE souboru spravovaného službou. Podobným vektorem je opomenutí zapsání cesty ke spouštěnému souboru služby do uvozovek ("Unquoted Service Path"), kde mezery v názvu dovolují útočníkovi podvrhnout zlomyslný spustitelný soubor na cestu ke službě.
- Eskalace pomocí privilegií: Využití povolených Windows privilegií na uživateli (zjistitelné příkazem
whoami /priv). Příkladem jsou privilegia rodiny SeImpersonatePrivilege, která lze zneužít k impersifikaci účtuNT AUTHORITY\SYSTEM(typické využití přes PrintSpoofer, GodPotato apod.). - Registry a hesla: Vytažení nechráněných hesel a nastavení služeb z Windows Registru nebo z konfiguračních souborů. Lze také využít paměti powershellové historie a záznamů událostí OS.
- Zásady OS (OS Policies): Možnost např. útočníka nainstalovat jakýkoliv .msi balíček jako administrátor díky nesprávně zapnuté
AlwaysInstallElevatedv rámci doménových politik (GPO).