Посібник з Cobalt Strike. №3 Початковий доступ

14 червня 2023 4 хвилин Автор: Lady Liberty

Навчання та експертиза з використання Cobalt Strike

Посібник з Cobalt Strike: Початковий доступ та навчання для ефективного використання фреймворку. Хочете вивчити Cobalt Strike та використовувати його в ефективних кібертактичних операціях? Наш посібник з Cobalt Strike надає початковий доступ та всебічну навчання для того, щоб ви стали експертом в цьому потужному фреймворку. З нашим посібником ви отримаєте всю необхідну інформацію та розуміння, як працює Cobalt Strike та як його налаштовувати для ваших потреб. Ми розглянемо різні аспекти використання фреймворку, включаючи збір і аналіз даних, розгортання кіберприманок, експлуатацію вразливостей та керування атаками.

Наш посібник пропонує практичні приклади, пояснення ключових концепцій та крок за кроком інструкції, як виконувати різні завдання з використання Cobalt Strike. Ви дізнаєтеся, як ефективно використовувати його функції та інструменти для досягнення ваших цілей в області кібербезпеки. Завдяки нашому посібнику з Cobalt Strike, ви зможете швидко освоїти фреймворк та почати використовувати його у своїх проектах.  Ми допоможемо вам зрозуміти його потужні можливості та навчити вас ефективному використанню для ваших потреб у сфері кібербезпеки. Отримайте доступ до посібника з Cobalt Strike вже сьогодні та розширте свої навички у цьому важливому фреймворку для тестування на проникнення та кібербезпеки.

Початковий доступ

Cobalt Strike містить кілька функцій, які допоможуть вам закріпитися на цілі. Це стосується як профілювання потенційних цілей, так і створення корисного навантаження та її доставки.

На стороні клієнта профилировщик системи

System Profiler — це інструмент розвідки атак на стороні клієнта. Цей інструмент запускає локальний веб-сервер і видаляє відбитки пальців у всіх, хто його відвідує. Системний профайлер надає список програм і плагінів, які він знаходить у браузері користувача. System Profiler також намагається виявити внутрішню IP-адресу користувачів, які знаходяться за проксі-сервером.

Щоб запустити System Profiler, перейдіть до Attack -> System Profiler.  Щоб  запустити профайлер, вам потрібно вказати URI для прив’язки та порт для запуску веб-сервера Cobalt Strike.

Якщо ви вкажете URL-адресу для переспрямування, Cobalt Strike переспрямує відвідувачів  на цю URL-адресу після отримання їхнього профілю. Натисніть кнопку Запустити, щоб запустити системний профіль.

Системний профайлер використовує непідписаний аплет Java для виявлення внутрішньої IP-адреси об’єкта та визначення версії Java, яка знаходиться поверх неї. Завдяки функції безпеки Java за технологією “вмить” це може викликати підозри. Зніміть прапорець Використовувати аплет  Java  під час отримання інформації для видалення аплету Java із системного профілю.

Установіть позначку Enable   SSL, щоб надавати доступ до засобу профілювання системи через SSL.  Це поле буде вимкнено, якщо ви не вкажете дійсний сертифікат SSL за допомогою Malleable C2. Про це йдеться в розділі 11.

Провідник додатків

Щоб переглянути результати роботи системного профілювача, перейдіть до розділу Перегляд -> Програми.  Відкриється вкладка «Застосунки» з таблицею з усією інформацією про програми, зібраної системним профайлером.

Поради щодо аналізу

Провідник додатків містить багато корисної інформації для планування цілеспрямованої атаки. Ось як отримати максимальну віддачу від цієї інформації:

Внутрішнє поле IP-адреси збирається з даних нешкідливого аплету Java без підпису. Якщо в цьому полі написано “невідомо”, це означає, що аплет Java, швидше за все, не запущений. Якщо ви бачите тут IP-адресу, це означає, що вона не підписана

Запущено аплет Java. Internet Explorer повідомляє про інстальовану версію. Під час отримання оновлень браузер Internet Explorer відомості про версію не змінюються. Cobalt Strike використовує версію JScript.dll щоб оцінити, наскільки виправлено Internet Explorer. Перейдіть  до support.microsoft.com і знайдіть номер збірки JScript.dll  (третє число в рядку версії), щоб відповідати йому з оновленням Internet Explorer. *64 поруч із додатком означає, що це програма x64.

Веб-сервіси Cobalt Strike

Багато функцій Cobalt Strike працюють на власному веб-сервері. Ці служби включають System Profiler, HTTP Beacon і Web Drive-by Attacks.It можна розмістити кілька функцій Cobalt Strike на одному веб-сервері.

Щоб керувати веб-сервісами Cobalt Strike, перейдіть до розділу Переглянути  -> Web Drive-by –> Керувати.   Тут ви можете скопіювати будь-яку URL-адресу Cobalt Strike в буфер обміну або зупинити веб-сервіс Cobalt Strike. Використовуйте веб-журнал View  -> для відстеження відвідувань веб-сервісів Cobalt Strike.

Якщо веб-сервер бачить запит від браузера Lynx, Wget або Curl; CobaltStrike автоматично повертає сторінку 404. Це робить це як невеликий захист від спостереження за синьою командою. Це можна налаштувати за допомогою гнучкої конфігурації C2 ‘.http-config.block_useragents’.

Пакети user-driven атак

Найкращі атаки – це зовсім не подвиги. Швидше, найкращі атаки використовують переваги звичайних функцій, щоб отримати можливість виконувати код. Cobalt Strike дозволяє легко налаштувати кілька атак, керованих користувачами. Цими атаками користуються Слухачі, яких ви вже налаштували. Перейдіть до меню Корисні навантаження  та виберіть один із наступних параметрів.

HTML додаток

HTML-застосунок – це програма Windows, написана на HTML і мову сценаріїв, яку підтримує Internet Explorer. Цей пакунок генерує HTML-додаток, який запускає Cobalt Strike’s Listener.

Перейдите в Payloads -> HTML Application.

Параметри

Слухач – Натисніть кнопку …    , щоб вибрати обробник, на який потрібно вивести Вантажопідйомність.

Метод  – За допомогою випадаючого списку виберіть один з наступних методів, щоб запустити вибраного Слухача:

Виконуваний файл: Цей метод записує виконуваний файл на диск і запускає його.

PowerShell: Цей метод використовує однорядкову команду PowerShell для запуску стажер.

VBA: Цей метод використовує макроси Microsoft Office для введення корисного навантаження в пам’яті. Метод VBA вимагає, щоб Microsoft Office був встановлений у цільовій системі.

Натисніть кнопку Створити, щоб створити HTML-додаток.

Макроси MS Office

Засіб макросів Microsoft Office створює макроси для вставлення в документ Microsoft Word

або Microsoft Excel.

Перейдите в Payloads -> MS Office Macro.

Виберіть елемент Обробник і натисніть кнопку Створити, щоб створити покрокові інструкції щодо вбудовування макросів у документ Microsoft Word або Excel.

Ця атака добре працює, коли ви можете переконати користувача запустити макроси, коли він відкриває документ.

Генератор корисного навантаження

Генератор корисного навантаження виводить вихідний код і артефакти для розміщення Слухача на хості. Подумайте про це як про версію MSFVENOM Cobalt Strike.

Перейдите в Корисні  навантаження -> Stager Генератор корисного навантаження.

Параметри

Слухач – Натисніть кнопку …    , щоб вибрати обробник, на який потрібно вивести Вантажопідйомність.

Вихід – Використовуйте випадаючий список, щоб вибрати один з наступних типів виводу (більшість варіантів дають вам шелкод, відформатований як масив байтів для даної мови):

C: Шелкод, відформатований як масив байтів.  C#: Шелкод, відформатований як масив байтів.  Скриплет COM: файл .sct для запуску обробника.

Java: Шелкод, відформатований як масив байтів.

Perl: Шелкод, відформатований як масив байтів.

PowerShell: сценарій PowerShell для запуску шелкоду.

Команда PowerShell: однорядкова команда PowerShell для запуску постановник «Маяка».

Python: Шелкод, відформатований як масив байтів.

Raw: Блок позиційно-залежного шелкоду.

Ruby: Шелкод, відформатований як масив байтів.

Вуаль: Спеціальний шелкод, придатний для використання з Veil Evasion фреймворком.

VBA: Шелкод, відформатований як масив байтів.

x64 – Налаштовано на генерацію x64 stager для вибраного Слухача.

Натисніть кнопку Створити, щоб створити корисне навантаження для вибраного типу виводу.

Генератор корисного навантаження (безступінчастий)

Генератор корисного навантаження Cobalt Strike створює вихідний код і артефакти без стадійника для Слухач на ведучому.

Параметри

Слухач – Натисніть кнопку …   , щоб вибрати обробник, на який потрібно вивести Вантажопідйомність.

Вивід – Використовуйте спадний список, щоб вибрати один із наступних типів виводу (більшість варіантів дають вам оболонку-код, відформатовано як масив байтів для заданої мови):

C: Шелкод, відформатований як масив байтів.  C#: Шелкод, відформатований як масив байтів.  Java: Шелкод, відформатований як масив байтів.  Perl: Шелкод, відформатований як масив байтів.

Python: Шелкод, відформатований як масив байтів.

Raw: Блок позиційно-залежного шелкоду.

Ruby: Шелкод, відформатований як масив байтів.

VBA: Шелкод, відформатований як масив байтів.

Функція виходуПроцес: Thread: x64 – Налаштовано на генерацію x64 stager для вибраного Слухача.

Натисніть кнопку Створити, щоб створити корисне навантаження для вибраного типу виводу.

Виконуваний файл для Windows

Цей пакунок генерує виконуваний артефакт для Windows, який надає stager.

Перейдите в Payloads -> Windows Stager Payload

Цей пакет надає наступні варіанти створення:

Слухач – Натисніть кнопку …   , щоб вибрати обробник, на який потрібно вивести Вантажопідйомність.

Результат – Використовуйте спадний список, щоб вибрати один із наступних типів виводу :

Windows EXE: виконуваний файл для Windows.

Windows Service EXE:  виконуваний файл для Windows, який відповідає на команди диспетчера керування службами. Ви можете використовувати цей виконуваний файл для створення служби Windows за допомогою sc або як користувальницький виконуваний файл за допомогою модулів PsExec у фреймворку Metasploit.

Windows DLL: бібліотека Windows DLL, яка експортує функцію StartW, сумісну з rundll32.exe. Використовуйте rundll32.exe щоб завантажити бібліотеку DLL з командного рядка. rundll32 foo.dll,StartW

x64 — Установлено для створення артефактів x64 у поєднанні з x64 stager.By За замовчуванням це діалогове вікно експортує стагенери x64.

  sign – Встановіть для підпису артефакту EXE або DLL сертифікатом кодового підпису. Сертифікат необхідно вказати в профілі Malleable.

Натисніть кнопку Створити, щоб створити артефакт етапера.

Cobalt Strike використовує набір артефактів для створення цього результату.

Варіанти виконуваних файлів (Stageless) для Вікна

Ця опція генерує всі безступінчасті корисні навантаження (в x86 і x64) для всіх налаштованих Слухачів.

Перейдите в  корисні навантаження -> Windows Stageless генерують всі корисні навантаження.

Папка – Натисніть кнопку папки, щоб вибрати місце для збереження слухачів.

Підписати  – Встановіть для підпису артефакту EXE або DLL сертифікатом підпису коду. Сертифікат необхідно вказати в профілі Malleable C2.

Натисніть кнопку Створити, щоб створити безетапний артефакт.

Файловий хостинг

Веб-сервер Cobalt Strike може розміщувати ваші користувацькі пакунки. У меню виберіть

Управління сайтом  -> хост-файл і виконайте наступні кроки для налаштування:

  1. Виберіть файл, який потрібно розмістити.

  2. Виберіть довільну URL-адресу .

  3. Виберіть тип mime для файлу.

Сама по собі можливість розмістити файл не справляє особливого враження. Однак у наступних розділах ви дізнаєтеся, як вставити  URL-адреси Cobalt Strike у фішинговий електронний лист. Коли ви це зробите, Cobalt Strike зможе зіставити відвідувачів вашого файлу з надісланими електронними листами та включити цю інформацію у звіт про соціальну інженерію.

Установіть  параметр Увімкнути SSL для передавання цього вмісту за протоколом SSL. Цей параметр доступний, якщо у профілі Malleable C2 вказано дійсний сертифікат SSL.

Керований користувачами веб-сайт Drive-by Атаки

Cobalt Strike надає вам кілька інструментів для налаштування атак веб-дисків. Щоб швидко запустити атаку, перейдіть в Атаки і виберіть один з наступних варіантів:

Java Signed Applet атака

Ця атака запускає веб-сервер, на якому розміщується самопідписаний аплет Java. Відвідувачів просять дати дозвіл на запуск аплету. Коли відвідувач дає такий дозвіл, ви отримуєте доступ до його системи.

Атака з підписаним аплетом Java використовує інжектор Cobalt Strike Java. У Windows ін’єктор Java буде вводити шелкод-код для Слухача безпосередньо в пам’ять.

Перейдите в Attacks -> підписав аплетну атаку.

