LoadLibrary, një shtresë për ngarkimin e DLL Windows në aplikacionet Linux

Tavis Ormandy (Tavis Ormandy), hulumtues i sigurisë nga Google, po zhvillon projektin LoadLibrary, i cili ka si qëllim portimin e bibliotekave DLL të mbledhura për Windows për t'u përdorur në aplikacionet për Linux. Projekti ofron një bibliotekë ndihmëse, me të cilën mund të ngarkohet një skedar DLL në formatin PE/COFF dhe të thirren funksionet e caktuara brenda tij. Ngarkuesi PE/COFF bazohet në kodin ndiswrapper. Kodi i projektit distribuohet nën licencën GPLv2.

LoadLibrary merr përsipër funksionet e ngarkimit të bibliotekave në memorje dhe importimin e simboleve të disponueshme, duke ofruar një API për aplikacionin Linux në stilin e dlopen. Kodi i lidhur mund të debugohet me ndihmën e gdb, ASAN dhe Valgrind. Parashikohet mundësia e modifikimit të kodit ekzekutiv gjatë ekzekutimit përmes lidhjes së hooks dhe vendosjes së patches (runtime patching). Mbështeten përpunimet dhe shfletimi (unwinding) i përjashtimeve për C++.

Qëllimi i projektit është organizimi i testimeve fuzzing të shkallëzuara dhe efektive për bibliotekat DLL në një mjedis të bazuar në Linux. Në Windows, kryerja e testeve fuzzing dhe coverage nuk arrin të japë efikasitetin e duhur dhe shpesh kërkon ekzekutimin e një instance të veçantë të virtualizuar të Windows, veçanërisht kur tentoni të analizoni produkte komplekse, siç janë softuerët antivirus, të cilët mbulojnë operimin në nivelin e bërthamës dhe hapësirës së përdoruesit. Me ndihmën e LoadLibrary, hulumtuesit nga Google janë angazhuar në gjetjen e vulnerabiliteteve në kodekët video, skanuesit antivirus, bibliotekat e shpaketimit të të dhënave, dekoduesit e imazheve, etj.

Për shembull, me ndihmën e LoadLibrary u arrit të portifikohej motorin antivirus Windows Defender për ekzekutimin në Linux. Hulumtimi i mpengine.dll, që përbën bazën e Windows Defender, dha mundësinë për të analizuar një numër të madh të përpunuesve kompleks të formateve të ndryshme, emulatorëve të FS dhe interpretorëve të gjuhëve, që potencialisht ofrojnë vektorë për realizimet sulm.

LoadLibrary gjithashtu u përdor në identifikimin e vulnerabilitetit të largët në paketën antivirus Avast. Në studimin e DLL-së nga ky antivirus, u zbulua se procesi kryesor me privilegje i skanimit përfshin një interpretor të plotë JavaScript, i përdorur për të imituar ekzekutimin e kodit të jashtëm JavaScript. Ky proces nuk është i izoluar në një ambient sandbox, nuk heq privilegjet dhe kryen analizën e të dhënave të papërcaktuara nga FS dhe trafiku rrjetor të kapur. Duke qenë se çdo vulnerabilitet në këtë proces kompleks dhe të pambrojtur potencialisht mund të çojë në komprometimin e largët të tërë sistemit, mbi bazën e LoadLibrary u zhvillua një shell speciale avscript për analizimin e vulnerabiliteteve në skanuesin antivirus Avast në një mjedis të bazuar në Linux.

Burimi: opennet.ru

Bleni hostim tĂ« besueshĂ«m pĂ«r faqe me mbrojtje nga DDoS, serverĂ« VPS VDS đŸ”„ Bleni hostim tĂ« besueshĂ«m pĂ«r faqe me mbrojtje nga DDoS, serverĂ« VPS VDS | ProHoster