Linuxi tuumas on tuvastatud nf_tables, watch_queue ja IPsec ärakasutatavad haavatavused

Linuxi tuumas on tuvastatud mitmeid ohtlikke haavatavusi, mis võimaldavad kohalikul kasutajal süsteemis oma õigusi suurendada. Kõigi vaadeldavate probleemide jaoks on ette valmistatud ekspluatatsiooni prototüübid.

  • Haavatavus (CVE-2022-0995) sündmuste jälgimise alamsüsteemis watch_queue võimaldab kirjutada andmeid kerneli mälus asuvasse piirivälisesse puhvrisse. Rünnaku võib läbi viia iga privilegeerimata kasutaja ja selle tulemuseks on selle, et nende kood töötab kerneli õigustega. Funktsioonis watch_queue_set_size() on haavatavus ja see on seotud katsega kustutada kõik loendis olevad viitajad, isegi kui neile pole mälu eraldatud. Probleem ilmneb kerneli loomisel suvandiga "CONFIG_WATCH_QUEUE=y", mida kasutatakse enamikus Linuxi distributsioonides.

    Haavatavus kõrvaldati 11. märtsil lisatud kerneli muudatusega. Distributsioonide pakettide värskenduste avaldamist saate jälgida järgmistel lehtedel: Debian, SUSE, Ubuntu, RHEL, Fedora, Gentoo, Arch Linux. Kasutusprototüüp on juba avalikult saadaval ja võimaldab teil saada juurjuurdepääsu, kui töötate Ubuntu 21.10-s koos kerneliga 5.13.0-37.

    Linuxi tuumas on tuvastatud nf_tables, watch_queue ja IPsec ärakasutatavad haavatavused

  • Haavatavus (CVE-2022-27666) esp4 ja esp6 kerneli moodulites koos IPseci jaoks mõeldud ESP teisenduste (Encapsulating Security Payload) juurutamisega, mida kasutatakse IPv4 ja IPv6 kasutamisel. Haavatavus võimaldab tavaliste õigustega kohalikul kasutajal tuumamälus olevaid objekte üle kirjutada ja oma õigusi süsteemis suurendada. Probleemi põhjustab eraldatud mälumahu ja tegelike vastuvõetud andmete vahelise vastavusse viimise puudumine, kuna sõnumi maksimaalne maht võib ületada struktuuri skb_page_frag_refill jaoks eraldatud maksimaalset mälumahtu.

    Haavatavus parandati kernelis 7. märtsil (parandatud versioonides 5.17, 5.16.15 jne). Distributsioonide pakettide värskenduste avaldamist saate jälgida järgmistel lehtedel: Debian, SUSE, Ubuntu, RHEL, Fedora, Gentoo, Arch Linux. Exploiti töötav prototüüp, mis võimaldab tavakasutajal saada vaikekonfiguratsioonis juurjuurdepääsu Ubuntu Desktop 21.10-le, on GitHubis juba postitatud. Väidetavalt töötab eksploit väikeste muudatustega ka Fedora ja Debiani peal. Tähelepanuväärne on, et ärakasutamine valmistati algselt ette pwn2own 2022 võistluse jaoks, kuid kerneli arendajad tuvastasid ja parandasid sellega seotud vea, mistõttu otsustati haavatavuse üksikasjad avalikustada.

  • Kaks haavatavust (CVE-2022-1015, CVE-2022-1016) netfilteri alamsüsteemis moodulis nf_tables, mis tagavad nftables pakettfiltri töö. Esimene probleem võimaldab kohalikul privilegeerimata kasutajal saavutada piiridest väljas kirjutamise virna eraldatud puhvrisse. Ületäitumine tekib siis, kui töödeldakse nftablesi avaldisi, mis on teatud viisil vormindatud ja mida töödeldakse nftablesi reeglitele juurdepääsu omava kasutaja määratud indeksite kontrollimise faasis.

    Haavatavuse põhjuseks on asjaolu, et arendajad andsid mõista, et "enum nft_registers reg" väärtus oli üks bait, kui teatud optimeerimiste lubamisel võis kompilaator vastavalt C89 spetsifikatsioonile kasutada selle jaoks 32-bitist väärtust. . Selle funktsiooni tõttu ei vasta mälu kontrollimisel ja eraldamisel kasutatav suurus struktuuris olevate andmete tegelikule suurusele, mistõttu struktuuri saba kattub virna osutitega.

    Probleemi saab ära kasutada koodi käivitamiseks kerneli tasemel, kuid edukaks rünnakuks on vaja juurdepääsu nftables-ile, mille saab hankida eraldi võrgu nimeruumis CLONE_NEWUSER või CLONE_NEWNET õigustega (näiteks kui saate käitada isoleeritud konteinerit). Haavatavus on tihedalt seotud ka kompilaatori kasutatavate optimeerimistega, mis on näiteks lubatud “CONFIG_CC_OPTIMIZE_FOR_PERFORMANCE=y” režiimis ehitamisel. Haavatavuse ärakasutamine on võimalik alates Linuxi kernelist 5.12.

    Netfiltri teise haavatavuse põhjustab juurdepääs juba vabastatud mälualale (use-after-free) nft_do_chain töötlejas ja see võib põhjustada tuumamälu initsialiseerimata alade lekke, mida saab lugeda nftables-avaldistega manipuleerimise kaudu ja kasutada, Näiteks muude haavatavuste arendamise ärakasutamise ajal kursori aadresside määramiseks. Haavatavuse ärakasutamine on võimalik alates Linuxi kernelist 5.13.

    Haavatavused on kõrvaldatud tänapäevastes kerneli paikades 5.17.1, 5.16.18, 5.15.32, 5.10.109, 5.4.188, 4.19.237, 4.14.274 ja 4.9.309. Distributsioonide pakettide värskenduste avaldamist saate jälgida järgmistel lehtedel: Debian, SUSE, Ubuntu, RHEL, Fedora, Gentoo, Arch Linux. Probleemid tuvastanud teadlane teatas mõlema haavatavuse jaoks töötavate äparduste ettevalmistamisest, mis on plaanis avaldada mõne päeva jooksul pärast seda, kui distributsioonid vabastavad tuumapakettide värskendused.

Allikas: opennet.ru

Lisa kommentaar