Privilegeeskalering är användningen av en datorbugg , sårbarhet, operativsystem eller programvarukonfigurationsfel för att öka åtkomstnivån till datorresurser som normalt är skyddade från användaren . Som ett resultat kan en applikation med mer behörighet än vad systemadministratören avser utföra obehöriga åtgärder. "Privilegeeskalering" syftar på situationen när en användare av ett datorsystem på något sätt ökar sin auktoritet i detta system (med andra ord: han fick möjlighet att göra det han inte kunde göra tidigare).
Ett programfel som buffertspillinjektion är alltid oönskat . Men detta fel kan endast betraktas som allvarligt om det höjer användarens privilegier. I synnerhet, om koden injiceras på den lokala maskinen, ökar detta inte privilegierna: användaren kan köra körbara filer utan den. Om det är möjligt att injicera koden via nätverket är detta redan privilegieskalering: användaren har möjlighet att exekvera maskinkod . [ett]
De flesta datorsystem är designade för att användas av flera användare. Användarbehörigheter avser de åtgärder som användaren har rätt att utföra. Vanligtvis inkluderar dessa åtgärder att visa och redigera filer eller modifiera systemfiler.
Privilegeeskalering innebär att användaren har beviljats privilegier som de inte har rätt till. Sådana privilegier kan användas för att radera filer, visa privat information eller installera oönskade program (som skadlig programvara). Som regel händer detta när ett visst fel finns i systemet , vilket gör att du kan kringgå datorskyddsverktyg. Det finns två former av privilegieupptrappning:
En användare med låg behörighet eller en applikation har tillgång till funktioner relaterade till mer privilegierade användare eller applikationer (till exempel när Internetbankanvändare har tillgång till administrativa funktioner eller vet hur man kringgår ett lösenord via SMS )
En vanlig användare har tillgång till personuppgifter eller funktioner för andra användare (till exempel användare A har tillgång till Användare B:s Internetbank)
Denna typ av behörighetsupptrappning beskriver en situation där en användare har en högre åtkomstnivå än de borde, till exempel på grund av kärnoperationer .
I vissa fall antar en applikation med hög åtkomstnivå att indata endast är lämplig för dess gränssnitt och verifierar dem inte. I det här fallet kan vem som helst förfalska inkommande data så att all skadlig kod kan köras med privilegierna för denna applikation:
Horisontell privilegieskalering beskriver en situation där en applikation tillåter en angripare att få tillgång till resurser som normalt är skyddade från applikationer och andra användare. Resultatet är att applikationen utför samma åtgärder, men med en annan åtkomstnivå än vad utvecklaren eller systemadministratören avsett (angriparen får tillgång till andra användares personuppgifter).
Detta problem uppstår ofta i webbapplikationer . Tänk på följande situation:
Dessa åtgärder är möjliga på grund av vanliga svagheter och sårbarheter i webbapplikationer .
Potentiella svagheter i webbapplikationer och situationer som kan leda till horisontell privilegieskalering:
Operativsystem och användare kan använda följande metoder för att minska risken för privilegieskalering: