Специалисты компании Cybellum разработали новую технику атак, получившую имя «Двойной агент» (DoubleAgent). Этот метод позволяет обмануть защитные решения и другие приложения, заставив их выполнять вредоносные действия. Причем главным инструментом для реализации атаки выступает абсолютно легитимный инструмент Microsoft Application Verifier.
Как не трудно догадаться, Microsoft Application Verifier был создан специалистами самой Microsoft и предназначен для разработчиков: с его помощью они могут протестировать свои приложения и обнаружить ошибки. Инструмент поставляется вместе со всеми версиями Windows, начиная со времен Windows XP. Исследователи Cybellum объясняют, что Application Verifier в частности создан для поиска багов, связанных с нарушением целостности памяти и других критических уязвимостей, а проблема заключается в том, как инструмент работает с DLL.
Во время работы Application Verifier загружает так называемый «verifier provider DLL» в процесс тестируемого приложения. После создания DLL добавляется в реестр Windows, как provider DLL, после чего Windows автоматически осуществляет инъекцию DLL в соответствующие процессы. По данным Cybellum, всё это злоумышленник может обратить в свою пользу, заменив стандартный verifier своим собственным. Так, после простых манипуляций с реестром и предоставления своего собственного DLL, атакующий может внедриться в работу любого легитимного приложения.
Данный трюк работает и против ряда антивирусов. Исследователи пишут, что сообщили о проблеме всем производителям уязвимых защитных решений, выждали положенные 90 дней и до сих пор работают с некоторыми из них над устранением проблемы. Патчи пока представили только Malwarebytes, AVG и Trend Micro. Cybellum предупреждает, что перед атакой DoubleAgent уязвимы продукты следующих компаний:
- Avast (CVE-2017-5567)
- AVG (CVE-2017-5566)
- Avira (CVE-2017-6417)
- Bitdefender (CVE-2017-6186)
- Trend Micro (CVE-2017-5565)
- Comodo
- ESET
- F-Secure
- Kaspersky
- Malwarebytes
- McAfee
- Panda
- Quick Heal
- Norton
Хотя исследователи посвятили немалую часть своего технического отчета антивирусам, уязвимы не только они. DoubleAgent может использоваться для компрометации абсолютно любого процесса, и заражение будет перманентным, Windows Loader будет осуществлять инъекцию каждый раз во время запуска процесса, а перезагрузки, обновления, патчи и переустановки софта не помогут. А после заражения приложение может использоваться для осуществления самых разных вредоносных действий, начиная от установки бэкдоров и заканчивая удалением и шифрованием файлов.
«Эта техника может использоваться для атаки на ЛЮБОЕ приложение, даже на приложения самой операционной системы, — рассказывают исследователи. — Нет нужды как-то изменять наш POC-код, достаточно просто выполнить его для нужного приложения, и оно будет автоматически атаковано, и не важно, антивирус это или нечто другое».
Proof-of-concept эксплоит исследователи выложили на GitHub, где он доступен всем желающим. Также специалисты Cybellum продемонстрировали «Двойного агента» в действии, опубликовав видеоролик, который можно увидеть ниже.
Также исследователи советуют разработчикам антивирусов использовать механизм Microsoft Protected Processes, который был представлен в Windows 8.1 и как раз призван защитить приложения от подозрительных инъекций кода. В настоящий момент только Windows Defender использует Protected Processes.
UPD
Эксперт по безопасности Windows Алекс Ионеску (Alex Ionescu) обвинил Cybellum в плагиате и лжи. Специалист уверяет, что компания выдает за собственное исследование его доклад с конференции Recon 2015, к тому же искажает факты, называя функции Application Verifier незадокументирвоанными. По словам Ионеску, это просто PR.
Shocking news. Another "next gen" cyber company takes my research (Recon 2015: Hooking Nirvana) and creates FUD https://t.co/88eVz9vzE5
— Alex Ionescu (@aionescu) March 22, 2017
"Our researchers discovered an undocumented ability of Application Verifier that gives an attacker [...]"" Discovered" == attended a talk.
— Alex Ionescu (@aionescu) March 22, 2017
1. Attend someone's talk at Recon. 2. Start a next-gen cybersecurity company. 3. File CVEs. 4. Come up with fancy marketing bullshit.
— Alex Ionescu (@aionescu) March 22, 2017
Cyberbellum's """Zero-Day""" uses such an """undocumented""" Windows feature that even Microsoft blogged about it: https://t.co/4Ll3auSVaE
— Alex Ionescu (@aionescu) March 22, 2017
Представители Comodo, в свою очередь, заявили, что Comodo Internet Security не уязвим пред атаками DoubleAgent, несмотря на заявления Cybellum. В ответ исследователи создали proof-of-concept эксплоит для решения Comodo и опубликовали видеодемострацию его работы.