Сложно делать точные прогнозы о том, как будет развиваться далее эта тенденция, но некоторые предположения можно сделать на основании эксплойтов, опубликованных в первом квартале 2016 года. Их краткие описания представлены ниже.
Атаки с использованием уязвимых антивирусов
TrendMicro
11 января 2016 года исследователь Tavis Ormandy из команды Google Security Research обнаружил критически опасную уязвимость антивируса TrendMicro, приводящую к удаленному выполнению кода.
При установке антивируса по умолчанию устанавливается компонент Password Manager, который прописывается установщиком в автозагрузку. Этот модуль написан на JavaScript с использованием node.js. Он открывает множество RPC-портов для обработки API-запросов по HTTP. Уязвимость была найдена в API-функции openUrlInDefaultBrowser, которая вызывает ShellExecute() без проверки передаваемых аргументов, тем самым допуская выполнение произвольного кода.
x = new XMLHttpRequest()
x.open("GET", "https://localhost:49155/api/
openUrlInDefaultBrowser?url=c:/windows/system32/calc.exe true);
try { x.send(); } catch (e) {};
Патч выпустили через неделю после обращения.
exploit-db.com/exploits/39218
McAfee Application Control
12 января специалисты из австрийской компании SEC Consult опубликовали отчет об успешном обходе защиты McAfee Application Control. Это приложение запрещает запуск приложений, не определенных в белом списке, и предназначено прежде всего для защиты критически важных инфраструктур. Рассматривалась версия 6.1.3.353 под Windows. Были найдены способы запуска неавторизованных приложений в обход защиты, методы запуска произвольного кода, методы обхода программного DEP, реализованного в McAfee Application Control, обхода UAC при включенной защите продукта McAfee, обход защиты от записи в белый список. В довершение были найдены уязвимости драйвера swin1.sys, приводящие к сбою системы.
exploit-db.com/docs/39228.pdf
QuickHeal
19 февраля исследователь Fitzl Csaba написал proof-of-concept, эксплуатирующий уязвимость в популярном индийском антивирусе QuickHeal 16.00. Драйвер webssx.sys оказался подвержен CVE-2015-8285, эксплуатация которой приводит к повышению привилегий либо вызывает BSOD. Драйвер создается без флага FILE\_DEVICE\_SECURE\_OPEN, что позволяет любому пользователю взаимодействовать с этим драйвером в обход ACL. Исследователь нашел IOCTL-код и нужный размер передаваемого драйверу буфера, приводящие к вызову уязвимой функции. Из-за недостаточной проверки получаемых данных из входного буфера возникало целочисленное переполнение аргумента, передаваемого функции memcpy.
exploit-db.com/exploits/39475
Comodo
29 февраля хакер Greg Linares нашел уязвимость в модуле GeekBuddy антивируса Comodo, приводящую к локальному повышению привилегий. Модуль GeekBuddy при выполнении запускает несколько процессов, один из которых пытается подгрузить библиотеку shfolder.dll. Поскольку вместо абсолютного пути в файле, запускаемом GeekBuddy, жестко задано только имя библиотеки — возможна подмена dll. Если поместить вредоносную shfolder.dll в C:\ProgramData\Comodo\lps4\temp\ и запустить обновление клиента или дождаться, пока оно запустится автоматически, пользователь может повысить привилегии до уровня SYSTEM и полностью компрометировать систему.
exploit-db.com/exploits/39508
Avast
4 марта Google Security Research продолжила публиковать уязвимости антивируса Avast. На этот раз была закрыта ошибка, связанная с повреждением памяти при парсинге цифровых сертификатов. Tavis Ormandy создал исполняемый PE-файл, при сканировании которого Avast «падал» с ошибкой. По словам исследователя, ошибка связана с повреждением памяти при парсинге цифровой подписи файла.
exploit-db.com/exploits/39530
McAfee VirusScan
7 марта Maurizio Agazzini опубликовал материал об очередной уязвимости в продуктах McAfee. Исследователь написал эксплойт, позволяющий обходить ограничения безопасности антивируса McAfee VirusScan Enterprise 8.8. Используя найденную уязвимость, пользователь с правами локального администратора мог в обход ограничений безопасности отключить антивирус — не зная его пароля.
Уязвимость была исправлена патчем от 25 февраля, хотя первые обращения автора эксплойта в McAfee датируются осенью 2014 года.
exploit-db.com/exploits/39531
Avira
16 марта критически опасная уязвимость обнаружена в антивирусе Avira. Ожидается, что антивирус должен уметь гарантированно обрабатывать PE-файлы. Тем не менее при тестировании антивируса Avira в режиме сканирования PE-файлов была обнаружена уязвимость типа heap underflow. Ошибка воспроизводилась при парсинге заголовков таблицы секций. Если заголовок секции имел слишком большой RVA, Avira сохраняла вычисленное смещение в буфер на куче и записывала в него данные, контролируемые атакующим (данные из section->PointerToRawData в исходном файле). Уязвимость приводила к RCE с привилегиями NT\_AUTHORITY\SYSTEM. Патч выпущен 18 марта.
exploit-db.com/exploits/39600
И снова Comodo
19 марта опубликован отчет о критически опасной уязвимости в антивирусе Comodo. Этот продукт включает в себя x86-эмулятор, используемый для автоматической распаковки и мониторинга обфусцированных исполняемых файлов. Предполагается, что эмулятор исполняет вредоносный код безопасно в течение небольшого промежутка времени, тем самым давая сэмплу распаковаться или выявить какой-нибудь интересный для детектирования поведенческий признак.
Помимо проблем, связанных с повреждением памяти, при работе эмулятора было обнаружено, что аргументы некоторых опасных эмулируемых API-вызовов передаются в реальные API-функции во время сканирования. Несколько оберток просто извлекают аргументы из эмулируемого адресного пространства и передают их напрямую в системные вызовы, при этом выполняясь с привилегиями NT\_AUTHORITY\SYSTEM. Результаты вызовов затем возвращаются в эмулятор и выполнение кода продолжается.
Это позволяет осуществлять различные сценарии атак. Например, читать, удалять, перечислять и использовать криптографические ключи, взаимодействовать со смарт-картами и другими устройствами. Это возможно, поскольку аргументы CryptoAPI-функций передаются эмулятором напрямую реальным API. Другим примером угрозы стало чтение любых ключей реестра при использовании обертки над RegQueryValueEx, аргументы которой передаются реальной API напрямую.
Этот вектор атаки весьма показателен, поскольку атакующий может вызвать выполнение вредоносного кода в эмуляторе — просто послав жертве электронное письмо или направив ее по ссылке на зараженный сайт. Патч, исправляющий уязвимость, был выпущен 22 марта.
exploit-db.com/exploits/39599
14 марта 2016 обнаружена критически опасная ошибка в антивирусном движке Comodo. Исполнение произвольного кода было возможно при распаковке антивирусом вредоносных файлов, защищенных протектором PackMan. Packman — малоизвестный паковщик с открытым исходным кодом, Comodo распаковывает его в ходе сканирования.
При обработке файлов, сжатых этим паковщиком с определенными опциями, параметры сжатия считываются напрямую из входного файла без валидации. При помощи фаззинга было выявлено, что в функции CAEPACKManUnpack::DoUnpack\_With\_NormalPack можно передать указатель pksDeCodeBuffer.ptr по произвольному адресу, что позволяет атакующему освободить функцией free() произвольный адрес. Уязвимость позволяет злоумышленнику выполнять код с привилегиями NT\_AUTHORITY\SYSTEM. Патч вышел 22 марта.
exploit-db.com/exploits/39601
Что делать
Несмотря на уязвимости антивирусов, совсем отказаться от них затруднительно. В тех случаях, когда требуется анализировать большие объемы файлов, антивирусные движки справляются с работой быстрее альтернативных решений (например, «песочниц»). Это достигается за счет развитого статического анализа.
На наш взгляд, при построении эффективной системы защиты на основе антивирусных решений должны достигаться и точность детектирования, и минимизация рисков, привносимых самим средством защиты. Вот некоторые перспективные направления для решения этой задачи:
— Точность и оперативность обнаружения повышаются при помощи сканирования несколькими антивирусными движками различных производителей. Такую возможность дают некоторые онлайновые сервисы (например, Virustotal.com) – однако в этом случае требуется загружать свои файлы на сторонний ресурс, то есть возникает риск утечки конфиденциальных данных к «третьим лицам». Логично было бы организовать такое сканирование на локальном сервере, без лишних обращений к сторонним приложениям.
— Риски безопасности можно снизить, если исследовать подозрительные файлы в изолированной безопасной среде. При этом надо понимать, что современное вредоносное ПО уже умеет анализировать окружение и обходить некоторые «песочницы», либо не проявлять себя в них. Поэтому необходимо использовать «ловушки», которые максимально похожи на рабочую систему, где можно долго и незаметно наблюдать за поведением зловреда.
— Даже обнаружив вредоносное ПО, антивирус не может выявить все объекты, которые подверглись зловредному воздействию в прошлом, до обнаружения. Поэтому желательно, чтобы защитная система давала возможность ретроспективного анализа.
Эти и другие технологии мы применяем сейчас в разработке системы PT MultiScanner.
Атаки с использованием уязвимых антивирусов
TrendMicro
11 января 2016 года исследователь Tavis Ormandy из команды Google Security Research обнаружил критически опасную уязвимость антивируса TrendMicro, приводящую к удаленному выполнению кода.
При установке антивируса по умолчанию устанавливается компонент Password Manager, который прописывается установщиком в автозагрузку. Этот модуль написан на JavaScript с использованием node.js. Он открывает множество RPC-портов для обработки API-запросов по HTTP. Уязвимость была найдена в API-функции openUrlInDefaultBrowser, которая вызывает ShellExecute() без проверки передаваемых аргументов, тем самым допуская выполнение произвольного кода.
x = new XMLHttpRequest()
x.open("GET", "https://localhost:49155/api/
openUrlInDefaultBrowser?url=c:/windows/system32/calc.exe true);
try { x.send(); } catch (e) {};
Патч выпустили через неделю после обращения.
exploit-db.com/exploits/39218
McAfee Application Control
12 января специалисты из австрийской компании SEC Consult опубликовали отчет об успешном обходе защиты McAfee Application Control. Это приложение запрещает запуск приложений, не определенных в белом списке, и предназначено прежде всего для защиты критически важных инфраструктур. Рассматривалась версия 6.1.3.353 под Windows. Были найдены способы запуска неавторизованных приложений в обход защиты, методы запуска произвольного кода, методы обхода программного DEP, реализованного в McAfee Application Control, обхода UAC при включенной защите продукта McAfee, обход защиты от записи в белый список. В довершение были найдены уязвимости драйвера swin1.sys, приводящие к сбою системы.
exploit-db.com/docs/39228.pdf
QuickHeal
19 февраля исследователь Fitzl Csaba написал proof-of-concept, эксплуатирующий уязвимость в популярном индийском антивирусе QuickHeal 16.00. Драйвер webssx.sys оказался подвержен CVE-2015-8285, эксплуатация которой приводит к повышению привилегий либо вызывает BSOD. Драйвер создается без флага FILE\_DEVICE\_SECURE\_OPEN, что позволяет любому пользователю взаимодействовать с этим драйвером в обход ACL. Исследователь нашел IOCTL-код и нужный размер передаваемого драйверу буфера, приводящие к вызову уязвимой функции. Из-за недостаточной проверки получаемых данных из входного буфера возникало целочисленное переполнение аргумента, передаваемого функции memcpy.
exploit-db.com/exploits/39475
Comodo
29 февраля хакер Greg Linares нашел уязвимость в модуле GeekBuddy антивируса Comodo, приводящую к локальному повышению привилегий. Модуль GeekBuddy при выполнении запускает несколько процессов, один из которых пытается подгрузить библиотеку shfolder.dll. Поскольку вместо абсолютного пути в файле, запускаемом GeekBuddy, жестко задано только имя библиотеки — возможна подмена dll. Если поместить вредоносную shfolder.dll в C:\ProgramData\Comodo\lps4\temp\ и запустить обновление клиента или дождаться, пока оно запустится автоматически, пользователь может повысить привилегии до уровня SYSTEM и полностью компрометировать систему.
exploit-db.com/exploits/39508
Avast
4 марта Google Security Research продолжила публиковать уязвимости антивируса Avast. На этот раз была закрыта ошибка, связанная с повреждением памяти при парсинге цифровых сертификатов. Tavis Ormandy создал исполняемый PE-файл, при сканировании которого Avast «падал» с ошибкой. По словам исследователя, ошибка связана с повреждением памяти при парсинге цифровой подписи файла.
exploit-db.com/exploits/39530
McAfee VirusScan
7 марта Maurizio Agazzini опубликовал материал об очередной уязвимости в продуктах McAfee. Исследователь написал эксплойт, позволяющий обходить ограничения безопасности антивируса McAfee VirusScan Enterprise 8.8. Используя найденную уязвимость, пользователь с правами локального администратора мог в обход ограничений безопасности отключить антивирус — не зная его пароля.
Уязвимость была исправлена патчем от 25 февраля, хотя первые обращения автора эксплойта в McAfee датируются осенью 2014 года.
exploit-db.com/exploits/39531
Avira
16 марта критически опасная уязвимость обнаружена в антивирусе Avira. Ожидается, что антивирус должен уметь гарантированно обрабатывать PE-файлы. Тем не менее при тестировании антивируса Avira в режиме сканирования PE-файлов была обнаружена уязвимость типа heap underflow. Ошибка воспроизводилась при парсинге заголовков таблицы секций. Если заголовок секции имел слишком большой RVA, Avira сохраняла вычисленное смещение в буфер на куче и записывала в него данные, контролируемые атакующим (данные из section->PointerToRawData в исходном файле). Уязвимость приводила к RCE с привилегиями NT\_AUTHORITY\SYSTEM. Патч выпущен 18 марта.
exploit-db.com/exploits/39600
И снова Comodo
19 марта опубликован отчет о критически опасной уязвимости в антивирусе Comodo. Этот продукт включает в себя x86-эмулятор, используемый для автоматической распаковки и мониторинга обфусцированных исполняемых файлов. Предполагается, что эмулятор исполняет вредоносный код безопасно в течение небольшого промежутка времени, тем самым давая сэмплу распаковаться или выявить какой-нибудь интересный для детектирования поведенческий признак.
Помимо проблем, связанных с повреждением памяти, при работе эмулятора было обнаружено, что аргументы некоторых опасных эмулируемых API-вызовов передаются в реальные API-функции во время сканирования. Несколько оберток просто извлекают аргументы из эмулируемого адресного пространства и передают их напрямую в системные вызовы, при этом выполняясь с привилегиями NT\_AUTHORITY\SYSTEM. Результаты вызовов затем возвращаются в эмулятор и выполнение кода продолжается.
Это позволяет осуществлять различные сценарии атак. Например, читать, удалять, перечислять и использовать криптографические ключи, взаимодействовать со смарт-картами и другими устройствами. Это возможно, поскольку аргументы CryptoAPI-функций передаются эмулятором напрямую реальным API. Другим примером угрозы стало чтение любых ключей реестра при использовании обертки над RegQueryValueEx, аргументы которой передаются реальной API напрямую.
Этот вектор атаки весьма показателен, поскольку атакующий может вызвать выполнение вредоносного кода в эмуляторе — просто послав жертве электронное письмо или направив ее по ссылке на зараженный сайт. Патч, исправляющий уязвимость, был выпущен 22 марта.
exploit-db.com/exploits/39599
14 марта 2016 обнаружена критически опасная ошибка в антивирусном движке Comodo. Исполнение произвольного кода было возможно при распаковке антивирусом вредоносных файлов, защищенных протектором PackMan. Packman — малоизвестный паковщик с открытым исходным кодом, Comodo распаковывает его в ходе сканирования.
При обработке файлов, сжатых этим паковщиком с определенными опциями, параметры сжатия считываются напрямую из входного файла без валидации. При помощи фаззинга было выявлено, что в функции CAEPACKManUnpack::DoUnpack\_With\_NormalPack можно передать указатель pksDeCodeBuffer.ptr по произвольному адресу, что позволяет атакующему освободить функцией free() произвольный адрес. Уязвимость позволяет злоумышленнику выполнять код с привилегиями NT\_AUTHORITY\SYSTEM. Патч вышел 22 марта.
exploit-db.com/exploits/39601
Что делать
Несмотря на уязвимости антивирусов, совсем отказаться от них затруднительно. В тех случаях, когда требуется анализировать большие объемы файлов, антивирусные движки справляются с работой быстрее альтернативных решений (например, «песочниц»). Это достигается за счет развитого статического анализа.
На наш взгляд, при построении эффективной системы защиты на основе антивирусных решений должны достигаться и точность детектирования, и минимизация рисков, привносимых самим средством защиты. Вот некоторые перспективные направления для решения этой задачи:
— Точность и оперативность обнаружения повышаются при помощи сканирования несколькими антивирусными движками различных производителей. Такую возможность дают некоторые онлайновые сервисы (например, Virustotal.com) – однако в этом случае требуется загружать свои файлы на сторонний ресурс, то есть возникает риск утечки конфиденциальных данных к «третьим лицам». Логично было бы организовать такое сканирование на локальном сервере, без лишних обращений к сторонним приложениям.
— Риски безопасности можно снизить, если исследовать подозрительные файлы в изолированной безопасной среде. При этом надо понимать, что современное вредоносное ПО уже умеет анализировать окружение и обходить некоторые «песочницы», либо не проявлять себя в них. Поэтому необходимо использовать «ловушки», которые максимально похожи на рабочую систему, где можно долго и незаметно наблюдать за поведением зловреда.
— Даже обнаружив вредоносное ПО, антивирус не может выявить все объекты, которые подверглись зловредному воздействию в прошлом, до обнаружения. Поэтому желательно, чтобы защитная система давала возможность ретроспективного анализа.
Эти и другие технологии мы применяем сейчас в разработке системы PT MultiScanner.
Пт Май 12, 2017 9:09 pm автор Admin
» Шифровальщик CryptXXX 3.0 обезвредили!
Пт Дек 23, 2016 11:43 pm автор Admin
» Вымогатель Kangaroo блокирует пользователям доступ к Windows
Вт Ноя 29, 2016 12:41 am автор Admin
» Microsoft заявляет, что новую 0-day уязвимость в Windows используют хакеры из Fancy Bear
Ср Ноя 02, 2016 3:05 am автор Admin
» 360 Total Security 8.8.0.1083 [Multi/Ru]
Пн Окт 24, 2016 10:06 pm автор Admin
» SecureAPlus Freemium 4.3.3 [Multi/Ru]
Пт Окт 21, 2016 11:31 pm автор Admin
» GridinSoft Anti-Malware [Multi/Ru] - антивирусная утилита!
Пн Авг 15, 2016 12:54 am автор Admin
» Новый вариант трояна Kovter маскируется под обновления для Firefox
Пт Июл 08, 2016 4:14 am автор Admin
» Эксперт представил способ похищения данных через кулер компьютера
Пт Июн 24, 2016 5:24 am автор Admin