Информационная безопасность

индекс
289,97

Об обходе антивирусов на практике

На днях в этом блоге была опубликована ссылка на новость об универсальной методике обхода антивирусов. Впрочем, силами цепочки английских и русских журналистов-копипейстеров суть сообщения искажена в столь несовместимую с разумом и реальностью ересь, что мне — специалисту по (анти)вирусным технологиям — пришлось перечитать текст дважды, прежде чем я поняла, о чем примерно идет речь. Поэтому рекомендуется ознакомиться с источником.

Я не буду комментировать предложенную концепцию — с этой задачей успешно справятся производители антивирусов. Суть в другом: обход антивирусной защиты — не наука о ракетах, требующая концептуального подхода, а вполне обыденное явление. Для иллюстрации этого факта я приведу несколько технических примеров из жизни.

Антивирусы-лузерыПримеры будут извлечены из нашей любимой зверюшки — бота-руткита TDSS, о котором в последнее время много говорят. Что и не удивительно: это один из наиболее распространенных, технически продвинутых и активно развивающихся ботов.

На диаграмме слева отображена статистика по антивирусным защитам, установленным на компьютерах пользователей одновременно с заражением TDSS.


Примечания к диаграмме:
  1. Исходные данные — статистика от пользователей утилиты TDSS Remover за первый квартал 2010 г.
  2. Всего было обработано порядка тысячи зараженных машин
  3. Из них 12% были оснащены известными нам антивирусами
  4. На диаграмме не отображена статистика по антивирусам, которые провалили лечение, но при этом не блокируют и не скрывают свои файлы. Факт блокировки или скрытия файлов попадает в статистику, как значимая для антируткита аномалия.

Несколько слов о зверюшке


Появившись около двух лет назад, бот-руткит TDSS (также известный как Alureon, Tidserv, TDL/TDL2/TDL3+) тихо и незаметно размножился до тревожных цифр.

А именно:
  • Семейство TDSS (здесь — Alureon) занимает третье место по числу зараженных машин в апреле 2010 г.
  • Ботнет TDSS (здесь — Tidserv) входит в TOP10 крупнейших ботнетов в мире, представляя собой популяцию численностью в 1,5 млн. зомби-машин только в US
  • По данным наших собственных изысканий, цифра «1,5 млн.» зараженных машин сильно преуменьшена.

Основополагающий фактор столь стремительной и, вместе с тем, бесшумной победы — ставка на обход антивирусов и передовые технологии. Задача успешно решается с первых дней существования бота и по сей день: по мере того, как антивирусы обновляются — обновляются и технологии их обхода в коде TDSS, неизменно радуя исследователей и «радуя» разработчиков защит оригинальностью нововведений.

Фактически, на протяжении всего времени существования TDSS, он был непрерывно недостижим для всех существующих средств защиты, включая наиболее популярные антивирусы и профессиональные антируткиты. Более того, до недавнего времени бот незаметно развивался под прикрытием собственной эффективности, так как производителям антивирусов было невыгодно предавать огласке угрозу, с которой они не справляются.

За последние полгода ситуация немного улучшилась. Противостояние продолжается, «большие» антивирусы по-прежнему не справляются, зато начали выпускать специализированные утилиты-лечилки (Norman TDSS Cleaner, Kaspersky TDSSKiller).

Обход антивирусов: техническая справка


С точки зрения выживания, перед вредоносной программой стоят две важнейшие задачи:
  1. На этапе инсталляции — обход поведенческой защиты (HIPS, проактивная защита, песочница).
    Методы: использование легитимных системных механизмов, не предусмотренных разработчиками защиты, и «белых списков» защиты; реже — эксплуатация уязвимостей в коде антивируса или операционной системы.
  2. На этапе активного заражения — защита собственного кода от обнаружения и удаления.
    Методы: от запрета антивирусных обновлений и блокировки доступа к файлам, до сокрытия файлов (rootkit-технологии) и их полного отсутствия (об этом — ниже).

Примеры техник обхода защиты


Техники приведены в том порядке, в каком мы находили их в эволюционирующем TDSS. Все описанные приемы уже не столь эффективны, как были на момент их появления.

Пример №1. Системный кеш динамических библиотек

Суть техники: вредоносный код размещается в системном кеше часто используемых библиотек \KnownDLLS, откуда вызывается легитимным системным приложением при использовании им одной из этих библиотек.

Профит: одним выстрелом убиты два зайца: обход поведенческой защиты и обход персонального фаервола. Последнее возможно благодаря тому, что вредоносный код выполняется в контексте системного процесса, «доверенного» по умолчанию.

Псевдо-код:

