По словам исследователей Якуба Бржечки (Jakub Břečka) и Давида
Матоушека (David Matoušek) из команды веб-ресурса Matousek.com,
им удалось создать способ обхода защиты, встроенной в большинство
популярных настольных антивирусных продуктов. Уязвимы продукты
«Лаборатории Касперского», Dr.Web, Avast!, Sophos, ESET, McAffee,
Symantec, Panda и т. д.
Вирусы, трояны, черви, шпионский код,
руткиты — все они очень любят Windows.
Методика
такова: на вход антивируса посылается безвредный код, проходящий все
защитные барьеры, но, прежде чем он начнет исполняться, производится его
подмена на вредоносную составляющую. Понятно, замена должна произойти
строго в нужный момент, однако на практике всё упрощается благодаря
тому, что современные системы располагают многоядерным окружением, когда
один поток не в состоянии отследить действия параллельных потоков. В
итоге может быть обманут буквально любой Windows-антивирус.
Руткит функционирует в том случае, если антивирусное ПО
использует таблицу дескрипторов системных служб (System Service
Descriptor Table, SSDT) для внесения изменений в участки ядра
операционной системы. Поскольку все современные защитные средства
оперируют на уровне ядра, атака работает на 100%, причем даже в том
случае, если Windows запущена под учётной записью с ограниченными
полномочиями.
Вместе с тем руткит требует загрузки большого объёма кода на
атакуемую машину, поэтому он неприменим, когда требуется сохранить
скорость и незаметность атаки. Кроме того, злоумышленник должен
располагать возможностью выполнения двоичного файла на целевом
компьютере.
Методика может быть скомбинирована с традиционной атакой на уязвимую
версию Acrobat
Reader или Sun Java Virtual Machine,
не пробуждая подозрений у антивируса в истинности намерений. Ну а затем
хакер волен и вовсе уничтожить все защитные барьеры, полностью удалив из
системы мешающий антивирус.