Тэвіс Армандзі (
LoadLibrary бярэ на сябе функцыі загрузкі бібліятэкі ў памяць і імпарту наяўных знакаў, падаючы Linux-дадатку API у стылі dlopen. Падлучальны код можа адладжвацца пры дапамозе gdb, ASAN і Valgrind. Прадугледжана магчымасць карэкціроўкі выкананага кода падчас выканання праз падключэнне хукаў і накладанне патчаў (runtime patching). Падтрымліваюцца адпрацоўка і размотка (unwinding) выключэнняў для C++.
Мэтай праекта з'яўляецца арганізацыя маштабаванага і эфектыўнага размеркаванага fuzzing-тэставанні DLL-бібліятэк у асяроддзі на базе Linux. У Windows правядзенне fuzzing- і coverage-тэставанні не дазваляе дамагчыся належнай эфектыўнасці і часта патрабуе запуску асобнага віртуалізаванага асобніка Windows, асабліва пры спробе аналізу ўскладненых прадуктаў, такіх як антывіруснае ПА, якія ахопліваюць працу на ўзроўні ядра і прасторы карыстача. Пры дапамозе LoadLibrary даследнікі з Google займаюцца пошукам уразлівасцяў у відэакодэках, антывірусных сканерах, бібліятэках распакавання дадзеных, дэкадавальніка малюнкаў і да т.п.
Напрыклад, пры дапамозе LoadLibrary атрымалася партаваць для запуску ў Linux антывірусны рухавічок Windows Defender. Даследаванне mpengine.dll, які складае аснову Windows Defender, дало магчымасць прааналізаваць вялікі лік ускладненых апрацоўшчыкаў розных фарматаў, эмулятараў ФС і інтэрпрэтатараў моў, патэнцыйна якія прадстаўляюць вектары для
LoadLibrary таксама выкарыстоўваўся пры выяўленні
Крыніца: opennet.ru