Салют, хабровчане! В преддверии старта курса «Реверс-инжиниринг 2.0» хотим поделиться с вами еще одним интересным переводом.




Краткий обзор


Neshta — довольно старый файловый вирус, который до сих пор широко распространен. Изначально он был обнаружен в 2003 году и ранее ассоциировался с вредоносным ПО BlackPOS. Он добавляет вредоносный код в зараженные файлы. В основном эта угроза попадает в среду посредством непреднамеренной загрузки или с помощью других вредоносных программ. Он заражает исполняемые файлы Windows и может атаковать сетевые ресурсы и съемные носители.

В 2018 году Neshta преимущественно ориентировалась на обрабатывающую промышленность, но также атаковала финансовый, потребительский и энергетический секторы. В целях устойчивости в системе Neshta переименовывает себя в svchost.com, а затем изменяет реестр, чтобы он запускался каждый раз при запуске .exe файла. Известно, что эта угроза собирает системную информацию и использует POST запросы для эксфильтрации данных на сервера, контролируемые злоумышленниками. Двоичные файлы Neshta, использованные в нашем анализе, не продемонстрировали поведение или функциональность эксфильтрации данных.

Технический анализ


В этом разделе описываются симптомы заражения Neshta. Мы взяли образцы вируса закачанные на VirusTotal в 2007, 2008 и 2019.

Мы проанализировали файлы со следующими SHA-256 хэшами:

  • 29fd307edb4cfa4400a586d38116a90ce91233a3fc277de1cab7890e681c409a
  • 980bac6c9afe8efc9c6fe459a5f77213b0d8524eb00de82437288eb96138b9a2
  • 539452719c057f59238e123c80a0a10a0b577c4d8af7a5447903955e6cf7aa3d
  • a4d0865565180988c3d9dbf5ce35b7c17bac6458ef234cfed82b4664116851f2
  • 46200c11811058e6d1173a2279213d0b7ccde611590e427b3b28c0f684192d00
  • c965f9503353ecd6971466d32c1ad2083a5475ce64aadc0b99ac13e2d2c31b75


Статический анализ файла


Код Neshta скомпилирован с помощью Borland Delphi 4.0. Размер файла обычно составляет 41,472 байта.

Как и любой бинарный файл Delphi, Neshta имеет четыре записываемых (DATA, BSS, .idata и .tls) и три разделяемых секции (.rdata, .reloc и .rsrc):


Рисунок 1. Особенности хедеров секций.

Кроме того, код Neshta демонстрирует любопытные строки — см. рисунок 2 ниже:

“Delphi-the best. F*** off all the rest. Neshta 1.0 Made in Belarus. Прывiтанне усiм ~цiкавым~ беларус_кiм дзяучатам. Аляксандр Рыгоравiч, вам таксама :) Восень- кепская пара… Алiварыя — лепшае пiва! Best regards 2 Tommy Salo. [Nov-2005] yours [Dziadulja Apanas]”
(«Delphi — лучший. Остальные идут на***. Neshta 1.0 Сделано в Беларуси. Привет всем ~ интересным ~ белорус_ким девчонкам. Аляксандр Григорьевич, вам тоже :) Осень — плохая пара… Аливария — лучшее пиво! С наилучшими пожеланиями для Томми Сало. [Ноябрь-2005] ваш [Дедуля Апанас])»



Рисунок 2: Интересные строки в теле вируса

Заражение файлов


Основной особенностью Neshta является файловый заражатель, который ищет .exe файлы на локальных дисках. Neshta нацелен на «.exe» файлы, исключая лишь те, которые содержат в своем коротком пути любую из следующих строк:

  • %Temp%
  • %SystemRoot% (usually C:\Windows)
  • \PROGRA~1\


Сводка процесса заражения описана ниже и на рисунке 3.