// 1. размещаем вредоносный код в кеше часто используемых библиотек
NtCreateSection(”\knowndlls\dll.dll”)
// 2. обеспечиваем переход на этот код из легитимной библиотеки,
// пока что - в ее копии на диске
CopyFile(”msi.dll”, "patched_msi.dll")
WriteFile("patched_msi.dll", <прыжок в dll.dll>)
// 3. подменяем эту библиотеку в кеше
NtOpenSection(”\knowndlls\msi.dll”)
NtMakeTemporaryObject(...) // секция стала временной, и теперь может быть...
CloseHandle(...) // удалена
NtCreateSection(”patched_msi.dll”)
// 4. вызов системного сервиса, который исполнит код msi.dll => dll.dll
StartService (”Windows Installer (msiexec.exe)”)


Пример №2. Диспетчер печати

Суть техники та же, что и в предыдущем примере — пассивное внедрение в системный процесс. Механизм несколько иной: вредоносный код подсовывается сервису диспетчера печати под видом его служебной библиотеки.

Псевдо-код:

//1. копируем вредоносный код в служебную директорию диспетчера печати
GetPrintProcessorDirectory(...)
GetTempFileName(...)
CopyFile(<self>,<tempname>)
// 2. сервис диспетчера печати должен быть запущен
StartService("spooler")
// 3. передаем ему вредоносный код
AddPrintProcessor(<tempname>)


Пример №3. Заражение легитимного драйвера

Предыдущие примеры иллюстрировали обход поведенческой защиты. Теперь рассмотрим, как TDSS избегает обнаружения и лечения.

Суть подхода: сведение к минимуму изменений, вносимых в систему, + мощная низкоуровневая маскировка оставшихся «хвостов».

Начиная с конца прошлого года, у TDSS фактически нет ни собственных файлов, ни ссылок на него в списках автозапуска. Мощность маскировки «хвостов» обеспечивается тем, что фильтры руткита расположены уровнем ниже всех существующих технологий антируткитов.

  1. Осуществляется микрозаражение драйвера минипорта диска (atapi.sys для IDE-дисков, iastor.sys для всех остальных). Размер драйвера не меняется, а код инфекции минимален и обеспечивает только подгрузку основного тела руткита.
    Профит: автозагрузка вместе с драйвером минипорта.
  2. Код и файл конфигурации руткита хранятся в последних секторах диска, в собственной файловой системе.
    Профит: файлы руткита «не существуют» для операционной системы, но остаются доступными для приложений, знающих секретный путь к ним.
  3. Маскировка инфекции системного драйвера и последних секторов диска осуществляется посредством фильтрации данных на уровне минипорта.
    Профит: невидимость для всех существующих механизмов защиты (смотри схему).

Пример №4. «Одношаговка»

В конце апреля бот в очередной раз обновился.

version=3.273
builddate=20.4.2010 16:17:53


На этот раз, задача обхода защит решена минимальной модификацией техник из уже существующего арсенала. А именно:
  1. Файлы atapi.sys/iastor.sys под бдительным наблюдением защиты? — В новой версии заражается случайный драйвер.
  2. Поведенческие защиты научились замечать вызов функции AddPrintProcessor — он был заменен на вызов схожей функции AddPrintProvidor. (!)
  3. Некоторые утилиты-лечилки добирались до защищенных областей руткита на диске через интерфейс SCSI Pass Through — в новой версии руткита соответствующие этому механизму IRP фильтруются.

Замечу, что именно такая, как в последнем примере, примитивная одношаговая схема обхода защиты встречается на каждом шагу в массовых вредоносных программах. Такое решение не требует ни особой гениальности от разработчика, ни особых уязвимостей от защиты, и характеризуется крайне малым сроком жизни.

Техники же сложные (как в Примере №3) или хитрые (Примеры №1 и 2) больше характерны для хорошо финансируемых целевых руткитов. Открытым остается вопрос, потеряла ли команда TDSS своего лучшего разработчика, или все же изрядную долю финансирования?..
+139
13 мая 2010, 17:06
57

комментарии (127)

