Деструктивные вредоносные программы — анализ и тенденции

Олег Зайцев

Технологии, применяемые в деструктивных вредоносных программах

Удаление файлов по заданным условиям

Рекурсивное удаление или повреждение всех файлов на диске

Низкоуровневое повреждение данных на жестком диске

Нарушение функционирования операционной системы при помощи правки реестра

Причины создания деструктивных троянских программ и их задачи

Заключение

 

Изучение обращений пользователей, пострадавших от деятельности вредосноных программ, проведенное на основе информации форумов virusinfo.info и forum.kaspersky.com, показывает, что в последние полгода возросло количество деструктивных зловредов, то есть программ, которые наносят вред операционной системе или данным пользователя. Целью данной статьи является обзор технологий, используемых в деструктивных программах.

Технологии, применяемые в деструктивных вредоносных программах

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

Удаление файлов по заданным условиям

Обычно деструктивная программа данного типа осуществляет попытки удаления или повреждения файлов, необходимых для загрузки системы, например содержимого папки system32\Drivers или системных файлов в корне диска. Показательный пример — троянская программа Trojan.Win32.KillFiles.mx, которая ищет и уничтожает файлы с именами ntldr.* в корне системного диска, в результате чего загрузка системы становится невозможной. В качестве другого примера можно рассмотреть программу Trojan.Win32.KillFiles.eu, которая удаляет набор системных файлов по списку (список жестко задан и хранится в исполняемом файле). Более сложные вредоносные программы могут динамически определять местоположение удаляемых файлов путем анализа реестра, списка запущенных процессов и системных служб. Подобные подходы нередко используются в программах класса Trojan.Win32.KillAV — троянах, применяемых для борьбы с антивирусами и защитным ПО. Примером может служить руткит-компонент червя Bagle, который повреждает исполняемые файлы с заданными именами.

Рекурсивное удаление или повреждение всех файлов на диске

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

  • простейший случай — удаление файла через стандартный API, реализованное в большинстве зловредов. Подобных вредоносных программ очень много, в качестве примеров можно назвать Trojan.Win32.DelFiles.bc, Trojan.Win32.KillFiles.nl и т.п.;
  • урезание размера файла до нулевой длины (или как вариант ненулевой — порядка 20-100 байт) — пустой файл при этом остается на диске — классическим примером из образцов ITW (In-The-Wild) может служить Email-Worm.VBS.Agent.j. От данной вредоносной программы пострадало множество пользователей, поскольку она обладала функциональностью почтового червя и рассылала ссылку на свой исполняемый файл под видом поздравительной открытки;
  • замена файла — в данном случае содержимое файла заменяется посторонней информацией, причем в простейшем случае это мусор, а в более сложном — некая смысловая информация, соответствующая по типу данных пораженному документу. Наиболее известным из ITW-образцов, по мнению автора, является Virus.VBS.Agent.c (так называемая диструктивная реклама). Работа этой вредоносной программы состояла в рекурсивном поиске аудио/видеофайлов, изображений и документов на диске пораженного ПК с заменой их содержимого на одну из трех заготовок.

 

Рисунок

Рисунок, которым Virus.VBS.Agent.c заменяет
все изображения на диске зараженного ПК

Замена содержимого файла без его удаления осложняет восстановление информации и в зависимости от реализации методики этой замены может сделать полное восстановление невозможным;

  • необратимое стирание файлов — метод заключается в том, что содержимое файла затирается неким мусором, причем это «мусорное» содержимое несколько раз сохраняется, после чего производится удаление файла. Данная процедура может повторяться много раз, что практически сводит на нет возможность восстановления утраченной информации;
  • шифровка файлов — наиболее сложный метод, который состоит в том, что содержимое файлов определенных типов шифруется, нередко с применением несимметричных алгоритмов шифрования с достаточно большими ключами. Наиболее известным примером является Virus.Win32.Gpcode. Его описание можно найти по адресу: http://www.viruslist.com/ru/viruses/encyclopedia?virusid=164339. Шифрование информации является обратимым процессом, что позволяет злоумышленнику использовать его для вымогательства, предоставляя пострадавшему ключ для расшифровки за определенную плату.

Низкоуровневое повреждение данных на жестком диске

Подобные «диск-киллеры» были распространены во времена MS-DOS, но с появлением Windows утратили свою популярность и стали неработоспособными. Вследствие этого у многих пользователей сформировалось мнение, что операционная система Windows блокирует прямой доступ приложений к жесткому диску, а следовательно, вредоносная программа не может его повредить. На самом деле это не так, и при наличии определенных привилегий прямой доступ к диску возможен, причем реализация подобного доступа к диску крайне проста и сводится к написанию десятка строк кода. Как следствие, появилось целое семейство современных диск-киллеров различных типов. По реализации их можно подразделить на несколько типов:

  • вредоносные программы на базе системной утилиты format — принцип их работы сводится к запуску этой утилиты с набором ключей и имитации для него ответа пользователя на запросы. Данный метод является самым простым;
  • вредоносные программы, уничтожающие Boot- или MBR-сектор диска, — характерная особенность подобных программ состоит в том, что все данные на диске остаются неповрежденными и могут быть без проблем восстановлены специальными утилитами. Есть варианты, которые не затирают Boot и MBR, а модифицируют содержащиеся в них данные. Типовой пример — троянская программа Trojan.Win32.KillDisk.x, повреждающая данные в MBR. Исходные тексты KillDisk.x и его аналогов периодически всплывают в различных хакерских форумах и, как следствие, могут использоваться начинающими вирусописателями;
  • вредоносные программы, уничтожающие все данные на диске, — принцип действия таких троянских программ сводится к последовательному или случайному стиранию данных на диске. Типовой пример — Trojan.Win32.KillDisk.o, который при несжатом размере всего 15 Кбайт уничтожает все данные на диске путем определения количества секторов на нем и их последовательного затирания в цикле.

Нарушение функционирования операционной системы при помощи правки реестра

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

  • создающие обратимые повреждения реестра — как правило, такие троянские программы создают политики (policies) или модифицируют различные некритические параметры системы. Их главная особенность состоит в том, что подобные модификации не носят фатального характера и могут быть нейтрализованы специальными утилитами. Классический пример — трояны семейства Trojan.Win32.Krotten, которые создают более сотни модификаций в реестре, что практически полностью парализует систему. Повредив систему, троянская программа обычно уведомляет пользователя о том, что ее можно восстановить, заплатив автору этой вредоносной программы определенную сумму указанным способом;
  • вредоносные программы, создающие необратимые повреждения, — самым простым примером является рекурсивное удаление ключей и параметров или замена параметров некими мусорными значениями. Восстановление в данном случае возможно только одним путем — откатом на резервную копию реестра. Подобная функциональность часто применяется для самозащиты — например, если троянская программа желает блокировать загрузку в защищенном режиме, то для этого она удаляет ветвь реестра с настройками загрузки системы в защищенном режима. Аналогично ведется борьба с антивирусами — путем полного удаления их ключей из реестра.

Для повреждения реестра чаще всего применяются два метода: или через стандартный API работы с реестром, или путем создания REG-файлов и их импорта с помощью утилиты regedit. В последнем случае команда импорта REG-файла может быть записана в автозагрузку, что обеспечит повреждение реестра при каждой перезагрузке. Важно отметить, что многие повреждения в реестре осуществляются в ключе HKEY_CURRENT_USER, доступном пользователю на запись, в связи с этим ограничение привилегий пользователя в данном случае малоэффективно.

