Анатомия программ-вымогателей, часть 1: Химера

  • Автор темы Автор темы LeSh1y777
  • Дата начала Дата начала

LeSh1y777

Пользователь
Регистрация
25/9/25
Сообщения
5,682
Репутация
49
Лайки
153
Депозит
-8.95$
Программы-вымогатели — это тип вредоносного ПО, который в последние годы стал практически эпидемией. Потребители и компании по всему миру сталкиваются с этим вредоносным ПО. После заражения компьютера жертвы эта вредоносная программа шифрует её данные, делая их непригодными для использования. Жертва может восстановить свои данные, только заплатив выкуп (отсюда и название программы) за ключ для расшифровки. Как правило, суммы выкупа относительно невелики — обычно от 300 до 500 долларов для частных лиц, — но известны случаи, когда больницы, муниципалитеты и другие крупные учреждения платили 100 000 долларов и более.

6a4a49_52b66729887341caba8134f1a40df813~mv2.jpg


Давайте рассмотрим пример реального вируса-вымогателя, обнаруженного в реальных условиях, чтобы лучше понять, как он работает. Это хороший пример того, как обратная разработка может помочь нам понять, как на самом деле функционирует вредоносное ПО. Хотя каждый из вариантов вирусов-вымогателей немного отличается, они, как правило, действуют схожим образом. В данном случае давайте рассмотрим Chimera — разновидность вирусов-вымогателей, обнаруженную в Германии.

На примере химеры

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

В этом анализе я кратко опишу принцип работы Chimera, опуская некоторые этапы для краткости. Если вам нужна копия Chimera для проведения собственного тщательного анализа, я выложил её в своём аккаунте Pastebin здесь.

Шаг 1: Доставка вредоносного ПО

Как и многие другие программы-вымогатели, появившиеся в последние годы, Chimera распространялась по электронной почте, вероятно, с использованием элементов социальной инженерии, чтобы заставить пользователя кликнуть по ссылке или открыть файл. Chimera была написана на .NET.

6a4a49_f43b91ede1ae46f6bcf2176f56d83735~mv2.png


На первом этапе Chimera изначально доставляет исполняемый файл-заглушку, единственной задачей которого является вызов, расшифровка и декодирование полезной нагрузки второго этапа на машину жертвы (см. Шаг № 8).

Шаг 2 : Алгоритм AES

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

6a4a49_a09df742554046a28ad4fa87086930ce~mv2.png


Шаг 3: Отображение в памяти

На следующем этапе Chimera вручную отображает свои процессы в память. Это, скорее всего, позволит обойти защиту ASLR (Address Space Layout Randomization) и защиту DEP (Data Execution Prevention), встроенную в Windows и другие операционные системы. Эти средства защиты рандомизируют вероятное расположение процесса в памяти, что затрудняет реализацию переполнения буфера. ASLR и DEP затрудняют эту задачу, поскольку вредоносная программа не может предсказать местоположение указателя выполнения. Ручное отображение процесса в память повышает вероятность того, что вредоносная программа будет работать ожидаемым образом.

6a4a49_12cfea4f667041f490f0e1272e81e8bd~mv2.png


Шаг 4: Найдите 32-битный процесс для хостинга

Затем Chimera просматривает все процессы Windows в поисках 32-битного процесса, который может разместить его полезную нагрузку, а затем открывает его.

6a4a49_08a2cadeddc143e79506ce5170cf48ee~mv2.png


Шаг 5: Поиск локального IP- адреса

На следующем этапе Chimera находит публичный IP-адрес заражённой машины, используя www.whatismyipaddress.com. Затем он сохраняет это значение в переменной.

6a4a49_be4d046cb1324bf8b1e037cff07cb9c0~mv2.png


Шаг 6: Обратный вызов на серверы управления и контроля

Получив IP-адрес зараженного хоста, Chimera обращается к его командным серверам (C&C). В данном случае эти серверы находятся по адресам 95.165.168.168 и 158.222.211.81.

