Privilege escalation
Co je privilege escalation?
Privilege escalation, česky eskalace oprávnění, označuje situaci, kdy uživatel nebo útočník získá vyšší úroveň přístupu, než jaká mu byla původně přidělena. Dosahuje toho zneužitím chyby v softwaru, nedostatku v návrhu systému, opomenutí v konfiguraci nebo technikami sociálního inženýrství. Výsledkem je přístup k prostředkům, které mají být běžně chráněny, tedy k citlivým datům, konfiguraci systému nebo účtům jiných uživatelů.
Eskalace oprávnění obvykle není prvním krokem útoku, ale jednou z jeho fází. Útočník, který do systému pronikne například prostřednictvím phishingu nebo zneužití zranitelnosti webové aplikace, má zpravidla jen omezená práva běžného uživatele nebo služby. Teprve po jejich rozšíření může vypnout ochranu, získat další přihlašovací údaje, šířit se po síti nebo nasadit ransomware. Znalostní báze MITRE ATT&CK proto vede eskalaci oprávnění jako samostatnou taktiku útočníků, jejímž cílem je získat vyšší práva, typicky úroveň správce systému (tzv. root či SYSTEM), místního administrátora nebo účtu s přístupem ke konkrétním citlivým systémům.
Podstata eskalace oprávnění
Moderní operační systémy, aplikace i cloudové platformy stojí na oddělení různých úrovní oprávnění. Běžný uživatel může pracovat se svými soubory, ale nemůže měnit nastavení systému, instalovat ovladače ani číst data ostatních uživatelů. Tyto hranice vynucuje operační systém, aplikace nebo služba pro správu identit. Eskalace oprávnění znamená jejich překročení, ať už kvůli chybě v kódu, který je má hlídat, nebo kvůli nesprávnému nastavení.
Podle směru, kterým útočník svá práva rozšiřuje, se rozlišují dva základní typy:
- Vertikální eskalace znamená získání vyšší úrovně oprávnění, než jakou má kompromitovaný účet. Typickým příkladem je přechod od běžného uživatele ke správci systému nebo od webové aplikace k plné kontrole nad serverem. Vertikální eskalace bývá nebezpečnější, protože získaná práva často umožňují vypnout bezpečnostní nástroje a zahladit stopy.
- Horizontální eskalace neznamená zvýšení úrovně oprávnění, ale přístup k prostředkům jiného uživatele se stejnou úrovní práv. Útočník může například v internetovém bankovnictví nebo e-shopu zobrazit účty, objednávky či dokumenty ostatních zákazníků, pokud aplikace důsledně nekontroluje, komu konkrétní data patří.
V praxi se oba typy často kombinují. Útočník může horizontálně převzít účet jiného zaměstnance, který má přístup k zajímavějším systémům, a teprve tam vertikálně rozšířit svá práva. Rozlišuje se také místní eskalace, kdy útočník již má nějaký přístup k systému a svá práva rozšiřuje zevnitř, a vzdálená eskalace, při které získá vysoká oprávnění přímo přes síť.
Techniky eskalace oprávnění
Znalostní báze MITRE ATT&CK eviduje v rámci taktiky eskalace oprávnění řadu technik a jejich variant. Z hlediska principu je lze rozdělit do několika skupin:
- Zneužití zranitelností je nejpřímější cestou. Útočník využije chybu v jádře operačního systému, ovladači, systémové službě nebo aplikaci, která běží s vyššími právy, a přiměje ji provést svůj kód. Zvláštní variantou je zneužití legitimních, ale zranitelných ovladačů, které útočník do systému sám nainstaluje (Bring Your Own Vulnerable Driver).
- Chybná konfigurace patří k běžným příčinám eskalace. Jde například o soubory nebo služby spouštěné s vysokými právy, které může běžný uživatel upravit, o příliš benevolentně nastavená pravidla pro spouštění příkazů s právy správce, o naplánované úlohy s nezabezpečenými skripty nebo o zbytečně široká oprávnění účtů. Takové slabiny nevyžadují žádnou zranitelnost v kódu, a proto je nelze odstranit pouhými aktualizacemi.
- Zneužití přihlašovacích údajů zahrnuje získání hesel, otisků (hashů) hesel nebo autentizačních tokenů privilegovaných účtů, které jsou uloženy v paměti, konfiguračních souborech nebo skriptech. MITRE ATT&CK tuto cestu eviduje jako použití platných účtů (Valid Accounts). Útočník přitom neprolamuje žádnou ochranu, jen používá legitimní přístup. Komplikuje se tak jeho odhalení.
- Manipulace s přístupovými tokeny a procesy využívá mechanismů, kterými operační systém určuje, s jakými právy proces běží. Útočník může například převzít bezpečnostní kontext jiného procesu nebo vložit svůj kód do procesu s vyššími právy.
- Obcházení mechanismů pro zvýšení oprávnění cílí na funkce, jako je řízení uživatelských účtů (User Account Control, UAC) ve Windows nebo nástroj sudo v systémech Unix. Útočník se snaží získat vyšší práva bez vyžadovaného potvrzení nebo zadání hesla.
- Úpravy doménových a centrálních politik přicházejí v úvahu tehdy, když útočník získá práva ke změně nastavení adresářové služby, například Active Directory, nebo cloudového účtu (tenantu). Jediná změna takové politiky může ovlivnit tisíce zařízení a účtů najednou.
- Útěk z izolovaného prostředí (escape to host) znamená únik z kontejneru nebo virtuálního stroje do hostitelského systému, a tím i získání kontroly nad dalšími aplikacemi, které na něm běží.
- Sociální inženýrství doplňuje technické postupy. Útočník může například přesvědčit pracovníka technické podpory, aby obnovil heslo nebo resetoval vícefaktorovou autentizaci privilegovaného účtu, nebo přimět uživatele, aby potvrdil výzvu ke zvýšení oprávnění.
Jednotlivé techniky se často řetězí. Útočník může například zneužít chybnou konfiguraci k získání místních administrátorských práv, z paměti systému pak získat přihlašovací údaje doménového správce, který se k zařízení dříve přihlásil, a jejich pomocí ovládnout celou doménu.
Eskalace oprávnění v cloudu a v systémech AI
V cloudových prostředích se eskalace oprávnění přesouvá od operačních systémů ke správě identit a přístupů (IAM). Cloudové platformy nabízejí stovky jemně členěných oprávnění a jejich kombinace může mít nečekané důsledky. Účet, který na první pohled nemá administrátorská práva, může mít například oprávnění upravovat politiky přístupu, vytvářet přístupové klíče pro jiné účty nebo spouštět výpočetní prostředky s přiřazenou privilegovanou rolí. Kdo takový účet ovládne, může si práva správce přidat sám, aniž by zneužil jedinou chybu v kódu. Podobné riziko představují kontejnerové platformy, kde může kontejner spuštěný s nadměrnými právy posloužit jako cesta k ovládnutí celého klastru.
Ochrana proto vyžaduje pravidelnou analýzu skutečně používaných oprávnění a odhalování rizikových kombinací. Tuto oblast pokrývají nástroje pro správu oprávnění v cloudové infrastruktuře (Cloud Infrastructure Entitlement Management, CIEM).
Novou oblastí jsou systémy umělé inteligence, zejména AI agenti, kteří jménem uživatelů volají externí nástroje a rozhraní. Agent přitom může disponovat širšími oprávněními než uživatel, který s ním komunikuje. Pokud útočník agenta zmanipuluje, například technikou prompt injection nebo tool poisoning, může jeho prostřednictvím provádět akce, ke kterým by sám neměl oprávnění. Jde o moderní podobu známého problému takzvaného zmateného zástupce (confused deputy), kdy privilegovaný prvek systému zneužije svá práva ve prospěch nedostatečně oprávněného žadatele.
Souvislosti s dalšími hrozbami
Eskalace oprávnění bývá součástí řady závažných kybernetických útoků. Velmi úzce souvisí především s ransomwarem. Aby mohli útočníci zašifrovat data v celé organizaci, smazat zálohy a odstavit bezpečnostní nástroje, potřebují obvykle práva správce domény nebo jiná vysoká oprávnění. Partneři ransomwarových skupin v modelu ransomware jako služba (Ransomware as a Service, RaaS) proto často pracují podle osvědčeného postupu, ve kterém samotnému šifrování předchází eskalace oprávnění a ovládnutí domény.
Podobnou roli hraje eskalace u pokročilých perzistentních hrozeb (Advanced Persistent Threat, APT). Útočné skupiny se po průniku do sítě snaží získat co nejvyšší práva, aby si zajistily dlouhodobý a nenápadný přístup. Eskalace oprávnění se přitom prolíná s postupným šířením útočníka po dalších systémech (lateral movement). Získaná práva otevírají přístup k dalším zařízením, na kterých útočník hledá další přihlašovací údaje.
Technicky blízkým pojmem je jailbreaking. Jailbreak nebo rootování mobilního zařízení je v podstatě eskalace oprávnění, kterou provádí sám uživatel, aby získal plný přístup k systému. Stejné řetězce zranitelností ale využívají i komerční špehovací nástroje k utajenému ovládnutí zařízení obětí. Ve světě velkých jazykových modelů se termín jailbreaking používá pro obcházení bezpečnostních omezení modelu, což je přenesený, ale příbuzný význam.
Na straně obrany souvisí eskalace oprávnění s koncepty, které omezují její dopad. Princip minimálních oprávnění snižuje rozsah práv, která může útočník po průniku získat, přístup just in time zkracuje dobu, po kterou jsou privilegovaná oprávnění aktivní, a architektura nulové důvěry (zero trust) vyžaduje ověření každého přístupu bez ohledu na to, odkud přichází.
Obrana proti eskalaci oprávnění
Obrana by měla kombinovat prevenci, snižující množství cest k eskalaci, s detekcí, která odhalí pokusy o jejich zneužití. Žádné jednotlivé opatření nestačí, protože útočník si vybírá nejsnazší cestu v daném prostředí. Mezi základní opatření patří:
- Pravidelné aktualizace operačních systémů, ovladačů a aplikací, s prioritou aktivně zneužívaných známých zranitelností.
- Princip minimálních oprávnění pro uživatele, servisní účty i aplikace. Běžná práce by neměla probíhat pod administrátorským účtem a správci by měli mít pro privilegované činnosti samostatné účty.
- Omezení stálých oprávnění pomocí přístupu just in time a nástrojů pro správu privilegovaného přístupu (PAM).
- Vícefaktorová autentizace pro všechny privilegované účty a pro vzdálený přístup, spolu s jasnými pravidly pro obnovu hesel a resetování autentizace, která zkomplikují útoky s využitím sociálního inženýrství.
- Unikátní hesla místních správců na každém zařízení a jejich pravidelná změna, aby kompromitace jednoho zařízení neotevřela cestu k ostatním.
- Zabezpečená konfigurace systémů podle uznávaných doporučení, například bezpečnostních standardů organizace Center for Internet Security (CIS Benchmarks). Pravidelná kontrola oprávnění k souborům, službám a naplánovaným úlohám.
- Ochrana přihlašovacích údajů v paměti systému a odstranění hesel ze skriptů a konfiguračních souborů. Privilegované účty by se neměly přihlašovat na běžné pracovní stanice.
- Pravidelná revize oprávnění v adresářových službách a cloudových platformách, včetně zjišťování nadbytečných účtů a rizikových kombinací oprávnění.
- Monitoring a detekce neobvyklých změn oprávnění, nových členství v privilegovaných skupinách, vytváření služeb a naplánovaných úloh. K tomu slouží nástroje EDR, XDR a SIEM, které mohou být doplněny automatizovanou reakcí na incidenty.
- Penetrační testy a red teaming k prověření, jak daleko se útočník dokáže z běžného uživatelského účtu dostat.
Vývojáři musí důsledně ověřovat oprávnění na straně serveru u každého požadavku, a předcházet tak horizontální eskalaci.
Budoucí vývoj eskalace oprávnění
Eskalace oprávnění zůstane jednou ze základních fází kybernetických útoků, měnit se ale bude její podoba. Operační systémy zavádějí hardwarově podporovanou izolaci, ochranu paměti a bezpečnější programovací jazyky, které omezují některé třídy zranitelností. Zneužití chyb v kódu je proto stále náročnější a útočníci se více zaměřují na chybné konfigurace, odcizené přihlašovací údaje a zneužití legitimních oprávnění.
Umělá inteligence může pomoci útočníkům i obráncům. Usnadňuje hledání chybných konfigurací a zranitelností, ale také odhalování neobvyklých změn oprávnění a podezřelého chování účtů. Základem obrany však i nadále zůstane důsledné uplatňování principu minimálních oprávnění a pravidelná kontrola přístupů.