+3
vilgeforce #
Учите-учите… :-)
–17
body #
На самом деле у каждого пользователя на машине уже установлено приличное количество различных «хорошо финансируемых руткитов» в лице различного софта и один МэйнРуткит в лице ОС :-)
–13
MAXH0 #
Не у всех… Порядка 1% могут контролировать, что делает система…
+3
khizhaster #
Правда-правда? Смею вас заверить, что вы жестоко ошибаетесь. Погуглите по ключевым словам «сокрытие процесса Linux|Mac руткит», поудивляйтесь. Под этот 1% тоже существует немало техник, другое дело, что пока это мало кому нужно, их то всего 1%, нет массы.
0
SADKO #
О вы заблуждаетесь, это очень даже нужно, для совершенно особых задач…
Вы только представьте себе что могу устроить сервера-зомби!
Но тут многое зависит от квалификации админа, который сервер настраивал, тк там есть и эффективные способы противостояния, а вот если какой-нибудь умник просто, тупо поставит бубунту-сервер, то это потенциальный зомби из коробки на широком интернет канале :-)
+5
akzhan #
Рут-киты под Linux — очень неплохо распространены.
+9
basilisk #
FYI: Сам термин rootkit пришёл из мира юниксов ;)
–6
monoxrom #
microsoft virus
–19
rule #
бедные виндовз-пользователи, сколько же подстеригает Вас опасностей :-)
+1
taliban #
не волнуйтесь, к вам уже тоже ползут…
+3
charon #
страшная статья. Чем больше такое читаю, тем больше понимаю, что никакой защиты нет. А для понимания даже того факта, что ты заражён, уже необходимы знания уровня системного программиста.
Какие вы посоветует эффективные средства проверки/лечения столь сложных зловредов? Помогают ли ЛивСД и если да, то какие?
–13
VasyaMobile #
Для проверки/лечения можно пользоваться стандартной утилитой «переустановка Windows раз в месяц», что и делают многие.
+6
charon #
извините, но не подходит. У меня Виндоус годами живёт. Слишком большие затраты времени.
+2
VasyaMobile #
Системный скрытый раздел востановления. За полчаса новая винда. Предварительно документы и данные сохраняем на др место.
+1
alexleo #
Можно обойтись без предварительного сохранения документов и данных. Их можно поместить на другие разделы (по одному на пользователя), смонтировать их в папки документов (назначив путь к \Users\%name%\Documents точкой монтирования вместо буквы дисков), после чего восстановление системы из раздела восстановления становится безопасной в смысле данных пользователей задачей. Проделывал такое неоднократно.
–2
tkf #
Главная проблема в том что вирус может залезть как раз в эти данные и документы, или хорошенько спрятаться в том разделе, и после отката сразу же опять заразить систему. А так как в разделе восстановления антивирь скорей всего не обновляется, его задавят пока он ничего не знает, а дальше он будет верить что все хорошо. Разве что монтировать раздел данными только после того как все восстановлено, обновления накатаны и сразу же проверять на всяк случай. И так знакомый принцип установки, выдернуть сетевой шнур, поставить винду, накатить сервис паки, и только потом воткнуть сетевой шнур, а то от перестановки толку мало :)
Linux наше все. Хотя что то спрятать в линуксе это имхо еще проще чем под виндой, сырцы то доступны, качаем сырцы какой нибудь важной либы, накладываем патч, пересобираем, заменяем, и все, мы теперь есть, но не одна скотина нас не видит.
Просто в линуксе софт то не всегда собирается без бубна, так что ждем бубновирус :) (а вот распространенные дистры аля Ubuntu и Fedora это неплохая цель для вируса. Ведь их много, и точно известно что, где и как )
НЛО прилетело и опубликовало эту надпись здесь
+10
Screatch #
Я это осознал 2 года назад когда с другом just 4 fun сели и за 3 дня, с затратами в 2$, сделали пинч который сливал все пароли, отсылал и самоуничтожался с компьютера. Затраты в 2$ понадобилсь что бы закриптовать вирус и должен сказать что после криптовки он 2 дня не палился ни одним популярным антивирусом. После этого я потерял веру в антивирусы. Для того что бы активировать вирус, достаточно было зайти на сайт где в код страницы внедрён вредоносный код который на фоне скачивает вирус. На этом этапе многое зависило от браузера. Если у Вас были эксплойты для браузеров, то всё работало. Если нет, то приходилось покупать приватные которые стоили 25-100$. Но даже со сплойтами в открытом доступе нам удавалось через браузер Опера (Последней версии на тот момент) заразить компьютер.