6a4a49_f435cbb145494c6fbefb8bbd00b97e70~mv2.png


Chimera использует Bitmessage для обмена данными по протоколу P2P через порты 8444 и 8080. Bitmessage — это безопасная, зашифрованная система обмена сообщениями P2P, позволяющая одному компьютеру отправлять сообщения одному или нескольким получателям. На снимке экрана ниже видно, что Chimera вызывает клиент Bitmessage PyBitmessage.

6a4a49_17386ee4e0b9481894310d5e1fb5909a~mv2.png


Шаг 7: Обзор и поиск жестких дисков, а затем файлов

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

6a4a49_461bf9ee76b24e249d2390b712c9d629~mv2.png


Шаг 8: Получите случайный ключ

Теперь, когда Chimera успешно захватила 32-битный процесс, отобразила себя в памяти (чтобы избежать ASLR) и перечислила жесткие диски, ей нужно обратиться к своему командному серверу (C&C), чтобы получить случайный ключ, с помощью которого можно будет зашифровать файлы.

6a4a49_0c9b88af59384f8f9ae6fae4c7343649~mv2.png


После получения случайного ключа от сервера управления и контроля Chimera вызывает функцию из шага 2 выше — алгоритм шифрования AES — и начинает шифровать критически важные файлы.

Перед началом шифрования он ищет следующие типы файлов:

.jpg, .jpeg, .xml, .xsl, .wps, .cmf, .vbs, .accdb, .ini, .cdr, .svg, .conf, .config, .wb2, .msg, .azw, .azw1, .azw3, .azw4, .lit, .apnx, .mobi, .p12, .p7b, .p7c, .pfx, .pem, .cer, .key, .der, .mdb, .htm, .html, .class, .java, .asp, .aspx, .cgi, .php, .jsp, .bak, .dat, .pst, .eml, .xps, .sqllite, .sql, .jar, .wpd, .crt, .csv, .prf, .cnf, .indd, .number, .pages, .x3f, .srw, .pef, .raf, .rf, .nrw, .nef, .mrw, .mef, .kdc, .dcr, .crw, .eip, .fff, .iiq, .k25, .crwl, .bay, .sr2, .ari, .srf, .arw, .cr2, .raw, .rwl, .rw2, .r3d, .3fr, .eps, .pdd, .dng, .dxf, .dwg, .psd, .png, .jpe, .bmp, .gif, .tiff, .gfx, .jge, .tga, .jfif, .emf, .3dm, .3ds, .max, .obj, .a2c, .dds, .pspimage, .yuv, .3g2, .3gp, .asf, .asx, .mpg, .mpeg, .avi, .mov, .flv, .wma, .wmv, .ogg, .swf, .ptx, .ape, .aif, .av, .ram, .m3u, .movie, .mp1, .mp2, .mp3, .mp4, .mp4v, .mpa, .mpe, .mpv2, .rpf, .vlc, .m4a, .aac, .aa3, .amr, .mkv, .dvd, .mts, .vob, .3ga, .m4v, .srt, .aepx, .camproj, .dash, .zip, .rar, .gzip, ., mdk, .mdf, .iso, .bin, .cue, .dbf, .erf, .dmg, .toast, .vcd, .ccd, .disc, .nrg, .nri, .cdi

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

Шаг 9: Требование выкупа

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

6a4a49_f22719e48791407bbd99e68e3b111140~mv2_d_1846_1226_s_2.png


Надеюсь, это краткое руководство поможет вам понять, как работают программы-вымогатели, а также оценить ценность реверс-инжиниринга вредоносных программ . Теперь, обладая этим пониманием, мы можем разрабатывать средства защиты от этого типа вредоносных программ или модернизировать их и использовать по-другому, как это делают ЦРУ и практически все разработчики вредоносных программ.
 
Назад
Сверху Снизу