Zure kodea urrunetik exekutatzeko aukera ematen duen Linux nukleoko ksmbd moduluan ahultasuna

Ahultasun kritiko bat identifikatu da ksmbd moduluan, Linux nukleoan integratutako SMB protokoloan oinarritutako fitxategi zerbitzari baten inplementazioa barne hartzen duena, urruneko kodea kernel eskubideekin exekutatzeko aukera ematen duena. Erasoa autentifikaziorik gabe egin daiteke, nahikoa da ksmbd modulua sisteman aktibatuta egotea. Arazoa 5.15eko azaroan kaleratutako 2021 kerneletik ageri da eta lasai konpondu zen 5.15.61ko abuztuan sortutako 5.18.18, 5.19.2 eta 2022 eguneraketetan. Arazoari CVE identifikatzailerik esleitu ez zaionez, oraindik ez dago banaketetan arazoa konpontzeko informazio zehatzik.

Ahultasunaren ustiapenari buruzko xehetasunak oraindik ez dira ezagutarazi, jakina da ahultasuna dagoeneko libre dagoen memoria-eremu batera sartzeak (Use-After-Free) eragiten duela, eragiketak egin aurretik objektu baten existentzia egiaztatzen ez delako. horrekin. Arazoa smb2_tree_disconnect() funtzioan ksmbd_tree_connect egiturarako esleitutako memoria askatu zenarekin lotuta dago, baina ondoren SMB2_TREE_DISCONNECT komandoak zituzten kanpoko zenbait eskaera prozesatzeko erakusle bat erabiltzen zen oraindik.

Ksmbd-n aipatutako ahultasunaz gain, arrisku gutxiagoko 4 arazo ere konpondu dira:

  • ZDI-22-1688 - urruneko kodearen exekuzioa nukleoaren eskubideekin, esleitutako bufferera kopiatu aurretik fitxategi-atributuak prozesatzeko kodean kanpoko datuen benetako tamaina egiaztatzen ez delako. Ahultasunaren arriskua arintzen da erasoa autentifikatutako erabiltzaile batek bakarrik egin dezakeelako.
  • ZDI-22-1691 - kerneleko memoriatik urruneko informazioa ihes egiten da SMB2_WRITE komando-kudeatzailean sarrera-parametroen egiaztapen okerra dela eta (erasoa autentifikatutako erabiltzaile batek bakarrik egin dezake).
  • ZDI-22-1687 - urruneko zerbitzua ukatzea sisteman eskuragarri dagoen memoria agortzearen bidez SMB2_NEGOTIATE komando-kudeatzailean baliabideak oker askatzeagatik (erasoa autentifikaziorik gabe egin daiteke).
  • ZDI-22-1689 - urruneko deia nukleoa huts egiteko SMB2_TREE_CONNECT komandoaren parametroak behar bezala egiaztatzen ez direlako, buffer-etik kanpoko eremu batetik irakurtzeko (erasoa autentifikatutako erabiltzaile batek bakarrik egin dezake ).

SMB zerbitzari bat exekutatzeko ksmbd modulua erabiliz Samba paketean sartu da 4.16.0 bertsiotik. Erabiltzaile-espazioko SMB zerbitzari bat ez bezala, ksmbd eraginkorragoa da errendimenduari, memoria-kontsumoari eta kernel-eginbide aurreratuekin integratzeko. Ksmbd Sambarako errendimendu handiko eta txertatutako luzapen gisa aurkezten da, Sambako tresnekin eta liburutegiekin integratuz behar den moduan. Samsung-eko Namjae Jeon-ek eta LG-ko Hyunchul Lee-k idatzi zuten ksmbd kodea, eta Microsoft-eko Steve French-ek nukleoan mantentzen zuen, Linux nukleoko CIFS/SMB2/SMB3 azpisistemen mantentzaileak eta Samba garapen taldeko aspaldiko kidea, ekarpen handia egin zuena. Samba eta Linux-en SMB/CIFS protokoloetarako euskarria ezartzera.

Iturria: opennet.ru

Gehitu iruzkin berria