Dobësi në modulin ksmbd të kernelit Linux që ju lejon të ekzekutoni kodin tuaj nga distanca

Një dobësi kritike është identifikuar në modulin ksmbd, i cili përfshin një implementim të një serveri skedari të bazuar në protokollin SMB të integruar në kernelin Linux, i cili ju lejon të ekzekutoni nga distanca kodin tuaj me të drejtat e kernelit. Sulmi mund të kryhet pa vërtetim, mjafton që moduli ksmbd të aktivizohet në sistem. Problemi është shfaqur që nga kerneli 5.15, i lëshuar në nëntor 2021 dhe është rregulluar në heshtje në përditësimet 5.15.61, 5.18.18 dhe 5.19.2, të lëshuara në gusht 2022. Meqenëse identifikuesi CVE nuk i është caktuar ende problemit, nuk ka informacion të saktë se si të rregullohet problemi në shpërndarje.

Detajet në lidhje me shfrytëzimin e cenueshmërisë nuk janë zbuluar ende; dihet vetëm se dobësia shkaktohet nga qasja në një zonë memorie tashmë të çliruar (Përdorim-Pas-Free) për shkak të mungesës së kontrollit të ekzistencës së një objekti përpara kryerjes së operacioneve. në të. Problemi është për faktin se funksioni smb2_tree_disconnect() çliroi memorien e alokuar për strukturën ksmbd_tree_connect, por pas kësaj kishte ende një tregues të përdorur gjatë përpunimit të disa kërkesave të jashtme që përmbajnë komanda SMB2_TREE_DISCONNECT.

Përveç cenueshmërisë së përmendur, në ksmbd janë rregulluar edhe 4 probleme më pak të rrezikshme:

  • ZDI-22-1688 - ekzekutimi i kodit në distancë me të drejtat e kernelit për shkak të kodit të përpunimit të atributit të skedarit që nuk kontrollon madhësinë aktuale të të dhënave të jashtme përpara se t'i kopjojë ato në një buffer të dedikuar. Dobësia zbutet nga fakti se sulmi mund të kryhet vetëm nga një përdorues i vërtetuar.
  • ZDI-22-1691 - rrjedhje informacioni në distancë nga memoria e kernelit për shkak të kontrollit të gabuar të parametrave të hyrjes në mbajtësin e komandës SMB2_WRITE (sulmi mund të kryhet vetëm nga një përdorues i vërtetuar).
  • ZDI-22-1687 - mohim i largët i shërbimit i shkaktuar nga shterimi i memories së disponueshme në sistem për shkak të lëshimit të gabuar të burimeve në mbajtësin e komandës SMB2_NEGOTIATE (sulmi mund të kryhet pa vërtetim).
  • ZDI-22-1689 - Ndërprerja e kernelit në distancë për shkak të mungesës së vërtetimit të duhur të parametrave të komandës SMB2_TREE_CONNECT, që rezulton në një lexim nga një zonë jashtë tamponit (sulmi mund të kryhet vetëm nga një përdorues i vërtetuar).

Mbështetja për drejtimin e një serveri SMB duke përdorur modulin ksmbd ka qenë e pranishme në paketën Samba që nga lëshimi 4.16.0. Ndryshe nga serveri SMB i hapësirës së përdoruesit, ksmbd është më efikas për sa i përket performancës, konsumit të kujtesës dhe integrimit me veçoritë e avancuara të kernelit. Ksmbd është shpallur si një shtesë Samba me performancë të lartë, e gatshme për të integruar që integrohet me mjetet dhe bibliotekat Samba sipas nevojës. Kodi ksmbd u shkrua nga Namjae Jeon i Samsung dhe Hyunchul Lee i LG, dhe kerneli mirëmbahet nga Steve French i Microsoft, një mirëmbajtës i nënsistemeve CIFS/SMB2/SMB3 në kernel Linux dhe një anëtar i vjetër i ekipit të zhvillimit Samba. , i cili kontribuoi ndjeshëm në zbatimin e mbështetjes për protokollet SMB/CIFS në Samba dhe Linux.

Burimi: opennet.ru

Shto një koment