Memory forensics, Rubber Duck и пароли GPO. Решение задач с r0от-мi. Часть 2

в 15:38, , рубрики: ctf, forensics, memory forensics, ralf_forensics, Volatility, информационная безопасность
image

Данная статья содержит решений заданий, направленных на криминалистику оперативной памяти, разбора пэйлоада для USB Rubber Duck, а так же расшифрования перехваченных паролей групповой политики Windows.

Организационная информация

Специально для тех, кто хочет узнавать что-то новое и развиваться в любой из сфер информационной и компьютерной безопасности, я буду писать и рассказывать о следующих категориях:
  • PWN;
  • криптография (Crypto);
  • cетевые технологии (Network);
  • реверс (Reverse Engineering);
  • стеганография (Stegano);
  • поиск и эксплуатация WEB-уязвимостей.

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

Чтобы вы могли узнавать о новых статьях, программном обеспечении и другой информации, я создал канал в Telegram и группу для обсуждения любых вопросов в области ИиКБ. Также ваши личные просьбы, вопросы, предложения и рекомендации рассмотрю лично и отвечу всем.

Вся информация представлена исключительно в образовательных целях. Автор этого документа не несёт никакой ответственности за любой ущерб, причиненный кому-либо в результате использования знаний и методов, полученных в результате изучения данного документа.

Ugly Duckling

image

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

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

image

Посмотрим файл с декодированным кодом. Там имеется шеллкод, написанный на языке powershell.

image

Код закодирован в base64. Давайте декодируем.

image

Нетрудно догадаться, что данный код скачивает файл. Второй код его запускает.

image

Декодирование названия файла, дает нам прямое указание на флаг.

image

Я запустил программу(что в таких случаях не нужно делать) и получил флаг.

image

Active Directory — GPO

image

Нам дают дамп трафика, записанного во время загрузки рабочей станции, которая находится в домене Active Directory. Задача: найти пароль администратора.

Открываем дамп трафика в wireshark. Нажимаем Ctrl+F для поиска строки password среди содержимого пакетов.

image

Находим пакет. Откроем его двойным левым кликом.

image

По содержимому можно сказать, что мы нашли файл Groups.xml, где содержится зашифрованный пароль. Давайте скопируем его, для этого после правого клика выбираем “as a Printable Text”.

image

В файле у нас хранится информация о двух пользователях. Давайте расшифруем cpassword. Информацию о способе шифрования и ключ можно взять на официальном сайте Майкрософт здесь.

image

Для расшифрования пароля я буду использовать Cryptool (https://www.cryptool.org/en/ct1-downloads).

Вставляем наш пароль в Base64 в окошко и выбираем:
Indiv. Procedures --> Tools --> Codes --> Base64 Encode/Decode --> Base64 Decode.

Но при попытке декодировать получим вот такое предупреждение.

image

Давайте к нашем тексту добавим =, чтобы добить блок до нужной длины. Повторим декодирование.

image

Теперь расшифруем: Analysis --> Symmetric Encryption (modern) --> AES (CBC). В открывшемся окошке выбираем длину ключа 256 бит и вставляем ключ.

image

Как результат, получаем расшифрованный пароль.

image

Command & Control — level 3

image

В задании нас просят найти малварь в дампе оперативной памяти. Будем использовать Volatility. Начнем с информации о системе.

image

Так используется Windows 7 SP0 x86. Давайте посмотрим список процессов в древовидной структуре.

image
image

Есть одна очень подозрительная вещь. Браузер запускает консоль. Давайте взглянем на список подгружаемых модулей. Самым первым будет исполняемый файл.

image

Стандартный браузер Майкрософт расположен в окружении System32, а данная программа в окружении пользователя. Тем более она использует Dll библиотеку AVAST, что скорее всего помогает программе быть незамеченной антивирусом. Осталось взять md5 от полного пути…

Command & Control — level 4

image

Нам говорят, что вредоносное ПО используется для передачи данных. Задача найти адрес сервера и порт.

Открываем дамп в Volatility. Так как это один и тот же дамп с прошлого задания, поэтому информацию о системе мы знаем. Также мы знаем, что целевое ПО запускает командную строку, поэтому будет логичным проверить историю команд. Для этого нам поможет модуль consoles. Из двух процессов нас интересует с PID’ом 1616.

image

Из истории команд можно выделить запуск приложения для перенаправления трафика между разными сетями — tcprelay. Данное приложение можно использовать, для вариации передвижений внутри сети компании.

Conhost.exe является процессом, который обрабатывает консольные окна в Windows. Он решает одну из фундаментальных проблем предыдущих версий Windows, которая проявлялась при управлении консольными окнами и нарушала работу в режиме перетаскивания объектов «drag & drop» в Windows Vista.

Сдампим процесс conhost.

image

А теперь глянем строки, которые он будет содержать. Из них выбираем только те, которые содержат слово tcpdump. Такимо образом находим полную команду, которая выполнялась в консоле.

image

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

Command & Control — level 6

image

Нас просят найти домен C&C сервера. Давайте разберемся уже с самим вредоносным ПО. Сдампим процесс.

image

В VirusTotal есть аналитика, которая покажет домены.

image

По названию мы сразу поймем нужный.

Дальше больше и сложнее… Вы можете присоединиться к нам в Telegram. Там можете предлагать свои темы и участвовать в голосовании на выбор темы для следующих статей.

Автор: RalfHacker

Источник


* - обязательные к заполнению поля


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js