підступний .jar, або не довіряй нікому

Java

Сьогодні ми з вами розглянемо зразок нової модифікації Adwind (Java Backdoor). Я вирішив присвятити цьому семплу окремий допис, оскільки його modus operandi (спосіб дії) якісно відрізняється від того, що траплялося мені останнім часом. Варто зазначити, що Adwind не використовує вразливості систем, не вимагає привілеїв адміністратора і … не створює .exe в %temp%. Усе, що йому потрібно для роботи – наявність Java машини. Цей тип шкідливого пз може застосовуватися для віддаленого керування системою та/або крадіжки облікових даних.

jar

Усе починається (як у більшості випадків) – із неуважного користувача, котрий навмання відкриває приєднання, що прийшло разом із фішинговим листом.

From: Bank server<statementsdesk@bankserver.com>
Received: from mail.bsmart.my (mail.bsmart.my [202.9.98.160])        Malaysia
Received: (db.72.b9d8.ip4.static.sl-reverse.com [216.185.114.219])   Singapore

SCAN060620160516.PDF.jar
SHA1=64cc157911203997908a8bd99218625643b8d459

Після запуску з точки зору жертви начеб-то нічого не відбувається, проте якщо скористатися інструментами Марка Руссиновича, то можна побачити наступне:

jar_activate_stages

Отже запущений jar виконує такі дії:

  • скриптом* отримує інформацію про наявний брандмауер
  • копіює каталог Java машини в \%AppData%\Oracle
  • додає себе в автозапуск через HKCU
  • копіює себе у %userprofile%\random\
  • приховує створений каталог
  • ініціює з’єднання із C&C 216.185.114.219:9091

JAR_stages_alternative*лістинг Retrive3268860737041597258.vbs

Set oWMI = GetObject(“winmgmts:{impersonationLevel=impersonate}!\\.\root\SecurityCenter”)
Set colItems = oWMI.ExecQuery(“Select * from FirewallProduct”)
For Each objItem in colItems
With objItem
WScript.Echo  “{“”FIREWALL””:””” & .displayName & “””}”
End With
Next

(!) Зверніть увагу на два ключових моменти:

  1. Сам файл з інструкціями Java генерується з довільним розширенням і передається інтерпретатору через параметр [-jar], що не дозволяє заборонити/обмежити запуск по розширенню файлу;
  2. На запуск реєструється оригінальний javaw.exe, який має дійсний електронний підпис. Це дуже ефективний метод обходу, оскільки зазвичай усі звертають увагу лише на файли, що не мають підпису.

java_autorunОтже за 15-30 секунд активність спадає і ОС приймає такий вигляд: в процесах залишається один javaw.exe який чекає команд із серверу керування. З боку жертви виглядає так, ніби файл не відкрився/не запустився, але насправді система уже скомпрометована.

jar_finale_stage

– – – – – невеличкий ліричний відступ

Через велику чергу семплів, на момент публікації цього допису вищезазначений семпл уже буде детектуватися принаймні половиною АВ із списку VirusTotal. Але механізм роботи цього семплу в першу чергу становить академічний інтерес, оскільки демонструє нам черговий етап розвиту ШПЗ. Я вже більше року наполегливо рекомендую ІТ/ІБ фахівцям блокувати запуск програм та скритів із %temp%. Хтось погоджується одразу, інші починають так робити лише після повторного зараження, а треті узагалі ігнорують. Не треба бути гуру аналітиком, щоби дійти до простого висновку – з часом, масові “гоп-стопи” (crypto-ransomware) та RAT перейдуть на схему інфікування, яка буде спиратися або на механізми, що вбудовані в ОС (PowerShell), або на прикладні додатки, що використовуються у бізнес-процесах (Java). Такі атаки важче відбивати стандартними заборонами, адже нових/чужих додатків в системі не з’являється, натомість ми маємо справу із передачею інструкцій, які можуть міститися у файлі з довільним розширенням та шляхом. Для класичного АВ, що використовує сигнатурний аналіз така активність у перші години після розсилки може залишатися непоміченою. Тому варто розглянути застосування “пісочниць” (sandboxig) та механізмів так званих “білих” списків, котрими можна обмежити каталоги із яких системі буде дозволено зчитувати інструкції на виконання.

– – – – – невеличкий ліричний відступ

Контрзаходи або як захиститися:

  1. Співбесіди із користувачами на тему фішинг/соц. інженерія
  2. Утриматися від застосування/інсталяції Java на тих системах, де це не є критично необхідним
  3. Жорстка фільтрація пошти (.exe, макроси, тепер іще .jar)
  4. Аналіз файлів у “пісочниці”
  5. Обмеження javaw.exe*

VSE_SP_jar_BLK2

В більшості випадків адміністратори не можуть заблокувати/видалити Java, через те, що вона є необхідним компонентом для роботи клієнт-банків або інших бізнесових додатків. І це дуже важливий момент, адже жертви не можуть тупо відмовитися від застосування технології, через яку зловмисники отримують доступ до системи. Якщо для попередніх модифікації було достатньо заборонити запуск .jar файлів з %userprofile%, то цього разу це не спрацює, адже інструкції передаються інтерпретатору із довільного файлу. Отже, якщо ми говоримо про VSE Access Protection Rules – потрібно активувати вбудоване правило, що блокує внесення програм у автозапуск (цей крок не дозволить пережити семплу перезавантаження) і створити нове правило, що буде забороняти процесу javaw.exe читати файли із **\Users\*\*\*.*

Таке правило дозволить зупиняти процес інфікування. Семпл не розпочне комунікацію з CNC і після того, як жертва клікне на “Ок” у діалоговому вікні про помилку – процес javaw буде завершено.

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

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

P.S.

Кому цікаво – галерея знімків екрану з інфікованої системи

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

Счастье — это когда ты хочешь то, что можешь, и можешь то, что хочешь.

MV5BMTM4Nzc2Nzg4Nl5BMl5BanBnXkFtZTcwNjc1MDk3Nw@@._V1_SX640_SY720_

VR

Tags: , , , , , ,

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

%d bloggers like this: