Schwachstelle am eBPF Subsystem, déi Code Ausféierung um Linux Kernel Niveau erlaben

Zwee nei Schwachstelle goufen am eBPF Subsystem identifizéiert, wat Iech erlaabt Handler am Linux Kernel an enger spezieller virtueller Maschinn mat JIT ze lafen. Béid Schwachstelle maachen et méiglech Äre Code mat Kernelrechter auszeféieren, ausserhalb vun enger isoléierter eBPF virtueller Maschinn. Informatioun iwwer d'Problemer gouf vum Zero Day Initiative Team publizéiert, deen de Pwn2Own Concours leeft, während deem dëst Joer dräi Attacke op Ubuntu Linux demonstréiert goufen, déi bis elo onbekannte Schwachstelle benotzt hunn (ob d'Schwieregkeeten an eBPF mat dësen Attacke verbonne sinn ass net gemellt) .

  • CVE-2021-3490 - D'Schwachheet gëtt verursaacht duerch e Manktem un 32-Bit Out-of-Grenzen Iwwerpréiwung wann Dir bitwise AND, ODER an XOR Operatiounen an eBPF ALU32 ausféiert. En Ugräifer kann vun dësem Feeler profitéieren fir Daten ausserhalb vun de Grenze vum zougeloossene Puffer ze liesen an ze schreiwen. De Problem mat XOR Operatiounen erschéngt ab der Kernel Versioun 5.7-rc1, an AN an ODER - ab 5.10-rc1.
  • CVE-2021-3489 - D'Schwachheet gëtt duerch e Feeler bei der Ëmsetzung vum Ringbuffer verursaacht an ass wéinst der Tatsaach datt d'bpf_ringbuf_reserve Funktioun d'Méiglechkeet net kontrolléiert huet datt d'Gréisst vun der zougewisener Erënnerungsregioun manner wéi déi aktuell Gréisst ka sinn vum Ringbuf. De Problem erschéngt zënter der Verëffentlechung 5.8-rc1.

De Status vu Patch Schwachstelle bei Verdeelungen kann op dëse Säiten verfollegt ginn: Ubuntu, Debian, RHEL, Fedora, SUSE, Arch). Fixes sinn och als Patches verfügbar (CVE-2021-3489, CVE-2021-3490). Ob d'Thema exploitéiert ka ginn hänkt dovun of, ob den eBPF System Uruff fir de Benotzer zougänglech ass. Zum Beispill, an der Standardkonfiguratioun an RHEL, Ausbeutung vun der Schwachstelle erfuerdert de Benotzer CAP_SYS_ADMIN Rechter.

Separat kënne mir eng aner Schwachstelle am Linux Kernel notéieren - CVE-2021-32606, wat e lokale Benotzer erlaabt hir Privilegien op de Root-Niveau ze erhéijen. De Problem ass evident zënter Linux Kernel 5.11 a gëtt duerch e Rennenbedingung an der Ëmsetzung vum CAN ISOTP Protokoll verursaacht, wat et méiglech mécht d'Socketbindende Parameteren z'änneren wéinst dem Manktem un d'korrekt Spären an der isotp_setsockopt () Funktioun ze setzen. beim Veraarbechtung vum CAN_ISOTP_SF_BROADCAST Fändel.

Nodeems d'ISOTP Socket zougemaach ass, bleift d'Verbindung un den Empfänger Socket a Kraaft, wat d'Strukturen, déi mat der Socket verbonne sinn, weider kënne benotzen nodeems d'Erënnerung, déi mat hinnen assoziéiert ass, befreit ass (Notzung-after-gratis wéinst dem Uruff un isotp_rcv () Zougang zu enger scho befreit isotp_sock Struktur). Duerch Datemanipulatioun kënnt Dir de Pointer op d'Funktion sk_error_report () iwwerschreiden an Äre Code um Kernelniveau ausféieren.

Source: opennet.ru

Setzt e Commentaire