Вот такое короткое пособие для вирусописателей)
+3
LMaster #
В то время у вас MDAC пробивал 6-ой ослик, на котором сидели почти все юзеры. Сейчас НОРМАЛЬНЫЕ связки как-то подорожали, а толку от них мало.
+3
eRaider #
Приватный эксплойт за 25-100 — сказка. За 2500 — 10000 это реально.
0
Screatch #
Ну это да, но с нашим бюджетом мы смотрели скорее не приватные а такие) Которые продовали за дёшево и в много рук ;)
–5
Screatch #
Use Linux dear friend ;)
0
Krypt #
На самом деле всё зависит от популярности системы. Спасёт только самописная операционка на самодельном компе (с точностью до безопасности хардварных компонентов)
–2
Bkmz #
Это не Unix-way =)
+1
webhead #
Можно на Синклеры обратно пересесть
0
Iwamoto #
если только на кассетные:)
0
deniszh #
Use QubeOS, Luke!
–1
charon #
я так и делаю на работе. Но дома пока Винда, не осилил побороть звук в Федоре.
+1
rusmikev #
Если пользователь следит за обновлением софта, антивируса, программ, не отключает фаер и UAC, не устанавливает скачанный по ссылке с порно-сайта супер-пупер антивирус/ускоритель интернета, то вероятность заражения компьютера довольно мала.
Человеческий фактор сейчас выходит на первый план в вопросах информацинной безопасности, на мой взгляд.
Будь Linux мэйнстримом — найдутся люди, жаждущие работать под рутом и игнорирующие элементарные правила безопасности.
0
Screatch #
И много Вы знаете таких пользователей, которые регулярно занимаются обновлением своего софта?
Я склонен считать что даже с последним софтом и работающим антивирусом, вероятность заражения компьютера больше, чем если бы люди работали в линуксе под рутом… тут скорее больше риска поломать систему самому нежели заразить её чем то…
0
rusmikev #
Ну ботнеты из зараженных машин под Линуксом — это уже не нонсенс. Один из моих знакомых попался — пароль (на ssh вроде) был типа 1111111.
Не скрою, Линукс сейчас, на мой взгляд, в целом более безопасная система, за счет низкой привлекательности для взлома, высокого среднего уровня компьютерной грамотности пользователей, и достаточно защищенной архитектуры.
Рост популярности Линукса неизбежно приведет к повышению привлекательности для взлома/заражения, снижению среднего уровня пользователя, что в итоге приведет к тому, что не самые продвинутые пользователи, скажем, Убунту будут скачивать и ставить deb-пакет «супер-ускорителя Интернета», а потом «лечиться от вирусов».
Windows в последнее время уже не такая «дырявая» система, как раньше. Тот же Конфикер развернулся на дырке, которая была закрыта за несколько месяцев до массовой эпидемии.

А грамотных пользователей, на самом деле, немало.
0
Screatch #
Ну по поводу грамотности пользователей, я пожалуй с Вами поспорю, вспомнить хотя бы недавнее видео — www.youtube.com/watch?v=iL2NdM0Y_NM
Всё таки грамотных пользователей гораздо меньше…

Ну а по поводу вашего друга, сказать кроме того как сам виноват мне больше нечего. Если машина доступна для внешнего мира, то должны стоять элементарные меры безопасности, хотя бы Firewall. Моя машина например недоступна для внешнего мира потому сам не пользуюсь подобными программи. Хотя вот сервер отлавливает по десятку попыток брута пароля ежедневно…

Я ни в коем случаю не отрицаю что с ростом популярности Linux, появятся «супер-ускорители Интернета» которые будут заражать машины. Однако мне кажется что Linux всегда будет системой для более компьютеро-грамотных пользователей.
+4
crea7or #
+2
SADKO #
Очень грамотная вещь!
Поставил жене, ибо её работа сопряжена с активным сёрфингом именно в потенциально опасных местах и именно под windows… Раньше после сессии работы, тупо перезаливали раздел диска, но нужно было и рабочий инструмент время от времени обновлять, что было не очень удобно…
Комодо попробовали по приколу но он вполне справляется уже почти год как, я знаю точно, ибо компьютер под наблюдением снифера и любой подозрительный трафик не остался бы незамеченным…
–1
logan #
Который тоже не факт что поможет. Ибо приватные сплойты и методы шифрования никто не отменял
+2
crea7or #
100% защиты — не существует.
0
logan #
Идеально защищенный компьютер отключен от силовой и сетевой розетки, зарыт в бетон на пять метров и не существует.
+2
d_olex #
Не детектирует последний TDL3 проактивно в момент установки руткита в систему.
Не обнаруживает/не лечит активное заражение.
FAIL
–1
amirul #
Здесь опять подмена понятий, как и в прошлой статье. Ни одна из указанных техник не позволяет обойти ни антивирусный монитор ни встроенную систему прав.
–1
taliban #
встроенную систему прав пользователи сами открывают, из всех моих знакомых, 1% сидит не под админом, ито потому что я так сделал… это же стандартная ситуация, даже не глупые люди, и те сидят с админскими правами
+1
supercodera #
Любая защита имеет свои ограничения. Лучшая стратегия — понимать природу угрозы и закрывать все ее фундаментальные вектора.