Локальна URL-адреса / хост / шлях  – встановіть шлях локальної URL-адреси, хост і порт для налаштування веб-сервера.

Слухач – Натисніть кнопку …   , щоб вибрати обробник, на який потрібно вивести Вантажопідйомність.

SSL – Налаштований на передачу цього вмісту через SSL. Ця опція доступна, якщо ви вказали дійсний сертифікат SSL у своєму профілі Malleable C2.

Натисніть кнопку Запустити, щоб розпочати атаку.

Java Smart Applet атака

Атака Cobalt Strike Smart Applet поєднує в собі кілька експлойтів для відключення пісочниці безпеки Java в єдиний пакет. Ця атака запускає веб-сервер, на якому розміщено аплет Java. Спочатку аплет запускається в пісочниці безпеки Java і не вимагає дозволу користувача для запуску.

Аплет аналізує середовище та вирішує, який експлойт використовувати. Якщо версія Java вразлива, аплет вимикає пісочницю безпеки та виконує корисне навантаження за допомогою інжектора Cobalt Strike Java.

Перейдите в Attacks -> Smart Applet Attack.

Local URL/Host/Путь  – Установите Local URL Path, Host и порт для настройки веб-сервера.

Слухач – Натисніть кнопку …   , щоб вибрати обробник, на який потрібно вивести Вантажопідйомність.

  SSL – Налаштований на передачу цього вмісту через SSL. Ця опція доступна, якщо ви вказали дійсний сертифікат SSL у своєму профілі Malleable C2.

Натисніть кнопку Запустити, щоб розпочати атаку.

Доставка скрипта через Інтернет

Ця функція генерує  безетапний артефакт, розміщує його на веб-сервері Cobalt Strike і представляє однорядкову команду для його завантаження та запуску.

Перейдите в меню Attacks -> Scripted Web Delivery (S).

Параметри

Local URL/host/path – встановіть локальний URL-шлях, хост і порт для налаштування веб-сервера. Переконайтеся, що  поле Host  збігається з полем CN вашого сертифіката SSL. Це дозволить уникнути ситуації, коли функція не буде працювати через невідповідність між цими полями.

Слухач – Натисніть кнопку …   , щоб вибрати обробник, на який потрібно вивести Вантажопідйомність.

Тип  – у спадному меню виберіть один із таких типів:

bitsadmin : Ця опція розміщує  виконуваний файл і використовує bitsadmin для його завантаження. Метод bitsadmin запускає виконуваний файл через cmd.exe.

exe : Ця опція створює виконуваний файл і розміщує його на веб-сервері Кобальтовий страйк’а.

powershell: цей параметр розміщує сценарій PowerShell і використовує powershell.exe, щоб завантажити скрипт і обробити його.

IEX  powershell: Цей параметр розміщує сценарій PowerShell і використовує  .exe powershell для його завантаження та обробки. Подібний до попереднього параметра powershell, але є коротшою, однорядковою командою Invoke-Execution.

python : Цей параметр розміщує скрипт на Python і використовує python.exe щоб завантажити скрипт і запустити його.

x64 – Налаштовано на генерацію x64 stager для вибраного Слухача.

SSL – Налаштований на передачу цього вмісту через SSL. Ця опція доступна, якщо ви вказали дійсний сертифікат SSL у своєму профілі Malleable C2.

Натисніть кнопку Запустити, щоб розпочати атаку.

Клієнтська сторона эксплойты

Ви можете використовувати фреймворк експлойтів Metasploit для доставки маяка. Beacon сумісний з фреймворком Metasploit staging.To доставляти Beacon за допомогою експлойту фреймворку Metasploit:

  1. Використовуйте windows/meterpreter/reverse_http[s] у параметрі PAYLOAD і налаштуйте LHOST і LPORT так, щоб вони спрямовувалися до вашого слухача. Ви не проходите Meterpreter, але наказуєте фреймворку Metasploit створити стадійний HTTP[s], який завантажить корисне навантаження з вказаного LHOST/LPORT.

  2. Установіть для параметра DisablePayloadHandler значення true. Це дозволить фреймворку Metasploit уникнути створення обробників всередині фреймворку для обслуговування вашого з’єднання корисного навантаження.

  3. Установіть для параметра PrependMigrate значення true. Цей параметр наказує фреймворку Metasploit додати шелкод, який запускає стагенер корисного навантаження в іншому процесі. Це допоможе вашому сеансу маяка зберігатися в разі збою експлуатованої програми або її закриття користувачем.

Нижче наведено скріншот msfconsole, який використовується для створення Flash-експлойту для доставки HTTP-маяка, розташованого за адресою 192.168.1.5 на порту 80:

Малюнок 27. Використання атак на стороні клієнта від Metasploit

Клонування сайту

Перш ніж відправити експлойт на ціль, його необхідно прикрасити. Інструмент клонування веб-сайту Strik Cobalt може допомогти в цьому. Інструмент клонування сайту створює локальну копію сайту з додаванням невеликого коду, щоб внести зміни в посилання та зображення, щоб вони працювали належним чином.

Щоб клонувати сайт, перейдіть в Site Management -> Clone Site.

Малюнок 28. Інструмент клонування веб-сайтів

Можна поєднати атаку з клонованим сайтом. Для цього напишіть його URL в поле Attack, і Cobalt Strike додасть його на клонований сайт за допомогою IFRAME.  Натисніть кнопку …   , щоб вибрати один із запущених експлойтів на стороні клієнта.

Клоновані сайти також можуть відстежувати  натискання клавіш. Встановіть Log натискання клавіш на клонованому сайті.  Це дозволить вам вставити JavaScript кейлоггер в клонований сайт.

Щоб переглянути натискання клавіш, збережені в журналах, або побачити відвідувачів клонованого сайту, перейдіть до розділу Переглянути  –> веб-журнал.

Установіть параметр Увімкнути  SSL для передавання цього вмісту через протокол SSL. Цей параметр доступний, якщо ви вказали дійсний сертифікат SSL у своєму профілі Malleable C2. Переконайтеся, що  поле Host  збігається з полем CN вашого сертифіката SSL. Це дозволить уникнути ситуації, коли функція не буде працювати через невідповідність між цими полями.

Спис фішингу

Тепер, коли у вас є уявлення про атаки на стороні клієнта, давайте поговоримо про те, як доставити атаку користувачеві. Найпоширенішим способом проникнення в мережу організації є фішинг. Інструмент Spear Phishing від Cobalt Strike дозволяє надсилати ідеальні електронні листи, використовуючи довільне повідомлення як шаблон.

Мета

Перш ніж надсилати фішинговий електронний лист, потрібно зібрати список цілей. Cobalt Strike чекає цілі в текстовому файлі. Кожен рядок файлу містить одну ціль. Адреса електронної пошти може служити цільовою. Ви також можете використовувати адресу електронної пошти, вкладку та ім’я. Якщо ім’я вказано, це допомагає Cobalt Strike налаштувати кожен фішинговий електронний лист.

Шаблони

Далі вам знадобиться шаблон фішингу. Перевага шаблонів полягає в тому, що ви можете повторно використовувати їх у різних операціях. Cobalt Strike використовує збережені електронні листи як шаблони. Cobalt Strike видаляє вкладення, вирішує проблеми з кодуванням і переписує кожен шаблон для конкретної фішингової атаки.

Якщо ви хочете створити власний шаблон, створіть повідомлення та надішліть його собі. Більшість поштових клієнтів мають можливість отримати  вихідний текст повідомлення. У Gmail натисніть стрілку вниз поруч із кнопкою Відповісти й виберіть Показати оригінал.  Збережіть це повідомлення в файл, а потім привітайте себе – ви створили свій перший фішинговий шаблон Cobalt Strike.

Ви можете налаштувати свій шаблон за допомогою токенів Cobalt Strike. Кобальтовий страйк

Замінює такі маркери у ваших шаблонах:

Опис токена

  • %To%Адреса електронної пошти особи, якій надсилається електронний лист.

  • %To_Name% Ім’я особи, якій надсилається електронний лист.

  • %URL% Вміст поля URL-адреси вбудовування у діалогове вікно фішингу списку.

Надсилання повідомлень

Тепер, коли у вас є цілі та шаблон, можна починати фішинг. Щоб запустити фішинговий інструмент списа, перейдіть до Атаки -> Спис Фіш.

Малюнок 29. Фішинговий інструмент “Спис”

 

Щоб надіслати фішинговий електронний лист, спершу потрібно імпортувати список цілей.  Ви можете імпортувати файл з плоским текстом, який містить одну адресу електронної пошти в кожному рядку. Імпортуйте файл, який містить адресу електронної пошти та ім’я, розділені знаками табуляції або комами, щоб точно настроїти повідомлення. Клацніть папку поруч  із полем Цілі, щоб імпортувати файл цілей.

Установіть  для параметра Шаблон значення шаблону електронної пошти. Шаблон електронної пошти Cobalt Strike – це просто збережений електронний лист. Cobalt Strike видалить зайві заголовки, видалить вкладення, перепише URL-адреси, перекодує повідомлення та перепише його для вас.

Натисніть на папку поруч з полем Шаблон, щоб вибрати одну з них.

У вас є можливість додати вкладення. Це відмінний привід скористатися одним з пакетів соціальної інженерії, згаданих раніше. Cobalt Strike додасть вкладення до вихідного фішингу.

Cobalt Strike не надає вам можливості скласти лист. Скористайтеся поштовим клієнтом, напишіть повідомлення і відправте його собі. Більшість поштових веб-клієнтів мають можливість бачити оригінальний текст повідомлення. У GMail натисніть стрілку вниз поруч із кнопкою Відповісти та виберіть пункт Показати оригінал.

Ви також можете доручити  Cobalt Strike переписати всі URL-адреси в шаблоні на вибрану вами URL-адресу. Встановіть параметр Embed URL, щоб Cobalt Strike переписував кожну URL-адресу в шаблоні електронної пошти на вказану URL-адресу. URL-адреси, додані таким чином, міститимуть маркер, який дозволить Cobalt Strike’y відстежувати будь-якого відвідувача конкретної фішингової атаки. Функції звітності та веб-журналу Cobalt Strike використовують переваги цього маркера.

Натисніть …, щоб вибрати один із сайтів, розміщених на Cobalt Strike.

Коли ви вставляєте URL-адресу, Cobalt Strike додає  до неї ?id=%TOKEN%. Кожне надіслане повідомлення отримає свій власний токен. Cobalt Strike використовує цей токен для зіставлення відвідувачів сайту з надісланими електронними листами. Якщо ви дбаєте про створення звітів, обов’язково зберігайте це значення.

Інсталюйте  поштовий сервер на запис відкритої ретрансляції або обміну поштою (MX). При необхідності ви також можете увійти на поштовий сервер, щоб надсилати фішингові електронні листи.

Натисніть  поруч із полем Поштовий сервер, щоб настроїти додаткові параметри сервера. Ви можете вказати ім’я користувача та пароль для автентифікації.

Параметр Random Delay наказує Cobalt Strike затримувати кожне повідомлення на випадковий час, до вказаної кількості секунд. Якщо цей параметр не встановлений, Cobalt Strike не буде затримувати свої повідомлення.

Малюнок 30. Налаштування Mail Server

Установити Bounce To  як адресу електронної пошти, на яку слід надсилати скасовані повідомлення. Це значення не впливає на те, яке повідомлення бачитимуть цілі. Натисніть  кнопку Попередній перегляд, щоб переглянути згенероване повідомлення для одного з одержувачів. Якщо в попередньому перегляді все виглядає добре, натисніть кнопку Надіслати, щоб виконати атаку. Cobalt Strike надсилає фішингові електронні листи через C&C-сервер.

Артефакти корисного навантаження та обхід антивіруса

HelpSystems регулярно запитує про ухилення. Чи обходить Cobalt Strike антивірусні продукти? Які антивірусні продукти обходить стороною? Як часто проходить перевірка?

За замовчуванням артефакти Cobalt Strike, ймовірно, будуть виявлені більшістю рішень захисту кінцевих точок. Хоча ухилення не є метою за замовчуванням для продукту, Cobalt Strike забезпечує певну гнучкість.

Ви, оператор, можете змінювати виконувані файли, бібліотеки DLL, аплети та шаблони сценаріїв, які Cobalt Strike використовує у своїх робочих процесах. Ви також можете експортувати корисне навантаження маяка Cobalt Strike у різні формати, які працюють зі сторонніми інструментами, призначеними для полегшення ухилення.

У цій главі описані особливості Cobalt Strike, які забезпечують таку гнучкість.

Набір артефактів

Cobalt Strike використовує набір артефактів для створення виконуваних файлів і бібліотек DLL. Artifact Kit входить до складу Arsenal Kit, який містить колекцію наборів – вихідний код фреймворку для створення виконуваних файлів і бібліотек DLL, які обходять деякі антивірусні продукти.

Теорія набору артефактів

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

Щоб уникнути такого виявлення, зловмисник зазвичай якимось чином заплутує шелкод і поміщає його в бінарний файл. Цей процес обфускації дозволяє подолати антивірусні продукти, які використовують простий пошук рядків для виявлення шкідливого коду.

Багато антивірусні продукти йдуть ще далі. Вони імітують виконання виконуваного файлу у віртуальній пісочниці. На кожному етапі емуляції антивірусний продукт перевіряє наявність відомих шкідливих програм в емульованому технологічному просторі. Якщо виявлено відоме зловмисне програмне забезпечення, антивірусний продукт позначає виконуваний файл або бібліотеку DLL як зловмисну. Цей метод перемагає багатьох кодерів і пакувальників, які намагаються приховати відомі шкідливі програми від  Сигнатурні антивірусні продукти.

Протидія Cobalt Strike цьому проста. Антивірусна пісочниця має обмеження. Це не повноцінна віртуальна машина. Існує поведінка системи, яке антивірусна пісочниця не емулює.

Набір артефактів – це набір виконуваних шаблонів і шаблонів DLL, які використовують деяку поведінку, яка не емулюється антивірусними продуктами, для вилучення шелкоду всередині виконуваного файлу.

Один з методів (див. src-common/bypass-pipe.c в наборі артефактів) генерує виконувані файли та бібліотеки DLL, які пропускають шелкод через іменований конвеєр. Якщо антивірусна пісочниця не емулює іменовані конвеєри, вона не знайде шкідливий шелкод.

Де набір артефактів не працює

Звичайно, антивірусні продукти можуть долати специфічні реалізації набору артефактів.    Якщо виробник антивіруса пише сигнатури для використовуваної вами технології, то створювані ним виконувані файли і бібліотеки DLL потраплять в об’єктив. Це почало відбуватися з часом у випадку зі стандартною технікою обходу в Cobalt Strike 2.5 і нижче. Якщо ви хочете отримати максимальну віддачу від набору артефактів, ви будете використовувати одну з його технік як основу для розробки власної реалізації набору артефактів.

Однак навіть цього недостатньо. Деякі антивірусні продукти використовують сервери постачальника антивірусної програми. Там виробник визначає, чи є виконуваний файл або бібліотека DLL законним або невідомим, ніколи раніше не баченим виконуваним файлом або бібліотекою DLL. Деякі з цих продуктів автоматично надсилають постачальнику невідомі виконувані файли та бібліотеки DLL для подальшого аналізу та оповіщення користувачів. Інші вважають невідомі виконувані файли та бібліотеки DLL шкідливими. Це залежить від виробу і його налаштувань.

Справа в тому, що ніяка кількість заплутування не допоможе вам в даній ситуації. Ви зіткнулися з  іншим типом захисту і вам доведеться обійти його відповідно. Розглядайте такі ситуації так само, як ви розглядали б білі списки вкладень. Спробуйте знайти законну програму (наприклад, powershell), яка доставить ваше стадійне корисне навантаження в пам’ять.

Набір артефактів – це набір виконуваних шаблонів і шаблонів DLL, які використовують деяку поведінку, яка не емулюється антивірусними продуктами, для вилучення шелкоду всередині виконуваного файлу.

Один з методів (див. src-common/bypass-pipe.c в наборі артефактів) генерує виконувані файли та бібліотеки DLL, які пропускають шелкод через іменований конвеєр. Якщо антивірусна пісочниця не емулює іменовані конвеєри, вона не знайде шкідливий шелкод.

Набір артефактів – це набір виконуваних шаблонів і шаблонів DLL, які використовують деяку поведінку, яка не емулюється антивірусними продуктами, для вилучення шелкоду всередині виконуваного файлу.

Один з методів (див. src-common/bypass-pipe.c в наборі артефактів) генерує виконувані файли та бібліотеки DLL, які пропускають шелкод через іменований конвеєр. Якщо антивірусна пісочниця не емулює іменовані конвеєри, вона не знайде шкідливий шелкод.

Як користуватися набором артефактів

Перейдіть до Help ->  Arsenal з ліцензованого Cobalt Strike, щоб завантажити   Arsenal Kit. Ви також можете отримати доступ до Арсеналу безпосередньо за адресою https://  www.cobaltstrike.com/scripts

HelpSystems поширює Arsenal Kit у вигляді файлу .tgz. Використовуйте команду tar, щоб отримати його. Набір Arsenal включає набір артефактів, який можна зібрати разом з іншими комплектами або як окремий комплект. Відомості про створення наборів див. у файлі README.md.

Вам пропонується змінити набір артефактів та його методи відповідно до ваших потреб. Звичайно, досвідчені програмісти на C можуть зробити з ним більше, але працювати з ним може і непрограміст. Наприклад, великий антивірусний продукт любить писати сигнатури до виконуваних файлів пробної версії Cobalt Strike кожен раз, коли вона виходить.