Причины создания деструктивных троянских программ и их задачи

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

  • коммерческие — основная цель автора коммерческой троянской программы — это извлечение прибыли. Следовательно, созданные им вредоносные программы, как правило, обратимо повреждают систему, а злоумышленник предлагает пострадавшим исправить нанесенные повреждения за определенную сумму;
  • деятельность инсайдера или месть обиженного сотрудника — в этом случае преследуется вполне конкретная цель: навредить определенной фирме, причем, как правило, варварски. В данном случае может применяться диск-киллер, удаление ключей реестра и файлов, а также уничтожение чего-то специфического для той фирмы, которой наносится ущерб, — например удаление каких-либо определенных баз данных или специфических файлов (чертежей, фотографий, исходных текстов). Подобная вредоносная программа может быть снабжена таймером, активирующим деструктивные операции при наступлении некоторой даты, или запускаться по некоторому событию;
  • деятельность начинающих вирусописателей — этому процессу способствует компьютеризация школ и вузов. В данном случае имеется минимум знаний, помноженный на желание побыстрее сделать некий «супервирус, который будет все разрушать и уничтожать». Типовое средство в подобных разработках — VBS, реже Delphi и C, то есть обычно применяются те языки программирования, которые изучаются в соответствующем учебном заведении. Созданные подобными «вирусописателями» вредоносные программы нередко содержат грубые ошибки, и их анализ показывает, что 90% кода собрано из готовых примеров или сгенерировано автоматически особой вирмейкерской утилитой (таковые, к сожалению, существуют и значительно облегчают процесс создания вредоносной программы);
  • самозащита вредоносных программ — деструктивные функции могут, например, применяться для борьбы с антивирусами, для затруднения процесса поиска и удаления вредоносной программы. Данные операции также необратимы, и если в антивирусном продукте не включена (или не предусмотрена разработчиками) самозащита, то подобные операции приведут к необратимому нарушению работы продукта, для восстановления работоспособности которого потребуется его переустановка.

Общий анализ показывает, что порядка 60% деструктивных троянских программ являются именно «школьными» и «студенческими» вирусами. Другое распространенное направление, получающее все большую популярность, — это агрессивное противодействие антивирусам. Если ранее вредоносные программы в основном боролись с процессами антивирусного ПО, то теперь в ход идут более мощные средства — повреждение и уничтожение исполняемых файлов и баз данных антивирусного ПО, удаление ключей реестра. В дополнение к описанному выше Bagle можно рассмотреть еще один классический пример — Trojan.Win32.Delf.aig, который для защиты своего процесса от удаления попросту стирает с диска файл WINDOWS\system32\taskmgr.exe. Данный файл является системным диспетчером задач, и его удаление приводит к невозможности просмотра списка процессов стандартными методами. Это грубая методика, ведь перед удалением троянская программа не создает копию уничтоженного файла.

Заключение

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

Практика показывает, что самой эффективной мерой защиты от деструктивных вредоносных программ является продуманное и регулярное резервное копирование. При наличии резервных копий уничтожение и повреждение важных для пользователя документов на компьютере не приведет к их потере и их можно будет восстановить. Однако следует учитывать, что резервная копия должна делаться на отчуждаемый носитель (flash-диск, съемный HDD), чтобы исключить их повреждение, либо копия должна записываться на CD/DVD-R. Кроме того, стоит отметить, что разработчики некоторых программ резервного копирования стали оснащать свои программы системами самозащиты, которые, к примеру, блокируют удаление или модификацию созданных программой резервных копий. Примером подобной программы является Acronis True Image.

 

В начало В начало

КомпьютерПресс 8'2008

Наш канал на Youtube

1999 1 2 3 4 5 6 7 8 9 10 11 12
2000 1 2 3 4 5 6 7 8 9 10 11 12
2001 1 2 3 4 5 6 7 8 9 10 11 12
2002 1 2 3 4 5 6 7 8 9 10 11 12
2003 1 2 3 4 5 6 7 8 9 10 11 12
2004 1 2 3 4 5 6 7 8 9 10 11 12
2005 1 2 3 4 5 6 7 8 9 10 11 12
2006 1 2 3 4 5 6 7 8 9 10 11 12
2007 1 2 3 4 5 6 7 8 9 10 11 12
2008 1 2 3 4 5 6 7 8 9 10 11 12
2009 1 2 3 4 5 6 7 8 9 10 11 12
2010 1 2 3 4 5 6 7 8 9 10 11 12
2011 1 2 3 4 5 6 7 8 9 10 11 12
2012 1 2 3 4 5 6 7 8 9 10 11 12
2013 1 2 3 4 5 6 7 8 9 10 11 12
Популярные статьи
КомпьютерПресс использует