Slabost sistema Windows 'MagicDot' omogoča neprivilegirano dejavnost rootkita

Slabost sistema Windows 'MagicDot' omogoča neprivilegirano dejavnost rootkita

Slabost Windows 'MagicDot' omogoča neprivilegirano dejavnost Rootkit PlatoBlockchain Data Intelligence. Navpično iskanje. Ai.

BLACK HAT ASIA – Singapur – Znana težava, povezana s procesom pretvorbe poti DOS v NT v sistemu Windows, odpira veliko tveganje za podjetja, saj napadalcem omogoča, da po izkoriščanju pridobijo zmožnosti, podobne rootkitom, za prikrivanje in lažno predstavljanje datotek, imenikov in procesov.

To pravi Or Yair, varnostni raziskovalec pri SafeBreachu, ki je to težavo opisal med sejo ta teden. Podrobno je opisal tudi štiri različne ranljivosti, povezane s to težavo, ki jih je poimenovan "MagicDot” – vključno z nevarno napako pri oddaljenem izvajanju kode, ki se lahko sproži preprosto z ekstrahiranjem arhiva.

Pike in presledki pri pretvorbi poti DOS v NT

Skupina težav MagicDot obstaja zaradi načina, kako Windows spremeni poti DOS v poti NT.

Ko uporabniki odprejo datoteke ali mape na svojih osebnih računalnikih, Windows to doseže s sklicevanjem na pot, kjer obstaja datoteka; običajno je to pot DOS, ki sledi formatu »C:UsersUserDocumentsexample.txt«. Vendar pa se za dejansko izvedbo operacije odpiranja datoteke uporablja druga osnovna funkcija, imenovana NtCreateFile, in NtCreateFile zahteva pot NT in ne poti DOS. Tako Windows pretvori znano pot DOS, vidno uporabnikom, v pot NT, preden pokliče NtCreateFile, da omogoči operacijo.

Težava, ki jo je mogoče izkoristiti, obstaja, ker Windows med postopkom pretvorbe samodejno odstrani vse pike s poti DOS, skupaj z dodatnimi presledki na koncu. Torej poti DOS, kot so te:

  • C:primerprimer.   

  • C:primerprimer… 

  • C:primerprimer    

so vsi pretvorjeni v “??C:exampleexample” kot pot NT.

Yair je odkril, da bi lahko to samodejno odstranjevanje napačnih znakov omogočilo napadalcem, da ustvarijo posebej oblikovane poti DOS, ki bi bile pretvorjene v poti NT po njihovi izbiri, ki bi jih nato lahko uporabili bodisi za neuporabnost datotek bodisi za prikrivanje zlonamerne vsebine in dejavnosti.

Simulacija neprivilegiranega rootkita

Težave z MagicDot najprej in predvsem ustvarjajo priložnost za številne tehnike po izkoriščanju, ki napadalcem na stroju pomagajo ohraniti prikritost.

Zlonamerno vsebino je na primer mogoče zakleniti in uporabnikom, celo skrbnikom, preprečiti, da bi jo pregledali. »S postavitvijo preproste končne pike na konec imena zlonamerne datoteke ali s poimenovanjem datoteke ali imenika samo s pikami in/ali presledki bi lahko naredil vse programe uporabniškega prostora, ki uporabljajo običajni API, nedostopne zanje … uporabniki bi ne morejo brati, pisati, brisati ali narediti kar koli drugega z njimi,« je med sejo pojasnil Yair.

Nato je Yair v sorodnem napadu ugotovil, da je to tehniko mogoče uporabiti za skrivanje datotek ali imenikov znotraj arhivskih datotek.

"Ime datoteke v arhivu sem preprosto zaključil s piko, da bi preprečil, da bi je Raziskovalec izpisal ali ekstrahiral," je dejal Yair. "Posledično sem zlonamerno datoteko lahko namestil v nedolžni zip - kdorkoli je uporabljal Raziskovalec za ogled in ekstrahiranje vsebine arhiva, ni mogel videti, da ta datoteka obstaja."

Tretja metoda napada vključuje prikrivanje zlonamerne vsebine z lažnim predstavljanjem zakonitih poti datotek.

»Če je obstajala neškodljiva datoteka, imenovana 'benigna', sem lahko [uporabil pretvorbo poti DOS v NT], da sem ustvaril zlonamerno datoteko v istem imeniku [imenovanem tudi] benigna,« je pojasnil in dodal, da enak pristop se lahko uporablja za oponašanje map in celo širših procesov Windows. »Posledično, ko uporabnik prebere zlonamerno datoteko, bi bila namesto tega vrnjena vsebina izvirne neškodljive datoteke,« zaradi česar žrtev ne bi vedela, da dejansko odpira zlonamerno vsebino.

Če pogledamo skupaj, lahko manipulacija poti MagicDot nasprotnikom podeli zmožnosti, podobne rootkitom, brez skrbniških pravic, je pojasnil Yair, ki je objavil podrobne tehnične opombe o metodah napada v tandemu s sejo.

