Одним из наиболее важных «нововведений» в области вредоносных программ за последнее десятилетие является так называемый алгоритм генерации доменов (DGA). DGA - это техника автоматизации, которую злоумышленники используют для защиты от защитников защищающих сотрудников от атак. Хотя DGA используется уже более 10 лет, он все еще является мощной техникой, с которой безопасникам приходится сталкиваться. К счастью, сейчас появляются новые технологии, которые могут лучше противостоять DGA.
Злоумышленники разработали DGA, чтобы вредоносная программа могла быстро создать список доменов, которые она может использовать для сайтов, которые дают ей инструкции и получают информацию от вредоносной программы (обычно называемую «command & control» или C2 или система управления бот-сетями).
Злоумышленники используют DGA, чтобы быстро переходить на новые домены, которые они используют для работы своих вредоносных программ. Злоумышленники делают это, потому что программное обеспечение для обеспечения безопасности и поставщики действуют быстро, чтобы блокировать и уничтожать вредоносные домены, которые использует вредоносное ПО. Злоумышленники разработали DGA специально для противодействия этим действиям, чтобы стать еще быстрее.
В прошлом злоумышленники вели постоянный список вредоносных доменов. Безопасники могут легко взять этот список и начать блокировать и даже уничтожать эти сайты. Используя алгоритм для построения постоянного нового списка доменов, безопасникам становится сложнее знать или предсказать, какие домены будут использоваться, чем если бы у них был простой список доменов. Чтобы получить список доменов, которые будут использовать вредоносные программы, защитники должны изучить алгоритм, который может быть сложным.
Удаление сайтов, на которых работает вредоносное ПО использующее DGA, сложно осуществить, поскольку безопасникам приходится проходить через процесс работы с интернет-провайдерами, чтобы уничтожить эти вредоносные домены один за другим. Многие DGA созданы для использования сотен или даже тысяч доменов. И эти домены часто работают только в течение ограниченного периода времени. В этой ситуации блокирование и удаление доменов, связанных с DGA, быстро превращается в игру «ударить крота», которая иногда бесполезна.
Почему я должен переживать, что это может сделать с моей компанией?
DGA сама по себе не может навредить вам. Но это важная часть, которая позволяет современным вредоносным программам пытаться избежать блокировки и контрмер безопасности. Важность и полезность DGA для хакеров лучше всего подтверждается тем фактом, что техника регулярно и постоянно используется по крайней мере с 2008 года. DGA был ключевым компонентом атак Conficker в 2008 и 2009 годах и частью его успеха.
Я делаю много пилотов NGFW и исследую трафик и атаки в нем. Почти в любой сети я вижу массу таких запросов к DGA доменам и их никто не контролирует. Хотя это верный признак того, что на рабочих станция и серверах ведется несанкционированная активность.
Что я могу с этим поделать?
Поскольку DGA - это метод, который гарантирует успешность атак вредоносных программ, то, вы можете начать участвовать в программе нахождения доменов DGA: начать отправлять ваши DNS запросы в специализированные ЦОД, которые обрабатывают big data и используют machine learning. Сервер анализирует DNS запросы в реальном времени и принимает решение несет ли этот неизвестный или новый домен пользу или вред.
Новые технологии анти-DGA, которые используют машинное обучение и big data, способны противостоять автоматизации DGA с помощью собственного автоматического прогнозирования, которое может предвидеть, блокировать, помогать в удалении вредоносных сайтов или даже, в некоторых случаях, предотвращать использование этих вредоносных сайтов в первое место.
А что на практике?
Итак в современные NGFW были встроены две новые техники защиты DNS и они служат одной цели, но появились в разное время: DNS Sinkholing и Anti-DGA. Давайте разберем это.
Во-первых сама техника защиты DNS Sinkholing существует уже давно и хакеры про нее в курсе. Вредоносный код использует подключения по DNS и безопасники блокируют эти подключения, изучая вредоносный код и забирая из него эти DNS адреса, получая в итоге индикаторы компрометации и пополняя базы Threat Intelligence. То есть DNS Sinkholing это по сути база DNS адресов и метод обнаружения и реагирования DNS запросов в сети.
Во-вторых пришлось создать специальные мощные сервера для анализа новых DNS запросов к еще неизвестным ранее доменам в реальном времени. Почему? Хакеры в ответ на создание DNS Sinkholing стали генерировать себе DNS домены так часто, что системы сбора и анализа перестали успевать собирать их из вредоносного кода. И мало того текущие системы анализа (например песочницы) и не могут создать список всех доменов, которыми будет пользоваться хакер, потому что в генератор заложено бесконечное число вариантов. И тут уже требуется специальный machine learning, чтобы отличить "человеческий" домен от "нечеловеческого" в реальном времени.
В-третьих DNS запросы не просто блокируются, а подменяются, потому что запросы приходят от DNS сервера, а не от зараженных станций. И просто блокировать запросы неинтересно. Когда мы подменяем ответ DNS серверу, то видим потом соединения к адресу, который мы использовали в ответе, например, это может быть адрес sinkhole.paloaltonetworks.com
У Palo Alto Networks механизм anti-DGA реализован и называется DNS Security.
На картинке видно журнал, где показано что видит DNS Security в Palo Alto Networks, и подобнее уже было описано тут. Посмотрите какие в журнале идут имена доменов! Чтобы определить программа ли этот адрес сгенерировала или человек и используется machine learning и big data.
Хакеры перешли к новому методу обхода защиты базами Threat Intelligence.
Поскольку базы Threat Intelligence активно пополняются и используются безопасниками и на сегодня в каждой компании и мы можем прямо на периметровом межсетевом экране обнаружить и заблокировать подключение по известному DNS, IP или URL к центру управления, то хакерам нужен был новый подход.
Сейчас вредоносный код генерирует специальные строки с именами доменов и подключается по нужному ему имени DNS в нужный ему момент времени. Этот алгоритм называется Domain Generation Algorithm (DGA). Центр управления бот-сетью теперь не находится по одному доменному имени, а постоянно "переезжает". Например на картинке ниже видно, как было подключение по адресу hqrsuxsjqycv.info. Это какой-то придуманный домен (явно не человеком).
Поскольку в базу Threat Intelligence невозможно поместить все варианты доменов для каждого типа вредоносного кода или spyware, то должны применяться новы методики защиты от DGA.
Если посмотреть в базе Autofocus данный домен, то он обнаруживается пассивным DNS на большом количестве устройств
И если пойти дальше и посмотреть какие еще домены имеют ссылки на адрес 88.208.54.88, то обнаружится вот такой список еще более странных доменов.
.
Защита от DGA
В Palo Alto Networks NGFW существует защита DNS, которая распознает автоматически домены, которые не может сгенерировать человек. Основой этой защиты является Machine Learning, который распознает эти алгоритмы генерации имен доменов. Функционал защиты DNS в NGFW включает функцию DNS Sinkholing для подмены обращений к найденным вредоносным доменам. Также осуществляется блокировка туннелей по DNS. Также источником информации о вредоносных DNS адресах является песочница Wildfire, пассивные сенсоры DNS по всему миру, специализированные HoneyPot, лаборатория исследователей Unit42 и информация получаемая в рамках сотрудничества между всеми компаниями по кибербезопасности входящими в Cyber Threat Alliance. Все готовые результаты приходят с обновлениями в NGFW и благополучно блокируются как это видно на картинке выше.
Еще пример
Или еще один интересный домен c5dls1in4l1e.ru, который не обнаруживается обычными базами, но обнаруживается алгоритмом DGA. Вот, например, что про него думает Virustotal
Однако он известен DGA детектору с 2018 года и до сих пор используется, как это видно в базе угроз Threat Vault и в журнале NGFW
Если вы занимаетесь Threat Hunting, то вам будет интересно поизучать эти найденные адреса. Вот, например, данные из Autofocus:
Больше всего улыбает, что IP адрес 104.27.152.22 занесен в категорию Home and Garden ;-)
27:00 "To Cloud or not to Cloud", Alexandre Delcayre43:10 "Что является важным критерием в проектах ИБ", Александр Парамонов44:30 "Ваши проекты 2019-2020 года: SDN, SD-WAN, SOAR, NG SOC, UEBA, XDR, HTTP 2.0, DNS Security, SSL Decrypt", Денис Батранков1:24:38 Cсылки на прошлые вебинары Palo Alto Networks https://safebdv.blogspot.com/p/blog-page.html1:28:10 Круглый стол по облакам с участием Ангара (Сергей Шерстобитов, Дмитрий Пудов), Сбербанка (Сергей Валуйских), Яндекс.Облако (Григорий Отребьев), Северсталь (Сергей Гусев)2:23:40 "Arista и Palo Alto Networks - как улучшить безопасность ядра сети", Андрей Нуштаев2:38:57 Опыт выбора NGFW в компании EPAM, Дмитрий Чернобай, ИТ директор EPAM Systems2:50:00 Cortex XDR - English language3:49:49 Cortex XDR - ответы на вопросы4:59:17 "New Buzzwords, SOC, CSIRT, PSIRT, Next Gen SOC, Red/Blue Team, Shadow IT, Air GAP, Mimikatz, DFIR", Денис Батранков5:11:10 "Интеграция Autofocus в SOC и автоматизация IoC через EDL и MineMeld", Денис Батранков5:21:55 "Что такое TTP - Tactics, Techniques and Procedures", Денис Батранков5:26:40 "Что делает бесплатная утилита MineMeld", Денис Батранков5:30:18 Palo Alto Networks как источник аналитики в Big Data, Юрий Бутузов, ICL5:52:40 "В фокусе пользователь, а не IP адрес" Игорь Булатенко, QIWI6:19:38 RedLock и Aperture, Илья Осадчий, Tiger-Optics6:44:50 Global Protect Cloud Service Palo Alto Networks и методики защиты удаленных офисов и мобильных устройств, Денис Батранков7:35:35 SD-WAN, Сергей Козлов, Riverbed8:06:10 Бесплатные утилиты SANS, Expedition, Migration Tool, UTD, Best Practice Assesment, SLR, Machine Learning для улучшения вашей безопасности, Денис Батранков8:27:50 Награждение партнеров Palo Alto Networks, команда Palo Alto Networks