Linux-ytimen ksmbd-moduulin haavoittuvuus, jonka avulla voit suorittaa koodisi etänä

Kriittinen haavoittuvuus on tunnistettu ksmbd-moduulissa, joka sisältää Linux-ytimeen sisäänrakennetun SMB-protokollaan perustuvan tiedostopalvelimen toteutuksen, jonka avulla voit suorittaa koodisi etänä ytimen oikeuksilla. Hyökkäys voidaan suorittaa ilman todennusta, riittää, että ksmbd-moduuli on aktivoitu järjestelmässä. Ongelma on ilmennyt ytimen versiosta 5.15 lähtien, joka julkaistiin marraskuussa 2021, ja se korjattiin hiljaa päivityksissä 5.15.61, 5.18.18 ja 5.19.2, jotka julkaistiin elokuussa 2022. Koska ongelmalle ei ole vielä määritetty CVE-tunnistetta, ei ole tarkkaa tietoa ongelman korjaamisesta jakeluissa.

Yksityiskohtia haavoittuvuuden hyödyntämisestä ei ole vielä paljastettu, tiedetään vain, että haavoittuvuus johtuu jo vapautuneelle muistialueelle (Use-After-Free) pääsystä, koska objektin olemassaoloa ei ole tarkistettu ennen toimintojen suorittamista. sen päällä. Ongelma johtuu siitä, että funktio smb2_tree_disconnect() vapautti ksmbd_tree_connect-rakenteelle varatun muistin, mutta sen jälkeen käytettiin edelleen osoitinta tiettyjen SMB2_TREE_DISCONNECT-komentoja sisältävien ulkoisten pyyntöjen käsittelyssä.

Mainitun haavoittuvuuden lisäksi ksmbd:ssä on korjattu myös 4 vähemmän vaarallista ongelmaa:

  • ZDI-22-1688 - koodin etäsuoritus ytimen oikeuksilla, koska tiedostoattribuutin käsittelykoodi ei tarkista ulkoisten tietojen todellista kokoa ennen sen kopioimista omistettuun puskuriin. Haavoittuvuutta lieventää se, että hyökkäyksen voi suorittaa vain todennettu käyttäjä.
  • ZDI-22-1691 - Etätietovuoto ytimen muistista johtuen SMB2_WRITE-komentokäsittelijän syöttöparametrien virheellisestä tarkistuksesta (vain todennettu käyttäjä voi suorittaa hyökkäyksen).
  • ZDI-22-1687 - palvelun etäesto, joka johtuu järjestelmän vapaan muistin loppumisesta, koska resurssit on vapautettu väärin SMB2_NEGOTIATE-komentokäsittelijässä (hyökkäys voidaan suorittaa ilman todennusta).
  • ZDI-22-1689 - Etäytimen kaatuminen SMB2_TREE_CONNECT-komennon parametrien asianmukaisen validoinnin puutteen vuoksi, mikä johtaa lukemiseen puskurin ulkopuolelta (vain todennettu käyttäjä voi suorittaa hyökkäyksen).

Tuki SMB-palvelimen käyttämiselle ksmbd-moduulilla on ollut Samba-paketissa julkaisusta 4.16.0 lähtien. Toisin kuin käyttäjätilan SMB-palvelin, ksmbd on tehokkaampi suorituskyvyn, muistin kulutuksen ja integroinnin suhteen kehittyneisiin ytimen ominaisuuksiin. Ksmbd:tä mainostetaan tehokkaana, sulautettuna valmiina Samba-laajennuksena, joka integroituu tarvittaessa Samba-työkaluihin ja -kirjastoihin. Ksmbd-koodin kirjoittivat Samsungin Namjae Jeon ja LG:n Hyunchul Lee, ja ydintä ylläpitää Microsoftin Steve French, joka on Linux-ytimen CIFS/SMB2/SMB3-alijärjestelmien ylläpitäjä ja Samban kehitystiimin pitkäaikainen jäsen. , joka vaikutti merkittävästi SMB/CIFS-protokollien tuen toteuttamiseen Sambassa ja Linuxissa.

Lähde: opennet.ru

Lisää kommentti