»Ugotovil sem, da lahko skrijem datoteke in procese, skrijem datoteke v arhive, vplivam na vnaprejšnjo analizo datotek, povzročim, da uporabniki upravitelja opravil in raziskovalca procesov mislijo, da je datoteka zlonamerne programske opreme preverjena izvedljiva datoteka, ki jo je objavil Microsoft, onemogočim raziskovalec procesov z zavrnitvijo storitve (DoS) ranljivost in še več,« je dejal – vse brez skrbniških pravic ali zmožnosti izvajanja kode v jedru in brez poseganja v verigo klicev API-ja, ki pridobivajo informacije.

»Pomembno je, da skupnost kibernetske varnosti prepozna to tveganje in razmisli o razvoju tehnik in pravil za odkrivanje neprivilegiranih rootkitov,« je opozoril.

Niz ranljivosti »MagicDot«.

Med raziskovanjem poti MagicDot je Yairu uspelo odkriti tudi štiri različne ranljivosti, povezane z osnovno težavo, od katerih je tri popravil Microsoft.

Ranljivost ene oddaljene izvedbe kode (RCE) (CVE-2023-36396, CVSS 7.8) v novi logiki ekstrahiranja sistema Windows za vse na novo podprte vrste arhivov omogoča napadalcem, da ustvarijo zlonamerni arhiv, ki bi po ekstrakciji pisal kamor koli po lastni izbiri v oddaljenem računalniku, kar bi vodilo do izvajanja kode.

»V bistvu recimo, da naložite arhiv v svoj GitHub repozitorij oglaševanje kot kul orodje, ki je na voljo za prenos,« Yair pove za Dark Reading. »In ko ga uporabnik prenese, to ni izvedljiva datoteka, ampak samo ekstrahirate arhiv, kar velja za popolnoma varno dejanje brez varnostnih tveganj. Toda zdaj lahko ekstrakcija samo izvaja kodo na vašem računalniku, kar je resno napačno in zelo nevarno.«

Druga napaka je ranljivost povečanja privilegijev (EoP) (CVE-2023-32054, CVSS 7.3), ki napadalcem omogoča pisanje v datoteke brez privilegijev z manipulacijo postopka obnovitve prejšnje različice iz senčne kopije.

Tretja napaka je neprivilegirani DOS Process Explorer za napako proti analizi, za katero je bil rezerviran CVE-2023-42757, podrobnosti pa sledijo. In četrta napaka, prav tako težava EoP, omogoča neprivilegiranim napadalcem brisanje datotek. Microsoft je potrdil, da je napaka povzročila "nepričakovano vedenje", vendar še ni izdal CVE ali popravka zanjo.

»V predstavitveni mapi ustvarim mapo z imenom ... notri pa zapišem datoteko z imenom c.txt,« je pojasnil Yair. »Potem, ko skrbnik poskuša izbrisati ... namesto tega se izbriše celotna demo mapa.«

Potencialno širše razvejanosti »MagicDot«.

Medtem ko je Microsoft obravnaval specifične ranljivosti Yaira, samodejno odstranjevanje pik in presledkov pri pretvorbi poti DOS v NT še vedno obstaja, čeprav je to glavni vzrok ranljivosti.

"To pomeni, da je morda veliko več potencialnih ranljivosti in tehnik po izkoriščanju, ki jih je mogoče najti s to težavo," je povedal raziskovalec za Dark Reading. "Ta težava še vedno obstaja in lahko povzroči veliko več težav in ranljivosti, ki so lahko veliko bolj nevarne od tistih, za katere vemo."

Dodaja, da ima problem posledice zunaj Microsofta.

"Verjamemo, da so posledice pomembne ne samo za Microsoft Windows, ki je najbolj razširjen namizni operacijski sistem na svetu, ampak tudi za vse prodajalce programske opreme, od katerih večina dopušča, da znane težave ostajajo od različice do različice njihove programske opreme," je opozoril. v svoji predstavitvi.

Medtem pa lahko razvijalci programske opreme naredijo svojo kodo varnejšo pred tovrstnimi ranljivostmi z uporabo poti NT namesto poti DOS, je opozoril.

"Večina visokonivojskih klicev API v sistemu Windows podpira poti NT," je dejal Yair v svoji predstavitvi. "Z uporabo poti NT se izognete procesu pretvorbe in zagotovite, da je navedena pot enaka poti, po kateri se dejansko izvaja."

Za podjetja bi morale varnostne ekipe ustvariti zaznave, ki iščejo napačna obdobja in presledke v poteh datotek.

»Za te lahko razvijete precej enostavna zaznavanja, da poiščete datoteke ali imenike, ki vsebujejo pike ali presledke, kajti če jih najdete v svojem računalniku, to pomeni, da je nekdo to storil namerno, ker ni To je preprosto narediti,« Yair pove za Dark Reading. »Običajni uporabniki ne morejo preprosto ustvariti datoteke, ki se konča s piko ali presledkom, Microsoft bo to preprečil. Napadalci bodo morali uporabiti a nižji API ki je bližje jedru in bo za to potreboval nekaj strokovnega znanja.«

Časovni žig:

Več od Temno branje