Neshta:

  1. Считывает 41,472 (0xA200) байта с начала целевого исходного файла.
  2. Создает два раздела и выделяет память с атрибутом PAGE_READWRITE в начале и конце исходного файла.
  3. Помещает свой вредоносный заголовок и код в начале исходного файла. Записанные данные составляют 41,472 байта.
  4. Записывает закодированный исходный заголовок и код в файл, размер которого составляет 41,472 байта.


Эти действия позволяют запускать вредоносный код сразу после запуска зараженного файла:


Рисунок 3: Заражение файла

При запуске зараженного файла исходная программа помещается в %Temp%\3582-490\<filename> и запускается с помощью WinExec API.

Устойчивость


Neshta помещает себя в C:\Windows\svchost.com и устанавливает себя в реестр, используя следующие параметры:

Ключ реестра: HKLM\SOFTWARE\Classes\exefile\shell\open\command
Значение реестра: (Default)
Значение: %SystemRoot%\svchost.com "%1" %*
Это изменение реестра предписывает системе запускать Neshta при каждом запуске .exe-файла. "%1" %* указывает на запущенный файл .exe. Кроме того, Neshta создает именованный мьютекс для проверки существования другого работающего экземпляра:

MutexPolesskayaGlush*.*<0x90>svchost.com<0x90>exefile\shell\open\command‹A "%1" %*?‘@

Еще один внедряемый файл — «directx.sys», который отправляется в %SystemRoot%. Это текстовый файл (а не драйвер ядра), который содержит путь к последнему зараженному файлу для запуска. Он обновляется каждый раз, когда исполняется зараженный файл.

BlackBerry Cylance останавливает Neshta


BlackBerry Cylance использует агентов на основе искусственного интеллекта, обученных обнаружению угроз на миллионах как безопасных, так и небезопасных файлов. Наши автоматизированные агенты безопасности блокируют Neshta, основываясь на множестве атрибутов файлов и вредоносном поведении, вместо того, чтобы полагаться на конкретную подпись файла. BlackBerry Cylance, которая предлагает прогнозное преимущество перед угрозами нулевого дня, обучена и эффективна против новых и известных кибератак. Для получения более подробной информации посетите https://www.cylance.com.

Приложение


Показатели компрометации (IOCs)


  • Хэши

o 29fd307edb4cfa4400a586d38116a90ce91233a3fc277de1cab7890e681c409a
o 980bac6c9afe8efc9c6fe459a5f77213b0d8524eb00de82437288eb96138b9a2
o 539452719c057f59238e123c80a0a10a0b577c4d8af7a5447903955e6cf7aa3d
o a4d0865565180988c3d9dbf5ce35b7c17bac6458ef234cfed82b4664116851f2
o 46200c11811058e6d1173a2279213d0b7ccde611590e427b3b28c0f684192d00
o c965f9503353ecd6971466d32c1ad2083a5475ce64aadc0b99ac13e2d2c31b75

  • Имена файлов

o %SystemRoot%\svchost.com
o %SystemRoot%\directx.sys
o %Temp%\tmp5023.tmp

  • C2s/IPs
  • Мьютексы

o MutexPolesskayaGlush*.*<0x90>svchost.com<0x90>exefile\shell\open\command‹A "%1" %*?‘@

  • Интересные строки

o Delphi-the best. F**k off all the rest. Neshta 1.0 Made in Belarus. Прывiтанне усiм ~цiкавым~ беларус_кiм дзяучатам. Аляксандр Рыгоравiч, вам таксама :) Восень- кепская пара… Алiварыя — лепшае пiва! Best regards 2 Tommy Salo. [Nov-2005] yours [Dziadulja Apanas]

sha256 29fd307edb4cfa4400a586d38116a90ce91233a3fc277de1cab7890e681c409a
тип pe32 executable (gui) intel 80386, for ms windows
размер 41472
timestamp 1992:06:20 07:22:17+09:00
itw svchost[.]com



Узнать подробнее о курсе.