Опубликован способ обхода большинства современных антивирусов dl // 09.05.10 19:53
Исследователи из matousec.com описали метод, позволяющий обходить практически все современные антивирусные системы, работающие под Windows (в исследовании перечислено 34 уязвимых продукта, но список вполне может быть расширен). [Не забывайте при копировании материала указывать полный адрес источника: //bugtraq.ru/rsn/archive/2010/05/05.html] Метод ориентируется на антивирусы, использущие популярный способ по встраиванию кода в ядро системы с помощью модификации System Service Descriptor Table (SSDT).
Суть метода заключается в подсовывании системному драйверу безопасного кода с последующей подменой его на атакующий код (после того как безопасный код прошел все проверки). Атака должна быть точно выверена по времени, чтобы подмена не произошла слишком рано или слишком поздно, но задача упрощается на современных многоядерных процессорах.
Результатом атаки может быть как исполнение кода, который был бы заблокирован антивирусом в другой ситуации, так и блокировка либо удаление антивируса непривилегированным пользователем. У атаки есть определенные ограничения, поскольку она использует большое количество кода. Так что она не очень пригодна для быстрого незаметного проникновения, но вполне может быть скомбинирована с установкой поддельных крупных продуктов.
Вообще метод довольно интересный и в данном случае (в отличие от всяких чОрных экранов смерти и прочей "чумы") совершенно реальный. Но журналисты и здесь все переврали
Опубликован способ обхода всех современных антивирусов Ну, во первых не всех, скажем Forefront/MSSE в списке не значатся (в основном потому, что в MS запрещено стыковать разные продукты при помощи недокументированных API - anticompetitive и все такое, но об этом позже).
Исследователи из matousec.com описали метод, позволяющий обходить практически все современные антивирусные системы, работающие под Windows Во-вторых, атака действительно имеет место быть и действительно позволяет обходить т.н. "проактивную" защиту. По крайней мере значительные ее части. Но именно и только ее. Антивирусные мониторы таким способом не обойти, потому как там используются (мини)фильтры файловых систем, не имеющие никакого отношения к SSDT.
Метод ориентируется на антивирусы, использущие штатный способ по встраиванию кода в ядро системы с помощью модификации System Service Descriptor Table (SSDT). Этот способ какой угодно, но уж никак не штатный. Настолько не штатный, что на x64 системах, PatchGuard немедленно уведет систему в bugcheck при попытке использования этого штатного метода. Он нигде не документирован и, соответственно, не рекомендован к использованию. MSSE, не использующий хуков SSDT этой уязвимости не подвержен (как и большинство антивирусов с отключенной проактивной защитой).
я так понял, что без этих хуков все еще проще, но могу ошибаться10.05.10 13:27 Автор: dl <Dmitry Leonov>
Не совсем. Без этих хуков, не будет например работать защита процессов от прибивания (многие антивирусы балуются таким) или защита от загрузки недоверенных драйверов (здесь опять таки, антивирусный монитор не обходится - он все так же просканирует бинарник драйвера перед загрузкой).
Что предлагает MS по этому поводу:
1. Не работать под администратором/не выключать UAC. При отсутствии прав на открытие процесса (а антивирусные процессы чаще всего запускается как сервисы) его и завершить нельзя.
2. Работать на x64 системах (честно говоря уже не помню чего с этим в x86 - кажется есть настройка, позволяющая форсить проверку подписей для драйверов). Собственно совершенно очевидно, что от подписывания малвари никто не застрахован, но сертификат отзовут быстрее (ну или во всяком случае не медленнее), чем обновят антивирусные базы
Резюмируя, уязвимость действительно есть (это важный момент, ибо уж очень часто шумиха поднимается на пустом месте вообще), но она не настолько критичная, как это описывается в том же The Register (причем, опять таки, оригинальные авторы и не пытаются преувеличивать, это сделала именно пресса).