Информация о вредоносном ПО Petya

Информация о вредоносном ПО Petya

27 июня в сети начали появляться сообщения о быстром распространении вредоносной программы — шифровальщика Petya, выполняющей шифрование данных на компьютере жертвы

28 июня 2017 г.
Распространение

Распространяется изначально несколькими способами, в том числе в виде почтового вложения (фишинговая рассылка).

Для последующего распространения внутри сети использует:

  • Уязвимость MS17-10 так же, как и WannaCry
  • Удаленный доступ к консоли WMI (Windows Management Instrumentation), команды вида "wmic.exe /node:"" /user:"" /password:" process call create "C:\Windows\System32\rundll32.exe \"C:\Windows\perfc.dat\" #1"
  • Утилиту PSEXEC от Microsoft (имена и пароли учетных записей собираются на зараженной машине с помощью утилиты, аналогичной по функциональности утилите Mimikatz, пароли в открытом виде получаются путем чтения памяти процесса lsass.exe


Шифрование

Очищает системные журналы событий и журнал файловой системы с помощью команды wevtutil cl Setup & wevtutil cl System & wevtutil cl Security & wevtutil cl Application & fsutil usn deletejournal /D %c: для затруднения последующего анализа. Сами записи в журналах событий при этом не удаляются, лишь делается пометка в заголовке журнала о том, что он очищен, восстановление записей возможно.

Шифрование системы может производиться двумя различными способами:

1. Шифрование таблицы размещения файлов $MFT (NotPetya)

Вредоносный файл записывает свой код в MBR и последующие несколько секторов (оригинальный MBR при этом сохраняется в 34 секторе в зашифрованном виде (xor 0×07)). Далее вызывается перезагрузка системы (с помощью команд schtasks и at) и при последующем включении выводится экран о работе утилиты CHKDSK. На самом деле в этот момент происходит шифрование $MFT с использованием криптографически стойкого шифра Salsa20 (код c схож с оригинальным Petya). Особенность данного способа в том, что шифруются записи о файлах, а не само содержимое файлов. Восстановление данных возможно. Способы восстановления данных:

  • Вручную. Возможен поиск файлов на диске по сигнатурам, однако данный способ работает только для нефрагментированных файлов, при этом имя файла не восстанавливается. Следующий применимый способ, это поиск файловых записей по сигнатуре FILE, получение списка кластеров, принадлежащих файлу, таким образом восстанавливается содержимое и имя файла. Также в ходе наших исследований был разработан метод восстановления выборочных файлов с помощью восстановления нерезидентного списка секторов, принадлежащих файлу (Data Runs). Данный метод основан на следующей концепции: выполняется поиск кластера, содержащего начало файла (поиск производится по сигнатуре), далее номер этого кластера используется для поиска нерезидентного списка секторов, принадлежащих файлу. С помощью описанных методов можно восстановить файлы большого размера, которые нельзя восстановить поиском по сигнатуре и автоматическими средствами
  • Автоматический: R-Studio, GetDataBack и др.
  • Восстановление MBR до перезагрузки системы возможно с командой bootrec /FixMbr (Vista+, в случае Windows XP можно использовать команду fixmbr)
  • Восстановление MBR после перезагрузки, но до шифрования. Необходимо извлечь оригинальный MBR из 34 сектора (0×4400 смещение на диске, размер 0×200) расшифровать (xor 0×07) и записать в начало диска

2. Шифрование файлов (Misha)

При невозможности получения привилегий в системе для перезаписи MBR, производится шифрование файлов без перезагрузки. Список шифруемых расширений файлов: 3ds, 7z, accdb, ai, asp, aspx, avhd, back, bak, c, cfg, conf, cpp, cs, ctl, dbf, disk, djvu, doc, docx, dwg, eml, fdb, gz, h, hdd, kdbx, mail, mdb, msg, nrg, ora, ost, ova, ovf, pdf, php, pmf, ppt, pptx, pst, pvi, py, pyc, rar, rtf, sln, sql, tar, vbox, vbs, vcb, vdi, vfd, vmc, vmdk, vmsd, vmx, vsdx, vsv, work, xls, xlsx, xvd, zip. Способы расшифровки в настоящее время неизвестны, возможно лишь восстановление из резервных копий, например, из Volume Shadow Copy, Restore points, File History.

Платить выкуп не рекомендуется, так как почтовый ящик злоумышленников был заблокирован. В настоящее время вызывает сомнение техническая возможность расшифровки данных, а также нет подтверждённых случаев успешной расшифровки.


Почему возможно восстановление данных?

NotPetya шифрует только файловую таблицу, но не сами файлы, поэтому восстановить файлы после этого шифровальщика возможно.

До шифрования структура файловой системы выглядит следующим образом:

В начале раздела расположена главная файловая таблица (MFT) в которой указаны названия файлов и их расположение. После шифрования все ссылки на файлы в MFT оказываются зашифрованы, но содержимое файлов остается неизменным:

Таким образом все методы восстановления данных, основанные на карвинге (Carving), продолжают работать. Также идентичные записи MFT хранятся в разных частях файловой системы. Они могут попадать в файл hiberfil.sys, в файлы директорий и MFTmirr и т.п. Поэтому, собрав все целостные записи MFT возможно восстановить даже фрагментированные файлы.


Индикаторы

При заражении системы с использованием ПО PSEXEC в директории Windows могут присутствовать следующие файлы:

  • C:\Windows\perfc.dat
  • C:\Windows\dllhost.dat


Рекомендации

Установить необходимые для исправления уязвимости MS17-10 обновления Windows:
technet.microsoft.com/en-us/library/security/ms17-010.aspx

Отключить SMB1:
support.microsoft.com/en-us/help/2696547/how-to-enable-and-disable-smbv1-smbv2-and-smbv3-in-windows-and-windows

Также для остановки распространения данного вредоносного ПО необходимо заблокировать запуск ПО PSEXEC.EXE с помощью средств локальной или групповой политики безопасности на потенциально уязвимых машинах, а также, если возможно, заблокировать, либо отключить удаленный доступ к WMI.

В ходе исследования была выявлена особенность, позволяющая предотвратить заражение через PsExec и WMI. Для этого достаточно создать пустой файл C:\Windows\perfc.

PDF