Для машины без особо секретных материалов на борту достаточно ограниченной учетной записи, отключения автостарта съемных носителей и регулярных обновлений 100% софта, чтобы отсеять 99% вероятности заражения. Если же пользователь более серьезный, то оправдана максимальная изоляция рабочей среды, тщательно продуманная не только на концептуальном, но и на техническом уровне.
0
charon #
я не согласен с вами. Все знают, что в ИЕ дырки иногда закрываются долго и эксплойт успевает задеть многих. Каким образом можно на Винде обеспечить 100%-ное регулярное обновления софта не от Микрософт?
0
d_olex #
Подписаться на несколько новостных лент по теме безопасности, следить за свежими тенденциями в области уязвимостей и при наличии таковых в используемом вами ПО — временно переходить на использование аналогов до выхода патча.
0
charon #
спасибо, я так и делаю. Но это не даёт 100-процентной гарантии, как подсказывает мой опыт.
Например, в каждом отчёте Secunia описана уязвимость Flash и Acrobat Reader. Даже если я её пропатчил, еще несколько недель она будет упоминаться в отчёте. Несколько раз в неделю тщательно проверять все ссылки в этом отчёте — это сложно и не средних умов.
И ваш способ подходит ТОЛЬКО для более-менее грамотных людей. И при этом они смогут следить только за своими компьютерами ввиду сложности процесса.
0
d_olex #
Кстати, насчёт дырок в IE: даже при наличии таковых я не видел эксплойтов/зловредов, которые могли бы выбраться из песочницы Internet Explorer Protected Mode на Vista/7. Единственный вариантом её обхода (в случае, если злоумышленник уже добился выполнения шеллкода в контексте процесса браузера) может быть эксплуатация уязвимости в ядре ОС с целью локального повышения привилегий прямо из этого самого шеллкода (т.е., _до_ сохранения на диск и запуска дроппера зловреда). Но на практике такой сценарий маловероятный в силу как технических, так и организационных причин.
+1
charon #
я пока не насобирал денег на компьютер для Виндоус 7, но работаю над этим.
Возможно, вы таких способов и не знаете, но на CanSecWest 2010 один такой был продемонстрирован.
0
ccrypt #
Я не помню, когда в последний раз видел вирус в своих системах. В чужих видел и вирусы, и руткиты. При этом антивируса у меня нет. Как же так? Просто я каждое утро умываюсь и обновляю Linux из репозитария.
0
charon #
с баша:

xxx: я уже пять лет не переставлял о.с. и на ней никогда небыло антивируса, никогда ничего не ловил, не понимаю тот народ который плачется что подцепил троян и его не спас крутой дядя каспер или новый нод, что они такого делали?
yyy: снеси уже свой линукс и кончай народу мозг парить
xxx: ну во первых не линукс а QNX…
+18
gonzzza #
меня всегда пугали девушки, разбирающиеся в IT лучше чем я 8) Очень познавательна тема низкоуровневости руткитов… давно хотел ознакомиться. Спасибо!
+10
VasyaMobile #
> девушки, разбирающиеся в IT лучше чем я… давно хотел познакомиться
Сначала не правильно прочитал, хотя… может и правильно ;)
+3
StShadow #
:)) Аналогично…
0
myph #
Так все-таки пугали или вызывали неподдельный обильный интерес? :)
0
gonzzza #
наверное, оба варианта сразу.
+2
VasyaMobile #
Нужно делать как-то так:
+9
Bkmz #
VirtualBox? o_0
xD
+15
monoxrom #
надо ставить windows 98, под него никакие НОВЫЕ трояны и вирусы не работают
+5
DemonShi #
Думаю, что так же дело обстоит и с софтом.
+2
RainBurn #
Алиса, был у вас на семинаре. Приятно было пообщаться со знатоком. Да и пост довольно полезный, за что спасибо. ))
+6
VasyaMobile #
Хабр тот. Таких постов, да и побольше.
+2
GetWindowsDirectory #
спасибо за статью, очень интересно, читал с большим удовольствием.

у меня есть вопрос к автору:

ведь чтобы произвести пункт №3 («заражение легитимного драйвера»), необходимо, как минимум, «проинжектиться» в процесс с уровнем не менее SYSTEM… и если первые два способа как-раз это и делают, то как, после их обнаружения антивирусными аналитиками, руткит получал необходимые права для модификации?
0
supercodera #
Ключевое слово — после. И не обнаружения антивирусными аналитиками, а обновления весьма ядерных, в большинстве случаев, компонент защиты.

То есть, запас времени на придумывание следующей техники эскалации привилегий у разработчиков хорошего руткита предостаточный.
+1
Juggernaut #
А не пора ли уже начинать разрабатывать потребительский антивирус и файерволл в виде платы расширения, начинающей действовать еще до загрузки оси? С аппаратной защитой собственного кода. Просто уже напрашивается такое решение.
0
NeX #
лаборатория касперского уже запатентовала похожее решение habrahabr.ru/blogs/infosecurity/84970/
+3
workless #
В 92 году вон что было уже www.antivirus.ru/Okno5_Sheriff.html
+8
VasyaMobile #
Тогда как-то так:
–1
taliban #
плата антивируса nvidia :) забавно
0
MsM78 #
Похоже, Пентагон читает хабр www.onliner.by/news/13.05.2010/11.54/
+1
Skye #
аппаратный антивирус давно изобретён
habrahabr.ru/blogs/infosecurity/84970/
0
amirul #
TPM позволяет отклонить загрузку, если что-то менялось. То есть загрузить гарантированно неизменный winload.exe и ci.dll, а далее code integrity отлично выполняет свою работу
+1
cyberstyle #
времена инжектов прошли
+4
cepera_ang #
А если у нас нет админских прав — то бот идёт лесом в момент заражения? Это раз.
sigverify и аналоги, а также просто сравнение по чек-суммам файлов драйверов — это два.
Ну и лайв-сиди — наше всё :)
На каждый хитрый вирусный бот найдется наш антивирусный болт =)
0
z123 #
так то оно так, но если взять не одну конкретно вашу систему, а миллион разных систем, то с небольшими погрешностями можно считать, что бот успешно достигает своей цели
0
cepera_ang #
Конечно, если взять миллионы чего угодно, то чисто статистически может всё может произойти. :) Но в наших силах этот процент успешности уменьшить. Ну и в силах разработчиков софта и систем безопасности.
На эту тему, кстати, вспоминается отличная статья www.ranum.com/security/computer_security/editorials/dumb/ И главный посыл в ней, что надежная защита может быть построена только на запрете всего и разрешении только необходимого.
+1
bazilxp #
по поводу check sum
www.mscs.dal.ca/~selinger/md5collision/

Какой приятный мир, можно дистрибутивы популярного ПО троянизировать и даже md5 Можно подогнать под нужные цифры
0
cepera_ang #
Конечно, именно поэтому в цифровой подписи (которую проверяет sigverify) используется sha =) Да и верификаторы вполне используют сразу несколько хешей. Трудно себе представить сколько нужно мощности, чтобы подделать файл оставив тот же размер, внедрить свой код и сохранить CRC, MD5 и SHA хеши :)

+2
Shtirlits #
с сокрытием вируса из статьи примерно понятно, а вот какие методы он выбирает для распостранения -было бы интересно узнать, ведь это тоже «узкое» место вирусов.
+18
VasyaMobile #
0
CLR #
Я заражен :))))
+4
VasyaMobile #
Удивительно, но я сам несколько раз прошёл по этой ссылки, даже хоть она уже использованная стала(фиолетовая), даже зная что там ничего нет и надеясь на что-то.
+1
invidia #
«Использованная ссылка»
потрясающе =)
0
equand #
Черт, чуть не перешел :)
Не вчитываясь, решил что название линка — название статьи про методы распространения :D
0
supercodera #
Единственный вектор заражения — через веб. Партнерка. Эксплойты, поддельные кодеки.

Впрочем, старые версии пытались размножаться через съемные носители (autorun.inf), но эту функцию быстро убрали — профит с нее мелкий, при том что заражение диагностировать проще.
0
olegkrasnov #
Хотелось бы узнать как обстоят дела с вирусами под OS X.
–1
GetWindowsDirectory #
популярность руткитов часто прямо пропорциональна популярности ОС.
+13
SADKO #
OS X достаточно популярна в Америке, другое дело, что под неё и руткит то не нужен, ибо адепты свято веря в то, что под OS X вирусов не бывает, и все работающие процессы благословлены и освящены, светом истины :-)
+1
amirul #
Нет, о прямой пропорциональности речи не идет — закон ОЧЕНЬ нелинейный. Но первый ботнет на макос в прошлом году уже зарегистрировали
0
CLR #
Выходят периодически, но очень премитивненькие. Вот пример из последнего. Как уже сказали, все зависит от популярности ОС и от интенсивности поисков. В прошлом году была статистика (к сожалению не могу сейчас найти ссылку), так вот по ней меньше всего зловредов было под FreeBSD, потом шла MacOSX, далее разного рода unix, linux, ну и «победитель» Windows. Причем если под Windows больше всего простеньких и не сложные троянцев, то под остальные ОС это практически всегда backdoor'ы/rootkit'ы.
0
nchaly #
А что вы хотели. Я даже поверю в новость об обходе антивирусов с использованием туннельного гиперперехода местах повышенной напряженности поля в центральном процессоре.

Война эта стара, и закончится не скоро. Кто-то придумывает новый способ обхода защиты, кто-то доводит защиту до нужного уровня. Проблема в том, что «плохие» все время на шаг впереди.

Поэтому антируткитов нормальных нет, и не будет.

