A jogosultság kiterjesztése számítógépes hiba , sebezhetőség, operációs rendszer vagy szoftver konfigurációs hibájának felhasználása a felhasználótól általában védett számítási erőforrásokhoz való hozzáférés szintjének növelése érdekében . Ennek eredményeként a rendszergazda által tervezettnél nagyobb jogosultsággal rendelkező alkalmazások jogosulatlan műveleteket hajthatnak végre . A „jogkiterjesztés” arra a helyzetre utal, amikor egy számítógépes rendszer felhasználója valamilyen módon növeli tekintélyét ebben a rendszerben (más szóval: lehetőséget kapott arra, hogy megtehesse azt, amit korábban nem).
A programhiba , például a puffertúlcsordulás befecskendezése , mindig nem kívánatos . De ez a hiba csak akkor tekinthető súlyosnak, ha megnöveli a felhasználó jogosultságait. Különösen, ha a kódot a helyi gépre injektálják, ez nem növeli a jogosultságokat: a felhasználó futtatható fájlokat futtathat anélkül is. Ha lehetséges a kód beszúrása a hálózaton keresztül, akkor ez már privilégium eszkaláció: a felhasználónak lehetősége van gépi kódot végrehajtani . [egy]
A legtöbb számítógépes rendszert több felhasználó általi használatra tervezték. A felhasználói engedélyek azokra a műveletekre vonatkoznak, amelyeket a felhasználónak joga van végrehajtani. Általában ezek a műveletek magukban foglalják a fájlok megtekintését és szerkesztését vagy a rendszerfájlok módosítását.
A jogosultság kiterjesztése azt jelenti, hogy a felhasználó olyan jogosultságokat kapott, amelyekre nem jogosult. Az ilyen jogosultságok fájlok törlésére, személyes adatok megtekintésére vagy nem kívánt programok (például rosszindulatú programok) telepítésére használhatók. Ez általában akkor történik, ha egy bizonyos hiba van a rendszerben , ami lehetővé teszi a számítógép-védelmi eszközök megkerülését. A privilégiumok kiterjesztésének két formája van:
Az alacsony jogosultságokkal rendelkező felhasználó vagy egy alkalmazás hozzáfér a kiváltságosabb felhasználókhoz vagy alkalmazásokhoz kapcsolódó funkciókhoz (például amikor az internetbanki felhasználók hozzáférnek az adminisztrációs funkciókhoz, vagy tudják, hogyan kell SMS - ben megkerülni a jelszót )
Egy átlagos felhasználó hozzáfér más felhasználók személyes adataihoz vagy funkcióihoz (például A felhasználó hozzáfér B felhasználó Internet Banking szolgáltatásához)
Ez a típusú jogosultságkiterjesztés olyan helyzetet ír le, amikor a felhasználó magasabb szintű hozzáféréssel rendelkezik a kelleténél, például a kernelműveletek miatt .
Egyes esetekben egy magas szintű hozzáféréssel rendelkező alkalmazás feltételezi, hogy a bemenet csak az interfészére alkalmas adat lesz, és nem ellenőrzi azt. Ebben az esetben bárki meghamisíthatja a bejövő adatokat, így bármilyen rosszindulatú kód futtatható az alkalmazás jogosultságaival:
A vízszintes jogosultságkiterjesztés olyan helyzetet ír le, amikor egy alkalmazás lehetővé teszi a támadó számára, hogy hozzáférjen olyan erőforrásokhoz , amelyek általában védettek az alkalmazásoktól és más felhasználóktól. Ennek eredményeként az alkalmazás ugyanazokat a műveleteket hajtja végre, de a fejlesztő vagy a rendszergazda által tervezett hozzáférési szinttől eltérő hozzáféréssel (a támadó hozzáfér más felhasználók személyes adataihoz).
Ez a probléma gyakran előfordul a webes alkalmazásokban . Vegye figyelembe a következő helyzetet:
Ezek a műveletek a webalkalmazások gyakori gyengeségei és sebezhetőségei miatt lehetségesek .
Lehetséges webalkalmazás-gyengeségek és helyzetek, amelyek a jogosultságok horizontális eszkalációjához vezethetnek:
Az operációs rendszerek és a felhasználók a következő módszereket használhatják a jogosultságok kiszélesítésének kockázatának csökkentésére: