IM-Worm.Mac. Leap.a

IM-червь, заражающий компьютеры, работающие под управлением MacOS X.

IM-червь, заражающий компьютеры, работающие под управлением MacOS X. Червь также способен заражать приложения MacOS X, но из-за ошибки в коде червя зараженные приложения теряют работоспособность.

Червь впервые появился на форуме MacRumors 13 февраля 2006 года. Подпись к оригинальному исполняемому файлу гласит: «Alleged screenshots of OS 10.5 Leopard» («Предположительные скриншоты OS 10.5 Leopard») — очевидная попытка заставить ничего не подозревающих пользователей запустить вредоносную программу.

Для своего распространения червь использует интернет-пейджер Apple iChat. Червь также может попасть в операционную систему, если пользователь скачает и запустит исполняемый файл червя. Из-за того, что червь не способен самостоятельно заражать операционную систему, его иногда называют «троянцем», но это не совсем правильно. Троянцы не умеют саморазмножаться, в то время как Leap.a на это способен.

Червь распространяется в виде архива TAR.GZ с названием latestpics.tgz. Если пользователь распаковывает архив (воспользовавшись утилитой tar или просто дважды щелкнув на нем в Finder), то содержимое предстает в виде JPEG-файла.

На самом же деле это исполняемый файл PowerPC, в чем можно убедиться, открыв диалог Get Info в Finder.

Исполняемый файл latestpics является консольным приложением, которое открывает окно терминала после своего запуска.

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

Затем червь извлекает из себя плагин apphook для InputManager. Если червь запущен администратором, то этот плагин копируется в папку Library/InputManagers. Если червь запущен пользователем, то плагин копируется в пользовательскую папку ~/Library/InputManagers. Разница заключается в том, что плагин из корня папки /Library будет загружен в любые запускаемые приложения, а во втором случае — только в приложения, запускаемые текущим пользователем.

Плагин apphook отвечает за размножение червя через интернет-пейджер. Плагин пытается перехватить некоторые функции iChat и отправить копию основного файла червя «друзьям» пользователя (аналогично меню Buddies -> Send File).

После установки плагина apphook червь продолжает заражение локальных приложений. Он использует Spotlight для поиска часто запускаемых приложений и пытается заразить их. Заражение осуществляется самым простым способом: путем перезаписывания исполняемого файла программы исполняемым файлом червя и сохранения исходного исполняемого файла в resource fork.

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

Наконец, судя по коду червя, его автор намеревался добавить своему творению функцию размножения по электронной почте, но не успел завершить её разработку до того, как червь был опубликован на форуме MacRumors.

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