В Invisible War ситуация описана довольно хорошо, и не думаю, что что-то принципиально изменится.
0
LMaster #
Слишком железные руткиты, типа «Blue Pill» существуют только в вакуумно-сферических условиях теории и на практике почти неприменимы.
0
nchaly #
не в этом дело, а в том, кто глубже копнет. Любой новый метод руткита — сюрприз для антивируса. И не факт, что при установленном рутките вообще будет возможно его обезвредить.
+1
gvozd1989 #
А эти методы работают в x64 ОС?
+1
supercodera #
Нет. Более того, мне не известны реальные «in-the-wild» руткиты для х64.
НЛО прилетело и опубликовало эту надпись здесь
–2
d3ot #
Сегодня на программировании, препод показывал один примитивный вирус, который пишется на языке C и не палится не одним антивирусом! Сам вирус загружает всю оперативную память, а также своп и вводит систему в ступор.

З.Ы. Данный вируснячёк так же работает в среде ОС Линукс.
+6
alexandris #
вспомнил цитату 401786 с баша
#linux-help

xxx: Народ! Подскажите какой-нить антивирус на debian?
yyy: Рабочих вирусов на линукс в данный момент нет. Нафиг тебе антивирус?
xxx: Это их раньше не было, я один нашел… и наконец-то пересобрал в работающем состоянии...
0
Gorthauer87 #
Если вирус получил рута в Юниксах то он может сделать всё. То есть ВООБЩЕ ВСЁ. Он может втихаря загрузить модуль ядра, который его надежно сокроет. С Линуксом правда сложнее в этом плане, тут почти 100% вероятность, что модуль не подойдет к ядру. Но вирус может к примеру модифицировать загрузчик и тогда получится сумасшедшая штука под названием bootkit, которую вообще невозможно сцапать изнутри (если буткит конечно правильно написан).
Короче если вирус получил рута, то средства защиты уже бесмысленны.
0
Pilat #
и в selinux тоже?
0
Gorthauer87 #
А что мешает его от рута вырубить? Рут может всё.
0
cepera_ang #
Не знаю как в selinux, но во FreeBSD при включенном режиме повышенной защиты руту становится доступно не всё, в частности нельзя выключить или понизить этот режим, а возможно это сделать только при перезагрузке имея доступ к физической консоли.
–1
amirul #
Получить рутовый пароль на линуксе проще простого, если Вы вообще его когда нибудь вводите: i.imgur.com/WCvhn.png
Для большинства вирусов административные права не нужны
0
iSlava #
боитесь вирусов — юзайте хардварный контроль-откат всех сделанных изменений с жёсткого
0
tatoxa #
«Обожаю» стандартные (очень наглядные и контрастные) цвета Экселевских диаграмм ;)
+2
trak #
«Ракетная наука» — устойчивая американская идиома. Думается мне, что по-русски можно было и по-другому написать!

0
Rusted #
«космические технологии»?
0
Iwamoto #
а можно было оригинал rocket science оставить…
0
Sytrus #
Я так понимаю, эта беда касается только пользователей Win?
А какой конкретно вред приносит этот TDSS, почту тырит, пароли или что? Может я и не прав, но думаю, это как «кишечная палочка» в человеке — вроде «вирус», а все с ней живут.
0
iSlava #
пароли, атм карточки, ддос, спам, grid системы. это малая часть. сейчас практически нет таких которые рушили систему намеренно. тенденция на малварь и трояны
0
supercodera #
С точки зрения пользователя, заражение TDSS обычно проявляется в виде перенаправлений поиска Google и всплывающих окон в браузере.

В целом же, что именно может делать с зомби-машиной бот-мастер, ограничено лишь фантазией последнего и конъюнктурой черного кибер-рынка.
0
IRabinovich #
Ваши данные о том, что данный зловред обходит все проактивки, неточны. Ни одна версия TDSS никогда не могла обойти DefenseWall.
+1
supercodera #
Из хода развития TDSS очевидно, что навык расстановки приоритетов не является слабой стороной разработчиков.
0
MrLibra #
А UAC будет сигнализировать о том, что кто-то ломится на системный уровень?
0
TataRinSu #
Кто-то читает сообщения UAC при том, что они появляются через каждые пол часа работы?

Если бы я писал вирус, первым делом я бы попытался, анализируя действия пользователя, запросить доступ тогда, когда пользователь ожидает появления сообщения UAC. Например, увидев в папке «setup.exe», ждал бы первого щелчка мыши, и… Таким же образом можно обойти любой антивирус или фаервол — пользователи в основном невнимательны.

Я на «Вин» наоборот стараюсь настроить антивирус так, чтобы он как можно реже запрашивал действие, иначе защита теряет смысл, обычный пользователь кликает на «разрешить» быстрее, чем понимает, о чем именно его спросили.
0
electrocat #
чёрт, если вы не разработчик, что нужно делать на компе, если «они появляются через каждые пол часа работы»??