До версії 2.5 пробна і ліцензійна версії Cobalt Strike використовували техніку названих труб у своїх виконуваних файлах і бібліотеках DLL. Виробник написав підпис для названої трубної струни, яку використовував виконуваний файл.

Подолати їх підписи, випуск за випуском, було просто, досить змінити назву каналу у вихідному коді цієї техніки.

Veil Evasion фреймворк

Veil – популярний фреймворк для генерації виконуваних файлів, які обходять деякі антивірусні продукти. Ви можете використовувати Veil для створення виконуваних файлів Cobalt Strike.

Кроки:

  1. Перейдите в Корисні навантаження -> Stager Генератор корисного навантаження.

  2. Виберіть обробник, для якого потрібно створити виконуваний файл.

  3. Виберіть Veil як тип виводу.

  4. Натисніть кнопку Створити та збережіть файл.

  5. Запустіть фреймворк Veil Evasion і виберіть техніку, яку хочете використовувати .

  6. Вуаль в кінцевому підсумку попросить шелкод. Виберіть опцію Veil, щоб надати власний шелкод.

  7. Вставте вміст файлу, створеного генератором корисного навантаження Cobalt Strike.

  8. Натисніть Enter, і ви отримаєте новий виконуваний файл, який створила Veil.

Малюнок 32. Використання Veil для створення виконуваного файлу

Атака аплетів Java

HelpSystems поширює вихідний код атак Java Applet Cobalt Strike як аплет-Kit.  Він також доступний в арсеналі Cobalt Strike. Перейдіть до розділу Довідка  -> Арсенал і завантажте  аплет-комплект.

Використовуйте включений build.sh  сценарій для збирання комплекту аплетів на Kali Linux. Багато користувачів Cobalt Strike використовують цю функцію для підписання атаки Java-аплету за допомогою придбаного сертифіката кодового підпису.

Настійно рекомендуємо це зробити

Щоб змусити Cobalt Strike використовувати ваш аплет-комплект замість вбудованого, завантажте  скрипт applet.cna, що входить до комплекту аплету.

На сторінці арсеналу Cobalt Strike ви також помітите  аплет Power. Це альтернативна реалізація атак Java-аплету Cobalt Strike, яка використовує PowerShell для доставки корисного навантаження в пам’ять. Аплет живлення демонструє, наскільки гнучким ви можете бути відтворити стандартні атаки Cobalt Strike зовсім по-іншому і при цьому застосувати їх в робочих процесах. Щоб змусити Cobalt Strike використовувати ваш аплет-комплект замість вбудованого, завантажте  скрипт applet.cna, що входить до комплекту аплету.

Набір ресурсів

Resource Kit – це інструмент Cobalt Strike для модифікації шаблонів сценаріїв HTA, PowerShell, Python, VBA та VBS, які Cobalt Strike використовує у своїх робочих процесах. Resource Kit є частиною Arsenal Kit, який містить колекцію наборів і доступний користувачам з ліцензією в арсеналі Cobalt Strike. Перейдіть до Довідка -> Арсенал, щоб завантажити Арсенальний комплект.

Файл README.md, який постачається з набором ресурсів, описує включені сценарії та функції, які вони використовують. Щоб обійти захист, змініть рядки або поведінку в цих сценаріях.

Щоб змусити Cobalt Strike використовувати шаблони сценаріїв замість вбудованих шаблонів сценаріїв, завантажте  скрипт dist/arsenal_kit.cna або dist/resource/resources.cna Для отримання додаткової інформації перегляньтефайл README.md Arsenal Kit.

Набір масок для сну

Набір масок для сну – це вихідний код функції маски для сну, яка виконується для заплутування маяка в пам’яті перед тим, як він перейде в режим сну. Ця техніка заплутування може бути використана для ідентифікації маяка. Щоб цього не сталося, Cobalt Strike надає скрипт агресора, який дозволяє користувачеві змінювати зовнішній вигляд функції маски сну в пам’яті. Версія 4.5 містить список купчастих записів для маскування та демаскування. Перейти до довідки  ->  Arsenal, щоб завантажити  Arsenal Kit, який включає в себе Sleep Mask Kit. Для цього вам знадобиться ваш ліцензійний ключ.

Для отримання додаткової інформації про набір масок для сну дивіться  arsenal-kit/ README.md та arsenal-kit/kits/sleepmask/README.md.

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

Інші статті по темі
Знайшли помилку?
Якщо ви знайшли помилку, зробіть скріншот і надішліть його боту.