Издательский дом ООО "Гейм Лэнд"ЖУРНАЛ ХАКЕР #72, ДЕКАБРЬ 2004 г.

Троян в упаковке

A.M.D.F. (amdf@front.ru)

Хакер, номер #072, стр. 072-060-3


После сжатия необходимо проверить вирус или троян на работоспособность, а то может получиться так, что на компьютере-жертве он просто вылетит с ошибкой. Такое иногда случается со сжатыми файлами. Разумеется, запускать вирус на своем компе, чтобы проверить, работает ли он, я не стал. Для проверки можно просто взять несколько других программ, сжать их с теми же параметрами и проверить, не возникают ли в них ошибки. Если все программы заработали, то и с Трояном, скорее всего, ничего не случится.

Маскировка

Для повышения защиты от детектирования антивирусом нужно применить дополнительные меры по маскировке. Можно вообще не переупаковывать файл, а попытаться скрыть от антивируса информацию о том, чем на самом деле бинарник сжат. Допустим, вирус сжат обычным UPX. Если антивирус не будет об этом знать, то не сможет найти подходящий способ распаковки. Защитить программу от определения типа компилятора и упаковщика, использованного для ее создания, позволяет модификация точки входа. Эту процедуру можно выполнить с помощью специальных утилит, таких как, например, HidePE. С помощью этой программы можно сделать так, чтобы файлы, упакованные, например, с помощью UPX, определялись как упакованные ASProtect или VBOX. После обработки этой программой вируса Mydoom.e ни Kaspersky, ни Norton не смогли его определить. От разработчиков HidePE доступна еще одна подобная программа – StealthPE. Она отличается более богатым набором инструментов для скрытия информации о типе упаковщика. Среди таких программ от других разработчиков следует упомянуть о DotFix FakeSigner, которая предлагает на выбор более 200 различных сигнатур компиляторов и упаковщиков для внедрения в программу.

Возможные проблемы

В реальной ситуации с распаковкой и упаковкой программ может возникнуть куча проблем. Например, у тебя есть троян, но ты не знаешь, чем он упакован. Можно попытаться использовать одну из специальных утилит, например, PEiDentfier или PE Sniffer из PE Tools. Если эти программы не дали тебе необходимой информации, тогда попытайся определить на глаз. Разработчики упаковщиков любят вставлять названия своих программ в обработанные файлы. Так что если ты нашел в начале файле «FSG», то, скорее всего, перед тобой файл, сжатый именно FSG. Допустим, ты знаешь, чем упакован файл, но этот упаковщик не поддерживает распаковку. Не беспокойся, умные люди наверняка давно написали распаковщик именно для этой программы. Как говорит разработчик UPX: «Just do a websearch on "unpackers"». Любой алгоритм упаковки можно сломать, просто некоторые алгоритмы ломаются на лету, а некоторые требуют специального подхода и недюжинных знаний в программировании на ассемблере.

Что в итоге

Что можно сделать с помощью этих несложных процедур? Много чего. Спровоцировать новую вирусную эпидемию, взяв известный вирус и наделав из него пять новых разновидностей. Поставить троян на машину человека, который может хоть каждый день сканировать свой жесткий диск антивирусным сканером и ничего не обнаруживать. Всеми этими способами успешно пользуются разработчики программного обеспечения для защиты своих творений от взлома. Крэки все равно рано или поздно появляются, но хорошая защита исполняемого файла может как минимум задержать этот процесс. На пару деньков. Не проспи Новый год, удачи! :)

Назад на стр. 072-060-2  Содержание  Вперед на стр. 072-060-4