Смерть защитам Николай «gorl» Андреев Хакер, номер #081, стр. 081-124-1 (gorlum@real.xakep.ru) Отучаем персональные защиты от вредной привычки портить жизнь хакеру Ух, ты бы знал, как мне надоели все эти защиты. Антивирусы, файрволы всякие. Фу! В печенках уже сидят. Стоит одному моему процессу другой модифицировать, так они сразу орать начинают и в интернет не пускают, а во всех относительно безвредных хакерских приложениях они видят вирусы – кошмар! Этому должен прийти конец. Надо отучить дурацкие защиты от их идиотской привычки портить жизнь нормальному добропорядочному хакеру. Что ж, этим и займемся. Я тут провел некоторые исследования, посидел с отладчиком и дизассемблером и пришел к выводу, что подавляющее большинство всех персональных защит для Windows основано чуть ли не на хакерском принципе! Ну, по крайней мере, именно за счет него многие современные трояны прячутся от глаз чересчур любопытного пользователя (подробнее об этом читай в статье «Программа-невидимка» в мартовском номере). Да, ты правильно понял, я говорю о перехвате API. Защиты перехватывают некоторые важные, по мнению разработчиков, системные функции и следят за тем, чтобы с их помощью у хакера не вышло сделать какой-нибудь гадости. Препятствуют запуску вирусов, не пускают в сеть процессы с внедренным троянским кодом и т.п., в общем, пытаются навести порядок путем постоянного мониторинга важных системных событий. Взять, к примеру, замечательный персональный файрвол Agnitum Outpost. Начиная, если я не ошибаюсь, с версии 2.5, для того чтобы предотвратить обход с помощью внедрения и запуска кода в адресном пространстве доверенного приложения (подробнее о нем читай в статье «Клизма файрволу» в Хакере за декабрь 2004 года) он перехватывает низкоуровневую часть системного события модификации памяти процесса, функцию NtWriteVirtualMemory. Если вдруг троян внедрит свой код, например, в iexplore.exe, аутпост мгновенно на это дело отреагирует, запретив модифицированному браузеру вылезать в сеть. Тут имеет место только один перехват, зато какой противный! Древний как Windows 2000 способ обхода файрвола обламывается и целая туча приватных троянов, его использующих, летит в тартарары. Или, другой пример – до коликов любимый вирмейкерами Антивирус Касперского. В плане перехватов – это просто монстр! Он коверкает аж 9 не самых последних Native API функций, среди которых: и NtCreateProcess для слежения за запуском приложений (вернее, за запуском вирусов) и даже NtOpenProcess для предотвращения хакерского вмешательства в работу антивирусного монитора (AVP просто не даст открыть собственный процесс). Неприятная защита - и вирусы старается не дать запустить и себя не дает убить. А теперь представь, что у нас появилась возможность лишить все эти и многие другие персональные защиты их перехватов. Представь: AVP прекращает следить за вирусами, Outpost не блокирует больше модифицированный трояном браузер, какой-нибудь ZoneAlarm на максимальном уровне безопасности вместо того чтобы сообщать о каждом запускаемом неизвестном приложении молчит – любая защита так или иначе мониторящая систему вдруг затыкается. Не прекращает работать, не вываливается с сообщением об ошибке, а просто замолкает. Ни тебе вирусных предупреждений, ни файрвольных ругательств – звучит неплохо, правда? |