Sårbarhed i Linux-kernens ksmbd-modul, som giver dig mulighed for at fjernafvikle din kode

En kritisk sårbarhed er blevet identificeret i ksmbd-modulet, som inkluderer en implementering af en filserver baseret på SMB-protokollen indbygget i Linux-kernen, som giver dig mulighed for at fjernafvikle din kode med kernerettigheder. Angrebet kan udføres uden godkendelse; det er nok, at ksmbd-modulet er aktiveret på systemet. Problemet har opstået siden kerne 5.15, udgivet i november 2021, og blev stille og roligt rettet i opdateringer 5.15.61, 5.18.18 og 5.19.2, udgivet i august 2022. Da CVE-identifikationen endnu ikke er blevet tildelt problemet, er der ingen nøjagtige oplysninger om, hvordan problemet løses i distributioner.

Detaljer om udnyttelsen af ​​sårbarheden er endnu ikke afsløret; det er kun kendt, at sårbarheden er forårsaget af adgang til et allerede frigivet hukommelsesområde (Use-After-Free) på grund af manglende kontrol af eksistensen af ​​et objekt før udførelse af operationer på det. Problemet skyldes det faktum, at funktionen smb2_tree_disconnect() frigjorde den hukommelse, der var allokeret til ksmbd_tree_connect-strukturen, men efter det var der stadig en pointer, der blev brugt til at behandle visse eksterne anmodninger indeholdende SMB2_TREE_DISCONNECT-kommandoer.

Ud over den nævnte sårbarhed er 4 mindre farlige problemer også blevet rettet i ksmbd:

  • ZDI-22-1688 - fjernudførelse af kode med kernerettigheder på grund af filattributbehandlingskoden, der ikke kontrollerer den faktiske størrelse af eksterne data, før de kopieres til en dedikeret buffer. Sårbarheden afbødes af, at angrebet kun kan udføres af en godkendt bruger.
  • ZDI-22-1691 - fjerninformationslækage fra kernehukommelsen på grund af forkert kontrol af inputparametre i SMB2_WRITE-kommandohåndteringen (angrebet kan kun udføres af en godkendt bruger).
  • ZDI-22-1687 - ekstern lammelsesangreb forårsaget af udmattelse af tilgængelig hukommelse i systemet på grund af forkert frigivelse af ressourcer i SMB2_NEGOTIATE-kommandohåndteringen (angrebet kan udføres uden godkendelse).
  • ZDI-22-1689 - Fjernkernenedbrud på grund af manglende korrekt validering af parametrene for SMB2_TREE_CONNECT-kommandoen, hvilket resulterer i en læsning fra et område uden for bufferen (angrebet kan kun udføres af en godkendt bruger).

Support til at køre en SMB-server ved hjælp af ksmbd-modulet har været til stede i Samba-pakken siden release 4.16.0. I modsætning til en brugerplads SMB-server er ksmbd mere effektiv med hensyn til ydeevne, hukommelsesforbrug og integration med avancerede kernefunktioner. Ksmbd udråbes som en højtydende, indlejret klar Samba-udvidelse, der integreres med Samba-værktøjer og -biblioteker efter behov. ksmbd-koden blev skrevet af Namjae Jeon fra Samsung og Hyunchul Lee fra LG, og kernen vedligeholdes af Steve French fra Microsoft, en vedligeholder af CIFS/SMB2/SMB3-undersystemerne i Linux-kernen og et mangeårigt medlem af Samba-udviklingsteamet , som bidrog væsentligt til implementeringen af ​​support til SMB/CIFS-protokollerne i Samba og Linux.

Kilde: opennet.ru

Tilføj en kommentar