En sårbarhet för mer än 15 år sedan i Netfilter tillät eskalering av privilegier

För några dagar sedan släpptes nyheten om det en sårbarhet har identifierats i Netfilter (ett Linux-kärnsubsystem som används för att filtrera och modifiera nätverkspaket), vilket tillåter en lokal användare att få root-behörigheter i ett systemäven i en isolerad behållare.

CVE-2021-22555-sårbarheten det är ett problem som har funnits sedan kärnan 2.6.19, lanserades för 15 år sedan och är orsakas av ett fel i förarna IPT_SO_SET_REPLACE och IP6T_SO_SET_REPLACE, vilket orsakar ett buffertöverflöde när du skickar speciellt dekorerade parametrar via setsockopt-samtalet i kompatiläge.

Kanske kommer många vid denna tidpunkt att undra hur det är möjligt att ett fel i Linux-kärnan kan gå obemärkt förbi så länge och svaret på det är att även om felet som fanns sedan Linux 2.6.19 hittades sårbarheten genom kod granskning, även om C-koden inte var reproducerbar, så den kunde inte utnyttjas eftersom de nödvändiga resurserna för att eskalera privilegierna inte hittades vid den tiden.

Till exempel finns stöd för okända användarnamnsutrymmen i kärna 3.8. Vissa distributioner har också en korrigeringsfil som lägger till sysctl för att inaktivera oprivierade användarnamnsrum.

Under normala omständigheter är det bara rotanvändaren som kan ringa compat_setsockopt ()Men nödvändiga behörigheter att utföra en attack de kan också erhållas av en privilegierad användare på system med användarnamnsområden aktiverade.

CVE-2021-22555 är en 15 år gammal stack out of stack-skrivsårbarhet i Linux Netfilter som är tillräckligt kraftfull för att kringgå alla moderna säkerhetsreduceringar och uppnå körning av kärnkoder.

Som sådan beskrivs det en lokal användare kan skapa en container med en separat root-användare och utnyttja sårbarheten därifråní. Exempelvis ingår "användarnamnsutrymmen" som standard i Ubuntu och Fedora, men inte i Debian och RHEL.

Denna sårbarhet kan utnyttjas genom att delvis skriva över m_list->nextpekare msg_msgstruktur och uppnå en gratis efter användning. Detta är tillräckligt kraftfullt för att din kärnkod ska gå förbi KASLR, SMAP och SMEP.

Problem uppstår också i funktionen xt_compat_target_from_user () på grund av felaktig minnesstorleksberäkning när kärnstrukturer sparas efter konvertering från 32-bitars till 64-bitarsrepresentation.

Som sådan nämns det felet gör att fyra "noll" byte kan skrivas till valfri position utanför bufferten tilldelad, begränsad av offset 0x4C. På grund av detta nämns det den här funktionen visade sig vara tillräcklig för att skapa en exploatering som gör det möjligt att få root-rättigheter: genom att radera m_list-> nästa pekare i msg_msg-strukturen skapades villkoren för att komma åt data efter att ha frigjort minne (use-after-free), som sedan användes för att få information om adresser och ändringar i andra strukturer genom att manipulera systemmeddelandet msgsnd ().

När det gäller felrapporten, som alla upptäckta sårbarheter, involverar detta en process och rapporten som gjordes till kärnutvecklarna i april, med vilken den därefter korrigerades på några dagar och korrigeringen som ingår i alla distributioner som stöds, så att information om felet kan släppas senare.

Debian-, Arch Linux- och Fedora-projekten har redan genererat paketuppdateringar. Från och med Ubuntu, RHEL och SUSE uppdateringar är på gång. Eftersom felet är allvarligt och kan utnyttjas i praktiken och gör det möjligt att fly från containern, Google uppskattade upptäckten till 10,000 XNUMX dollar och fördubblade belöningen till forskaren som identifierade sårbarheten och för att identifiera en metod för att undvika att isolera Kubernetes-behållare i kCTF-klustret.

För testning har en fungerande prototyp av en exploatering förberetts som kringgår KASLR-, SMAP- och SMEP-skyddsmekanismerna.

Slutligen om du är intresserad av att veta mer om det, du kan kontrollera detaljerna I följande länk.


Lämna din kommentar

Din e-postadress kommer inte att publiceras. Obligatoriska fält är markerade med *

*

*

  1. Ansvarig för data: AB Internet Networks 2008 SL
  2. Syftet med uppgifterna: Kontrollera skräppost, kommentarhantering.
  3. Legitimering: Ditt samtycke
  4. Kommunikation av uppgifterna: Uppgifterna kommer inte att kommuniceras till tredje part förutom enligt laglig skyldighet.
  5. Datalagring: databas värd för Occentus Networks (EU)
  6. Rättigheter: När som helst kan du begränsa, återställa och radera din information.