что такое троян довнлоадер
990x.top
Простой компьютерный блог для души)
Trojan-Downloader — что это, как удалить?
Троянская программа, основная задача которой — загружать другие вирусы на ПК, среди которых могут быть как трояны, майнеры, ботнеты, так и рекламные/шпионские модули.
Trojan-Downloader часто попадает на ПК вместе с установкой софта, который был скачан из небезопасных источников:
Попадая на ПК Trojan-Downloader может прописываться в автозагрузку используя:
Троян прописывается в системные папки, может создавать свои копии на флешках, других разделах диска. При этом копии могут иметь значок популярной программы, например архива WinRAR. Рассчитано на то, что вам станет интересно что за архив и вы запустите файл.
Что делает Trojan-Downloader? Примерный алгоритм работы:
Функций у трояна может быть много, как и технологий скрытия от антивируса.
Встроенный антивирус Windows способен обнаружить угрозу Trojan-Downloader:
Как удалить? Некоторые трояны, так называемые нулевого дня, о которых еще антивирусы не знают — иногда удалить проблематично. Но в целом — комплексная проверка ПК антивирусными утилитами против опасных вирусов и против рекламных модулей. После — желательно установить пробную версию Kaspersky Total Security. План действий примерно такой — сперва проверяете ПК утилитами:
Все утилиты для завершения удаления угроз требуют перезагрузку.
Именно комплексная проверка — даст наиболее эффективный результат. Это лучшие 4 утилиты против двух типов угроз — серьезных и рекламных. Бывает что одна утилита не нашла то, что находит другая.
После сканирования также стоит установить Kaspersky Total Security, обновить базы и запустить глубокое сканирование.
Если все сделать, что написано выше — вы максимально проверите ПК на наличие вирусов.
Как выявить Trojan-Downloader самостоятельно? Нужно анализировать трафик, а точнее сетевые соединения процессов. В этом может помочь фаервол. Например у меня стоит Outpost Firewall, которые уже не развивается, но все также прекрасно работает. Фаервол покажет какие процессы устанавливают соединение с интернетом, а также с каким именно сервером (IP):
В Касперском (версия Total Security) присутствует встроенный фаервол.
Надеюсь информация оказалась полезной. Удачи и добра.
Trojan-Downloader
Вредоносная программа, предназначенная для несанкционированной пользователем загрузки и установки на компьютер-жертву новых версий вредоносных программ, установки троянцев или рекламных систем. Загруженные из интернета программы затем либо запускаются на выполнение, либо регистрируются троянцем на автозагрузку в соответствии с возможностями операционной системы.
Информация об именах и расположении загружаемых программ содержится в коде и данных троянца или скачивается троянцем с «управляющего» интернет-ресурса (обычно, с веб-страницы).
Данный тип вредоносных программ в последнее время стал часто использоваться для первоначального заражения посетителей заражённых веб-страниц, содержащих эксплойты.
Публикации на схожие темы
Стриминговые войны продолжаются: что насчет киберугроз?
Шпионские инструменты FinSpy: новые находки
Технический анализ QakBot
Поиск
Продукты для дома
Наши передовые решения помогают защитить то, что для вас ценно. Узнайте больше о нашей удостоенной наград защите.
Бесплатные утилиты
Наши бесплатные утилиты помогают обеспечить защиту ваших устройств на базе Windows, Mac и Android.
О компании
Узнайте больше о том, кто мы, как мы работаем и почему наша главная цель – сделать цифровой мир безопасным для всех.
Пробные версии
Попробуйте наши решения. Всего за несколько кликов вы можете скачать бесплатные пробные версии нашего продукта и проверить их в действии.
Связаться с нами
Наша главная цель – обеспечить вашу безопасность. Мы всегда готовы ответить на ваши вопросы и оказать техническую поддержку.
Троянская программа, загружающая из интернета другие вредоносные программы без ведома пользователя.
Троянец определяет наличия в ключе [HKCU\Software\Microsoft\Windows] параметра с именем «m». Если такой параметр существует, то происходит завершение работы программы, иначе происходит создание этого параметра:
[HKCU\Software\Microsoft\Windows]
«m»=»m»
После чего троянец производит запуск процесса с именем svchost.exe и внедрение в него кода, содержащего процедуру загрузки файлов.
После запуска этой процедуры происходит скачивание файлов, размещенных по следующим адресам:
http://rikoger.com/lo***/1/1.exe (детектируется Антивирусом Касперского как Trojan-PSW.Win32.LdPinch.awp)
http://rikoger.com/lo***/2/2.exe (детектируется Антивирусом Касперского как Email-Worm.Win32.Scano.as)
http://rikoger.com/lo***/3/3.exe (детектируется Антивирусом Касперского как Trojan-Proxy.Win32.Xorpix.am)
И их сохранение в системе во временном каталоге Windows под следующими именами соответственно:
csrss.exe
lsass.exe
smss.exe
После загрузки троянец проверяет размер каждого загруженного файла: если он равен нулю, то производится повторная загрузка файла.
Также для каждого файла проверяется наличие в его начале сигнатуры исполняемого EXE-файла («MZ»). Если такая сигнатура была найдена, то производится запуск сохраненного файла на исполнение.
Вредоносная программа, предназначенная для несанкционированной пользователем загрузки и установки на компьютер-жертву новых версий вредоносных программ, установки троянцев или рекламных систем. Загруженные из интернета программы затем либо запускаются на выполнение, либо регистрируются троянцем на автозагрузку в соответствии с возможностями операционной системы.
Данный тип вредоносных программ в последнее время стал часто использоваться для первоначального заражения посетителей заражённых веб-страниц, содержащих эксплойты.
Деструктивная активность
После запуска троянец загружает файл по следующей ссылке:
http://161.58.140.**/new.exe
(На момент создания описания ссылка не работала. )
Файл сохраняется во временную папку Windows:
%Temp%\godmod.exe
Троянец запускает скачанный файл на исполнение и завершает свою работу.
Рекомендации по удалению
Если ваш компьютер не был защищен антивирусом и оказался заражен данной вредоносной программой, то для её удаления необходимо выполнить следующие действия:
Что такое троянские программы и какой ущерб они могут нанести?
И ночью отворилось чрево лошади, но было уже поздно. Поле длительной осады грекам, наконец, удалось захватить город Трою и положить конец Троянской войне. Тысячи лет спустя миф о троянском коне все еще жив, хотя и в нелестной интерпретации. Изощренная хитрость и чудо инженерной мысли греков дали название группе вредоносных цифровых инструментов, единственная цель которых – незаметно нанести ущерб компьютерам жертв. Они делают это путем считывания паролей, записи нажатия клавиш или загрузки других вредоносных программ, которые могут даже захватить компьютер целиком. Они могут совершать следующе действия:
В отличие от компьютерных вирусов и червей, троянские программы не способны к самовоспроизведению.
Типы троянских программ
Бэкдоры
Это один из самых простых, но потенциально наиболее опасных типов троянских программ. Такие программы могут загружать в систему всевозможные вредоносные программы, исполняя роль шлюза, а также повышать уязвимость компьютера для атак. Бэкдоры часто используется для создания ботнетов, когда без ведома пользователя компьютеры становятся частью зомби-сети, используемой для атак. Кроме того, бэкдоры позволяют выполнять на устройстве вредоносный код и команды, а также отслеживать веб-трафик.
Эксплойты
Эксплойты – это программы, содержащие данные или код, позволяющие использовать уязвимость в приложении на компьютере.
Руткиты
Руткиты предназначены для сокрытия определенных объектов или действий в системе. Их основная цель – предотвратить обнаружение вредоносных программ и, как результат, увеличить их время работы на зараженном компьютере.
Дропперы / Загрузчики
Одной из самых известных троянских программ-дропперов является вредоносная программа Emotet, которая, в отличие от бэкдора, сама по себе не может выполнять никакого кода на компьютере. Однако она загружает другие вредоносные программы, например банковский троян Trickbot и программу-вымогатель Ryuk. Дропперы похожи на трояны-загрузчики, но загрузчикам нужен сетевой ресурс для загрузки вредоносных программ из сети, а дропперы содержат другие вредоносные компоненты в своем программном пакете. Оба типа троянских программ могут удаленно обновляться их разработчиками так, чтобы их невозможно было обнаружить при антивирусной проверке даже с помощью новых описаний вирусов. Таким же образом к ним могут добавляться новые функции.
Банковские трояны
Банковские трояны встречаются наиболее часто. Распространение онлайн-банкинга и невнимательность некоторых пользователей делают банковские троянские программы перспективным способом для присвоения злоумышленниками чужих денег. Цель таких программ – получить учетные данные для доступа к банковским счетам. Для этого используется фишинг: предполагаемые жертвы перенаправляются на контролируемую злоумышленниками страницу для ввода учетных данных. Следовательно, для онлайн-банкинга необходимо использовать безопасные методы для входа в систему: приложение банка, а не ввод учетных данных в веб-интерфейсе.
Трояны, выполняющие DDoS-атаки
Распределенные атаки типа «отказ в обслуживании» (DDoS) продолжают будоражить интернет. В этих атаках к серверу или сети обращается огромное количество запросов, как правило, это делается с использованием ботнетов. Например, в середине июня 2020 года компания Amazon отразила рекордную по интенсивности атаку на свои серверы. В течение более трех дней на веб-сервисы Amazon обрушилось огромное количество запросов, скорость составляла 2,3 терабайта в секунду. Для достижения такой вычислительной мощности необходим огромный ботнет. Ботнеты состоят из так называемых компьютеров-зомби. На первый взгляд, эти компьютеры работают нормально, однако они также используются при совершении атак. Причиной является троянская программа с бэкдором, незаметно присутствующая на компьютере и при необходимости активируемая оператором. Результатом успешных ботнет и DDoS-атак является недоступность веб-сайтов или даже целые сетей.
Трояны, имитирующие антивирусы
Трояны, имитирующие антивирусы, особенно коварны. Вместо защиты устройства они являются источником серьезных проблем. Эти троянские программы имитируют обнаружение вирусов, тем самым вызывая панику у ничего не подозревающих пользователей и убеждая их приобрести эффективную защиту за определенную плату. Однако вместо полезного инструмента антивирусной проверки у пользователя возникают новые проблемы: его платежные данные оказываются переданы создателям троянской программы для дальнейшего несанкционированного использования. Поэтому никогда не следует переходить по ссылкам в предупреждениях о вирусах, особенно внезапно отображаемых в браузере при посещении веб-сайтов. Можно доверять только своему инструменту антивирусной проверки.
Похитители игровых аккаунтов
Этот тип программ похищает учетные записи онлайн-игроков.
Трояны, атакующие приложения для обмена мгновенными сообщениями
Эти троянские программы похищают учетные данные приложений для обмена мгновенными сообщениями, таких как ICQ, MSN Messenger, AOL Instant Messenger, Yahoo Pager, Skype и прочих. Можно утверждать, что в настоящее время эти мессенджеры практически не используются, однако новые приложения для обмена сообщениями также не защищены от троянов. Facebook Messenger, WhatsApp, Telegram и Signal тоже могут подвергнуться атакам троянских программ. Например, в декабре 2020 года было зафиксировано распространение троянских программ для Windows через канал Telegram. Службы обмена мгновенными сообщениями также должны быть защищены от опасных фишинговых атак.
В январе 2018 года исследователи «Лаборатории Касперского» обнаружили троян Skygofree – чрезвычайно продвинутую вредоносную программу, способную самостоятельно подключаться к сетям Wi-Fi, даже если эта функция отключена на устройстве пользователя. Троянская программа Skygofree также может отслеживать сообщения в популярном мессенджере WhatsApp: читать, а также похищать их.
Трояны-вымогатели
Этот тип троянских программ может изменять данные на компьютере, вызывая сбои в его работе или блокируя доступ к определенным данным. Злоумышленники обещают восстановить работоспособность компьютера или разблокировать данные только после получения требуемого выкупа.
SMS-трояны
Они могут показаться пережитком прошлого, однако все еще активны и представляют серьезную угрозу. SMS-трояны могут работать по-разному. Например, Faketoken – вредоносная программа для Android – массово рассылает SMS-сообщения на дорогие международные номера, при этом маскируясь в системе под стандартное SMS-приложение. Владельцу смартфона приходится оплачивать эту рассылку. Другие SMS-трояны подключаются к дорогим SMS-сервисам премиум-класса.
Трояны-шпионы
Троянские программы-шпионы могут следить за работой пользователя на компьютере: отслеживать вводимые с клавиатуры данные, делать снимки экрана и получать список запущенных приложений.
Трояны-сборщики адресов электронной почты
Эти вредоносные программы совершают несанкционированный сбор адресов электронной почты на компьютере.
Кроме того, существуют другие типы троянских программ:
Трояны – угроза для всех устройств
Троянские программы нацелены не только на компьютеры Windows, но и на компьютеры Mac и мобильные устройства, поэтому не следует, доверившись ложному чувству безопасности, работать в интернете без современной защиты от вредоносных программ, такой как Kaspersky Internet Security. Вредоносные программы часто попадают на компьютеры посредством зараженных вложений, текстовых сообщений с манипулятивным содержимым или поддельных веб-сайтов. Однако существуют также троянские программы, используемые секретными службами. Они могут быть установлены удаленно, незаметно для пользователя и без какой-либо реакции со стороны целевого устройства. Программное обеспечение Pegasus израильского производителя NSO, например, распространяется через сеть мобильной связи. Pegasus включает в мощный арсенал средств перехвата: можно считывать всю информацию на устройстве, записывать звонки, использовать телефон как подслушивающее устройство. В Германии полиция применяет государственную троянскую программу для контроля и отслеживания действий преступников. Однако это вредоносное ПО, официально известное как программное обеспечение для прослушивания телефонных разговоров, не может использоваться для наблюдения без постановления суда.
Киберпреступники используют трояны для нанесения максимального ущерба
В то время как государственные органы используют программы наблюдения для расследования уголовных преступлений, киберпреступники имеют прямо противоположные цели – чаще всего это личное обогащение за счет своих жертв. При этом злоумышленники используют различные средства, а иногда даже целые цепочки вредоносных программ. Как они это делают? Одним из примеров может быть незаметная установка на компьютер бэкдора посредством зараженного вложения электронной почты. Бэкдор обеспечивает тихую загрузку других вредоносных программ на компьютер. Другие примеры: кейлоггер, записывающий нажатия клавиш при вводе паролей или конфиденциальных данных, банковские троянские программы для кражи финансовых данных, программы-вымогатели, шифрующие весь компьютер и предоставляющие доступ к зашифрованным данным только после получения выкупа в биткойнах. Нашумевшая вредоносная программа Emotet, атаки которой периодически повторяются, описывается как «самая опасная вредоносная программа». Называемая также «Король троянцев», эта программа использовала сеть зараженных компьютеров для рассылки спам-сообщений и зараженных документов Word и Excel. Британским институтом стандартов (BSI) была создана отдельная страница с информацией об Emotet. Выводы
Проникновение на устройство
Троянскими программами можно заразиться не только при открытии вложений электронной почты, они также могут быть встроены в якобы бесплатные программы. Поэтому важно не использовать сомнительные источники загрузки программного обеспечения, такие как пакеты кодеков или взломанные программы, даже если на этом можно сэкономить несколько евро. Ущерб, причиняемый троянскими программами, часто превышает стоимость приобретения программного обеспечения через легальные каналы.
Троянские программы не следует путать с вирусами. Компьютерные вирусы самостоятельно распространяются в системе, в то время как троянские программы только «открывают двери», хоть и с потенциально разрушительными последствиями.
Ниже приведен список рекомендаций, как защитить себя и свои устройства от троянских программ:
Будьте осторожны при работе в интернете
В этой статье описаны самые известные типы троянских программ. Их всех объединяет то, что они могут попасть на устройство только с помощью пользователя. Однако этих угроз можно избежать, если соблюдать осторожность при работе в интернете, не открывать подозрительные вложения в сообщения электронной почты и устанавливать программы только из надежных источников. Более надежную защиту от троянских программ обеспечит также своевременно обновляемая операционная система и постоянно работающий антивирус.
Мал, да удал: Trojan-Downloader.Win32.Tiny
Доброго дня всем.
В сегодняшнем выпуске много технических подробностей. Так что уж извините, если их слишком много 🙂
Письмо
Итак, начинаем. На входе у нас письмо с текстом «Journalist shot in Georgia! See attached video. Password is 123» и с приложенным файлом «Georgia.zip».
Для более или менее полного анализа нам понадобятся:
— Самый Лучший дизассемблер в мире IDA
— Неплохой Отладчик Windbg
— python 2.5 (строго говоря, подойдет любой, просто у меня 2.5)
— Visual Studio какая-нибудь и Microsoft SDK, чтобы собрать небольшую программу на с++.
— упаковщик программ upx
— ну и чего-то еще по мелочи.
Распаковываем присланный нам файл, и видим, что наши подозрения оправданы: видео там и рядом не ночевало.
Распаковка
Приступ первый. Сохраняем файл в безопасное место, снимаем с него права на выполнение, загружаем в ida. Сразу же ida ругается на IAT в нестандартной секции и предупреждает, что не все импортируемые функции будут видны, соглашаемся продолжать. После этого ida немного думает, произоводя дизассемблирование и анализ нашего файла, а, закончив, сама переходит в Entry Point.
Видим в окошке «Navigation» какие-то большие и сложные вычисления, а, нажав Ctrl-S, в открывшемся списке сегментов видим две записи: «UPX0» и «UPX1». И это отчетливо отдается у нас в могзу: «упакованно upx». Точнее, есть вероятность, что упакованно upx, и мы отправляемся эту возможность проверять.
После чего, открываем распакованный файл в ida и бегло просматриваем.
Основная функция выглядит довольно просто: сначала производится некоторая настройка с использованием LoadLibrary и GetProcAddress, чтобы не светить используемые функции в импорте. После идет вызов EnumResourceNames, которая перечисляет все имена ресурсов. Что ж, ресурсы, это интересно, посмотрим, что находится в ресурсах нашего файла.
Открываем редактор ресурсов (у меня это старенький ResourceExplorer), и видим среди прочего отличный бинарный ресурс под названием «LOADER.19B099.EXE». Исполняемый файл внутри ресурса! Ну что, очень похоже, что основной вирус экспортирует вложеннный и запускает каким-то образом. Предлагаю пока отложить первый файл и поковырять этот бинарный ресурс.
Троян в трояне
Экспортируем ресурс в файл, смотрим, что говорят антивирусы.
(Обратите внимание, кстати, что докторвеб маркирует этот файл также, как и joined.exe).
Ну, во-первых, размер. 1.6 килобайт. Значит основательно работали напильником, заставляли компилятор оптимизировать и вообще всячески старались. Во-вторых, такой код можно запросто инъектировать в какой-нибудь другой процесс — если этот код, конечно, правильно написан. В третьих, никаких импортов вообще — еще один плюс к гипотезе шелл-кода. Ну и, в четвертых, тело «зашифровано». Вот что у нас творится в точке входа:
Видим, что код вычисляет, где же он находится (получает EIP, используя fnstenv), пробегается от этого места назад до начала текущей страницы, то есть, грубо говоря, пока последные три знака адреса не станут равны нулю. Делается это потому, что код начинается со смещения 00001000h относительно начала образа файла в памяти. Алгоритм распаковки такой:
После чего управление передается куда-то в середину распакованного кода.
Распаковка-2
Ну что же, раз файл сам себя распаковывает, пусть сам это и делает. Нам лишь будет нужно остановиться в правильном месте, чтобы увидеть распакованный код. Запускаем Windbg, жмем Ctrl-E (Open executable file), после этого дебагер останавливается. Это еще не точка входа, а лишь начало процесса. Выясняем точку входа (если мы вдруг забыли ее, когда разглядывали дизассемблированный код):
Нас интересует конечный этап расшифровки: переход на расшифрованный код, который происходит в строке:
Жмем «g» (Go), и, не успеваем моргнуть глазом, как программа останавливается. Мы, кстати, можем увидеть прямо отсюда, как этот код выглядит теперь. По адресу, куда планируется переход, находится вот что:
Ну, вот и прекрасно. Запускаем какой-нибудь LordPE, делаем дамп файла, и код в дизассемблере выглядит теперь более удобочитаемым. Файл размером не изменился, он по-прежнему крошечный. В нем всего три функции. Займемся их изучением.
Основная функциональность
Вот что в точке входа.
Особый интерес представляет связка такого вида:
Через ECX передается параметр в функцию my_get_proc_address (это я ее так назвал. В оригинале она называлась sub_00401135 :), а то, что она возвращает — это ни что иное, как адрес некой функции, на которую передается управление инструкцией call.
Что же делает функция my_get_proc_address?
(Кода там довольно много, те, кому не лень, посмотрят сами, см. ниже). Вкратце:
1. Получает указатель на PEB:
Мы, кстати, тоже можем посмотреть, что там находится:
2. Получает из PEB список загруженных модулей и проходится по нему. Мы тоже знаем, где лежит этот список:
3. Для каждого из этих модулей функция находит таблицу экспорта, «получает список» экспортируемых функций. Для каждой экспортируемой функции вычисляется некий хэш, который и сравнивается с тем самым странным числом, которое передается в функцию как агрумент.
Между прочим, это классика жанра шелкода. Да, это работает немного медленнее обычной процедуры импорта, но имена используемых функций прячет неплохо. Как же нам найти те функции, которые реально используются? В принципе, есть вариант поставить точку останова куда надо и ждать. Но так как прогресс не стоит на месте, и нам отставать нельзя, то мы отвлечемся ненадолго от анализа и займемся программированием.
Вот, значит эта самая функция, довольно простая. Ее мы и запрограмируем. Как на чем, на питоне! Он теперь везде, и в гугле его, говорят, любят.
Значит вспоминаем, о чем мы говорили раньше: «для всех экспортируемых функций всех модулей». Но, постой-ка, скажут внимательные читатели. Ведь шелкод ничего не импортирует! Попался! и довольно потирают руки 🙂 Но есть в исполняемых файлах windows такая извечная русская печаль: создавая новый win32 процесс из PE-файла, загрузчик всегда загружает в него две стандартные библиотеки: ntdll и kernel32. Вот у нас уже и есть список из двух модулей.
Хорошая новость заключается в том, что мы тоже можем получить имена функций, которых экспортируются этими библиотеками! Старой-престарой утилитой dumpbin. И cygwin, конечно же, иметь под рукой будет неплохо.
Ну, и тоже самое для ntdll. Затем в редакторе убираем остатки заголовка и итога, который генерит dumpbin, получая список в итоге. Натравляем наш питон-скрипт на эти файлы, получаем, что например «0xd82afa6f» означает «LdrLoadDll» — о-очень слабо документированная функция, которой пользуется сам загрузчик. Однако, ее название говорит само за себя — она загружает библиотеку в адресное пространство процесса. Как мы уже видели раньше, в дизассемблированном коде фигурирует строка «ole32.dll», да, точно, это именно ее и загружает зловред функцией LdrLoadDll.
Проделываем пассы дампбином и над ol32.dll, находим нашим доморощенным брутфорсом все «секретные» функции (в порядке вызова).
0xd82afa6f — «LdrLoadDll»
0x872b8a64 — «GetTempPathW»
0x4b99cb08 — «CoInitializeEx»
0x938ed88c — «CoInitializeSecurity»
0x7279d017 — «CoCreateInstance»
0xbde95c09 — «GetTempFileNameW»
0x050798d0 — «Sleep»
0x4b09a52a — «CreateProcessW»
0x0f12e6f0 — «CoUninitialize»
0xe3db70a7 — «ExitProcess»
Делаем в уме небольшое описание этого процесса: «Загружаем ole32 (LdrLoadDll), инициализируем COM (CoInitialize*), создаем COM-объект (CoCreateInstance), полчаем название временного файла (GetTemp*), ждем у моря погоды (Sleep), создаем процесс (CreateProcessW), выходим (все остальное). Брр, аж мороз по коже, как методично и равномерно нас собираются заразить какой-то гадостью.
Вобщем, самая большая неприятность — это CoCreateInstance и последующий CreateProcess. Потому как вызовы методов ком-объекта делаются динамически, и эти методы совершенно не поименованы. То есть, мы, конечно, можем узнать, что там вызывается, но это будет геморрой… А что поделать.
Что же за объект создает этот гад? В CoCreateInstance передаются два Guid’а — в коде они выглядят так:
Из-за особенностей хранения данных, „user-friendly“ guid выглядит „перемешанным“ например, если в памяти массив <5CE34C0Dh, 4C1F0DC9h, 0A1DA7C89h, 7CEE8CB7h>, обозначает <5CE34C0D-0DC9-4C1F-897C-DAA1B78CEE7C>. Ну, уже кое-что. Автор шелкода включил захардкоданный guid, значит он уверен, что на большинстве машин это сработает. Ищем по своему реестру это идентификаторы и получаем:
Зловещая тень „разумного“ сервиса закачки файлов маячит за этими идентификаторами. Background Intelligent Transfer Service, или в просторечии, BITS, — это, кстати, та самая штука, которая качает из интернета апдейты для windows. Короче, есть подозрение, что таким образом создается ком-объект, который с помощью BITS качает к нам на машину другой, более опасный вирус. Но это пока только догадки, и мы отправляемся в мснд за документацией по BITS.
Покопавшись немного, находим небольшой пример кода в Connecting to the BITS Service.
Компилируем, дизассемблируем, смотрим, что получилось в нашей демо-программе:
Собственно, что и требовалось доказать. Те самые Guid’ы! Пытаясь выяснить, что имено скачивается в помошью BITS, видим, что имя файла „зашифровано“.
Опять быстренько пишем скрипт на питоне, который расшифровывает нам эту строку:
… и получаем результат, потрясающий нас до глубины души.
(Внимание! По указанному адрему до сих пор находится вирус. Попытка открыть этот файл может окончиться фатально для вас и вашей машины).
Название говорит само за себя. Это бяка, и еше какая!
Собственно, анализ этой бяки вы можете найти по ссылке xanalysis.blogspot.com, которую подсказали в комментариях.
Все, что происходит дальше, мы можем предсказать, даже не возвращаясь в дебагер. Создается задание (Job) для BITS, запускается закачка. Потом каждые 10 милисекунд проверяется статус задачи. Когда закачка завершается, скачанный файл запускается на выполнение. Фух, потора килобайта, а столько возни!
Итого
„Большой“ троянский конь внутри себя как ресурс содержит „маленького“ троянского жеребенка. Этот вирус, всего в полтора килобайта размером (это две страницы текста у меня в редакторе), умеет скачивать и запускать на выполнение другой, более опасный вирус. Сделан он в стиле шелкода, прямо „по учебнику“. Большая часть используемых техник подробно рассмотрена в статье Evolving Shell Code. Троян делает небольшой финт ушами, и вместо реализации сетевых соединений, http протокола, и проч., просто использует сервис windows под названием Background intelligent transfer service (именно это позволяет уменьшить размер кода). Системные функции вызываются не по прямым адресам, а функции, которые используются для работы с файлами, типа CreateFile, не вызываются вообще. Есть большое сомнение, что какой-либо из существующих антивирусов способен опознать такую зловредную функциональность одним только эвристическим анализом. Скачивает эта крошка файл с грациозным названем filebyaka.exe, что говорит о сам знаете каких корнях.
Файлы, использованные при анализе, можно найти по этому адресу
На этой оптимистичной ноте прощаюсь с вами. Не запускайте незнакомые файлы. Берегите себя!