Спецпроекты

Безопасность Маркет

С помощью бесплатных антивирусов Avast, AVG и Avira можно взломать Windows

Выявленные проблемы в бесплатных антивирусах обеспечивают злоумышленникам возможность подгрузки произвольных DLL-файлов. Для эксплуатации, однако, потребуются администраторские полномочия.

Неверным путем

В бесплатных антивирусах Avast, AVG и Avira выявлены серьезные уязвимости, позволяющие злоумышленнику посредством загрузки вредоносного DLL-файла повышать свои привилегии в системе.

Эксперты компании SafeBreach Labs обнаружили, что во всех версиях Avast Antivirus и AVG Antivirus присутствует одна и та же уязвимость, благодаря которой потенциальный злоумышленник может обходить всю защиту системы, правда, при условии, что у атакующего уже есть административные права.

По данным экспертов SafeBreach, уязвимость позволяет загружать произвольную, неподписанную библиотеку DLL в процессы, запускаемые как NTAuthority\System, то есть с высшими возможными привилегиями. Даже те из процессов, которые используют Protected Process Light, оказываются уязвимы.

В частности, процесс самого антивируса — AVGSvc.exe, максимально защищенный и обладающий высшими (системными) привилегиями, пытается при запуске загружать библиотеку wbemcomn.dll с путем C:\Windows\System32\wbem\wbemcomn.dll, хотя в реальности этот файл находится в самом каталоге System32, а не в субкаталоге wbem.

В то время как у антивируса AVG есть защитный механизм, предотвращающий запись вредоносных DLL в его папки, этот механизм можно обойти, записав DLL в незащищенный каталог, из которого приложение загружает другие компоненты

haker600.jpg
В антивирусах Avast, AVG и Avira выявлены серьезные уязвимости

Эксперт SafeBreach скомпилировали неподписанный DLL из оригинального wbemcomn.dll и записали новый файл в C:\ProgramFiles\System32\. Антивирус загрузил его с привилегиями уровня System.

Уязвимость затрагивает все варианты Avast Antivirus и AVG Antivirus до версии 19.8. AVG является дочерним предприятием Avast, и оба антивируса как минимум частично используют один и тот же программный код.

Уязвимость, получившая индекс CVE-2019-17093, была устранена 26 сентября 2019 г.

Недостатки валидации

Еще один баг был выявлен в Avira Antivirus 2019. Он также позволяет обходить защиту антивируса, заодно обеспечивая вредоносному коду злоумышленников постоянное присутствие в системе и повышение привилегий: неподписанный DLL можно загрузить сразу в несколько процессов, запущенных от NTAuthority\System. Но, как и в первом случае, потребуются административные права.

Как выяснили эксперты, служба Avira ServiceHost пытается загрузить DLL-библиотеку из неправильного источника (точнее, не из того каталога, который следует). Для эксплуатации уязвимости достаточно будет «подсунуть» в этот каталог нужную DLL.

Та же проблема затрагивает процессы Avira System Speedup, Avira Software Updater и Avira Optimizer Host.

По мнению экспертов, источником проблемы является отсутствие надлежащей проверки цифровых сертификатов (подписей) для некоторых DLL, в частности, библиотеки Wintrust.dll. Валидация не происходит потому, что за нее должна отвечать функция WinVerifyTrust, но она-то как раз в этой библиотеке и находится, а следовательно, еще не может быть запущена. Таким образом, появляется возможность загрузки произвольной DLL вместо нужного файла.

Кроме того, у антивируса нет (точнее, ввиду внесенных исправлений) не предусматривалось адекватной защиты для основного каталога, в котором располагаются исполняемые файлы антивируса.

Проблема была устранена 18 сентября 2019 г.

«Пользователи ожидают от антивирусов защиты, а не проблем, даже от бесплатных, — говорит Михаил Зайцев, эксперт по информационной безопасности компании SEC Consult Services. — С другой стороны, антивирусы пишут отнюдь не боги, и ошибки случаются у всех. Вопрос в том, насколько адекватно производится тестирование разработки перед ее выпуском. В данном случае, похоже, необходимое тестирование произвели postfactum сторонние исследователи».

Роман Георгиев

Короткая ссылка