У вас работа устанавливать новый софт?

0
TataRinSu #
Есть софт, который требует администраторских прав при каждом запуске. Мне «повезло», у меня на рабочем столе целые две такие «чудесные» программы, и даже есть игра, требующая прав при запуске.

Кроме установки есть и другие действия требующие прав. Их довольно много, и все вместе образует постоянное мерцание монитора.

Вообще, это индивидуально, конечно, но «простые пользователи» все равно не читают что им пишет UAC.
0
gagoman #
У меня была подобная ситуация для тотала и торрента. У последнего просто не было прав на запись в определенную папку без админа. Сделал через планировщик 2 задачи — удобно, запросов UAC нет (сам UAC включен на макс.).
–1
electrocat #
часто это кривые программы, которые хотят писать информацию в каталог \Program Files\…
помогает установить их вне этого каталога
0
cepera_ang #
Нужно просто раздать им необходимые права на доступ к папкам и чему там им ещё надо.
0
EiZeRR #
Может я туплю, но я реально не понимаю, в чем сложность контролирования целостности всех драйверов? Почему разработчики какого антивируса поставили под наблюдение защиты только «Файлы atapi.sys/iastor.sys», неужели у них настолько неквалифицированные специалисты? Ведь с точки зрения антивируса контролирование целостности одного или другого драйвера не отличается.
0
d_olex #
Дело в том, что после обхода проактивной защиты руткит получает возможность невозбранно загрузить свой драйвер, с помощью которого возможно снять _любые_ перехваты, которые антивирусы будут использовать для контроля доступа к файлам.
Короче, когда атакующий получает тот же уровень привилегий что и защита — все войны заканчиваются (не в пользу защиты).
0
EiZeRR #
я не понимаю все равно — как связана проактивная защита, которая по сути является комбинацией каких-то эвристических методов и то, что у антивируса грубо говоря стоит хук на запись на диск и в память? ведь перехват этого хука означает, что у нас в системе будет модифицирован какой-то драйвер, а так как у нас контролируется целостность этого драйвера, то хук не может быть перехвачен, если только через уязвимость системы.
0
d_olex #
Драйвер, загруженный зловредом, может снять любые хуки антивирусной защиты. Втч. и те, которые будут защищать системные файлы от модификации. Для контроля загрузки «левых» драйверов, производители антивирусов используют HIPS-ы (поведенческие анализаторы), про несовершенство которых как раз и идёт речь в посте.
0
EiZeRR #
Все равно не понимаю, да и вы похоже меня не поняли. Попробую изложить все по порядку:

1. Я утверждаю, что для снятия хука необходима модификация драйвера, которая на низком уровне выполняется с помощью некоторых функций, предоставляемых драйверами системы.
2. Антивирус ставит хуки на эти самые функции и анализирует, чтобы по этим адресам, по которым содержатся драйверы, которые предоставляют эти функции не было записано вообще ничего.

Таким образом, если кто-то захочет перехучить эти функции, то это будет невозможно.

В чем проблема разработчикам антивирусом реализовать такое решение? По-моему оно вполне очевидное. Или я что-то не понимаю?
0
d_olex #
Да, вы не понимаете.
Для снятия/установки хуков на какие-либо системные события модификация драйверов или других файлов не требуется.
0
EiZeRR #
ну ок, модификация драйверов не требуется, но ведь требуется модификация чего-то в памяти? и почему антивирус не может поставить хук, который будет блокировать модификацию этого чего-то?
0
d_olex #
Это не возможно в силу специфики архитектуры IA-32/64 и особенностей дизайна современных операционных систем. И отом и о другом у вас, похоже, крайне смутные представления, раз вы задаёте такие вопросы.
0
EiZeRR #
ок, тогда как я понял:

Если антивирус контролирует целостность драйверов, то руткит может обойти проактивную защиту, которая контролирует загрузку драйверов в систему, загрузить свой драйвер и снять хуки, которые целостность.

Ну тогда почему антивирус не может просто тупо мониторить каждые 5 минут CRC драйверов? Потому что руткит, поставив хук может ему подсунуть информацию, что типа в системе все в порядке?
+2
egorinsk #
> Поведенческие защиты научились замечать вызов функции AddPrintProcessor — он был заменен на вызов схожей функции AddPrintProvidor. (!)

Это как бы намекает нам на изначално неправильную концепцию антивирусов. Бороться надо по-другому: 1) не использовать уязвимые техники в разработке программ (например, не создавать переполнений буфера или там SQL инъекций) 2) На уровне ОС снижать последствия взлома программы — например, уязвимость в текстовом процессоре должна давать максимум вохзможность переставить в открытом документе местами буквы, не более.

Только зарегистрированные пользователи могут оставлять комментарии. Войдите, пожалуйста.