Zranitelnost před více než 15 lety v Netfilteru umožňovala eskalaci oprávnění

Před několika dny byla zveřejněna zpráva, že v Netfilteru byla zjištěna chyba zabezpečení (Linuxový subsystém jádra používaný k filtrování a úpravě síťových paketů), který umožňuje místnímu uživateli získat oprávnění root v systémui když jste v izolované nádobě.

Chyba zabezpečení CVE-2021-22555 je to problém, který existuje již od jádra 2.6.19, spuštěno před 15 lety a je způsobená chybou v ovladačích IPT_SO_SET_REPLACE a IP6T_SO_SET_REPLACE, což způsobí přetečení vyrovnávací paměti při odesílání speciálně zdobených parametrů prostřednictvím volání setsockopt v režimu kompatibility.

Možná si mnozí v tomto okamžiku budou klást otázku, jak je možné, že chyba v linuxovém jádře mohla zůstat tak dlouho bez povšimnutí a odpověď na to je, že i když chyba, která existovala od Linuxu 2.6.19, byla chyba nalezena prostřednictvím kódu audit, přestože kód C nebyl reprodukovatelný, takže jej nebylo možné zneužít, protože v té době nebyly nalezeny prostředky nezbytné k eskalaci oprávnění.

Například podpora pro neprivilegované uživatelské jmenné prostory je v jádře 3.8. Některé distribuce mají také opravu, která přidává sysctl k deaktivaci neprivilegovaných jmenných prostorů uživatelů.

Za normálních okolností může pouze uživatel root volat compat_setsockopt ()Ale potřebná oprávnění provést útok mohou být také získány neprivilegovaným uživatelem v systémech s povolenými jmennými prostory uživatelů.

CVE-2021-22555 je 15 let stará chyba zabezpečení při zápisu do zásobníku v systému Linux Netfilter, která je dostatečně výkonná, aby obešla všechna moderní omezení zabezpečení a dosáhla spuštění kódu jádra.

Jako takové je to popsáno místní uživatel může vytvořit kontejner se samostatným uživatelem root a odtamtud zneužít tuto chybu zabezpečeníí. Například „uživatelské jmenné prostory“ jsou standardně zahrnuty v Ubuntu a Fedoře, ale ne v Debianu a RHEL.

Tuto chybu zabezpečení lze zneužít částečným přepsáním souboru m_list->nextukazatel msg_msgstruktura a dosažení volného po použití. To je dost silné na to, aby váš kód jádra fungoval obejít KASLR, SMAP a SMEP.

Problém také nastává ve funkci xt_compat_target_from_user () kvůli nesprávnému výpočtu velikosti paměti při ukládání struktur jádra po převodu z 32bitové na 64bitovou reprezentaci.

Jako takové je uvedeno, že chyba umožňuje zapsat čtyři „nulové“ bajty na libovolnou pozici mimo vyrovnávací paměť přiřazeno, omezeno offsetem 0x4C. Z tohoto důvodu je uvedeno, že tato funkce se ukázala jako dostatečná k vytvoření zneužití který umožňuje získat práva root: odstraněním m_list-> dalšího ukazatele ve struktuře msg_msg byly vytvořeny podmínky pro přístup k datům po uvolnění paměti (use-after-free), která byla poté použita k získání informací o adresách a změny jiných struktur manipulací se systémovým voláním msgsnd ().

Pokud jde o hlášení o chybě, jako každá zjištěná chyba zabezpečení, jedná se o proces a zprávu, která byla vytvořena vývojářům jádra v dubnu, a poté byla za pár dní opravena a oprava, která je součástí všech podporovaných distribucí, takže tyto informace o chybě mohou být zveřejněny později.

Projekty Debian, Arch Linux a Fedora již vygenerovaly aktualizace balíčků. Počínaje aktualizacemi Ubuntu, RHEL a SUSE jsou v provozu. Protože chyba je vážná, v praxi využitelná a umožňuje únik z kontejneru, Google odhadl svůj objev na 10,000 XNUMX $ a zdvojnásobil odměnu výzkumníkovi, který tuto chybu zabezpečení identifikoval, a za identifikaci metody, jak zabránit izolaci kontejnerů Kubernetes v klastru kCTF.

Pro testování byl připraven funkční prototyp exploitu který obchází ochranné mechanismy KASLR, SMAP a SMEP.

Konečně pokud se o tom chcete dozvědět více, můžete zkontrolovat podrobnosti Na následujícím odkazu.


Zanechte svůj komentář

Vaše e-mailová adresa nebude zveřejněna. Povinné položky jsou označeny *

*

*

  1. Za data odpovídá: AB Internet Networks 2008 SL
  2. Účel údajů: Ovládací SPAM, správa komentářů.
  3. Legitimace: Váš souhlas
  4. Sdělování údajů: Údaje nebudou sděleny třetím osobám, s výjimkou zákonných povinností.
  5. Úložiště dat: Databáze hostovaná společností Occentus Networks (EU)
  6. Práva: Vaše údaje můžete kdykoli omezit, obnovit a odstranit.