УДК 004.9
ОБНАРУЖЕНИЕ СКРЫТОГО КАНАЛА ПЕРЕДАЧИ ДАННЫХ
ПО ПРОТОКОЛУ DNS
Р. А. Астаулов Научный руководитель - В. Г. Жуков
Сибирский государственный университет науки и технологий имени академика М. Ф. Решетнева Российская Федерация, 660037, г. Красноярск, просп. им. газ. «Красноярский рабочий», 31
E-mail: roman21k2@gmail.com
Рассмотрены основы реализации скрытого канала передачи данных по протоколу DNS -DNS-туннеля - использование стандартных DNS-запросов позволяет осуществлять обход средств межсетевого экранирования. Предложены меры по обнаружению DNS-туннелей и предотвращению их реализации в локальной вычислительной сети.
Ключевые слова: DNS-туннелирование, скрытая передача данных, противодействие утечке информации.
DETECTION OF THE HIDDEN DATA TRANSFER CHANNEL ON THE DNS PROTOCOL
R. A. Astaulov Scientific Supervisor - V. G. Zhukov
Reshetnev Siberian State University of Science and Technology 31, Krasnoyarsky Rabochy Av., Krasnoyarsk, 660037, Russian Federation E-mail: roman21k2@gmail.com
The bases of realisation of hidden data link on protocol DNS are considered - DNS-tunnel - use of standard DNS-enquiries allows to implement bypass of the means of gateway shielding. Measures on DNS-tunnels detection and prevention of their realisation in local computer network are offered.
Keywords: DNS-tunneling, hidden data transmission, counteraction to information leakage.
DNS-туннелирование представляет собой технологию скрытой передачи данных и является серьезной угрозой для сетевой безопасности организации. Так, по данным Cisco Annual Security Report 2017 91.3 % вредоносного программного обеспечения (ВПО) использует протокол DNS, позволяющий осуществлять подачу управляющих действий, а также переводы денежных средств злоумышленникам. Стоит отметить, что контроль за DNS-трафиком ведут 32 % организаций [2]. Таким образом, большая часть информационных систем не подготовлены к угрозам, сопутствующим DNS-туннелированию.
В соответствии с моделью Kill-Chain, описывающей стадии осуществления атаки, можно отметить, что DNS используется ВПО на таких стадиях как:
1) проникновение (подключение к вредоносным доменам и получение управления);
2) заражение (скачивание ВПО на зараженный хост);
3) утечка (собранные данные отправляются на удаленный сервер злоумышленника). Базовая архитектура реализации скрытого канала передачи данных на основе DNS-
туннелирования [3] представлена на рисунке:
1) авторитативный DNS-сервер за границами МЭ;
2) серверное ПО, поддерживающее DNS-туннель;
3) клиентское ПО, осуществляющее инкапсуляцию TCP/IP пакетов в DNS-трафик с дальнейшей инициализацией запросов к авторитативному DNS-серверу.
Актуальные проблемы авиации и космонавтики - 2018. Том 2
Схема DNS-туннеля
На данный момент существует множество программ, реализующих скрытую передачу данных через DNS-туннель, представляющих серьезную угрозу для организаций. Примерами таких программ являются Heyoka, dns2tcp, Iodine. Эти средства различаются по способу реализации туннеля, например, Heyoka, работая с ОС Windows, благодаря EDNS (Extension mechanisms for DNS), обладает размером передаваемых данных более 512 байт. В отличие от остальных средств туннелирования, свое присутствие маскирует путем создания туннеля с несколькими авторита-тивными DNS-серверами. Блокирования одного или нескольких DNS-серверов приведет к незначительной потере скорости туннеля. Следовательно, обнаружение и блокирование Heyoka является проблематичным. dns2tcp, работая под ОС Linux, является одной из наиболее простых программных средств для создания DNS-туннеля. Для запуска и инициализации соединения на стороне клиента не требуется установки новых драйверов или интерфейсов, также как не нужны и права администратора, для передачи данных использует ресурсные записи KEY и TXT. Iodine, функционирует под ОС Windows, Linux, Android и использует экспериментальную NULL-запись, что ускоряет передачу данных, увеличивая размер пакета до 1 КБ полезных данных [3].
По причине того, что DNS-трафик контролируется редко, многие утилиты не имеют механизма своего сокрытия в сети. Это позволяет использовать техники обнаружения DNS-туннеля, основанные на контроле аномалий трафика. Некоторые признаки аномалии представлены ниже.
1. Увеличенное число DNS-запросов. Объем трафика по DNS-протоколу является редко меняющейся величиной. Поэтому внезапное увеличение DNS-запросов может свидетельствовать об аномалии [4].
2. Размер запроса или ответа превышает среднестатистический, равный 40-60 байт, может означать работу скрытого канала.
3. Наличие запросов к DNS-серверам с DGA (Domain Generation А^пйт^именами. Имена легитимных доменов, обычно, человекочитаемы, а DGA часто используются для незаконных действий и не несут смысловой нагрузки. Методы обнаружения таких серверов основаны на машинном обучении [3].
4. Присутствие в трафике запросов, использующих редко используемые ресурсные записи, например, TXT, NULL или KEY.
5. Обращение к DNS-серверам с длинными именами. Из результатов исследования [4] наибольшая концентрация серверов, используемых злоумышленниками, имеет длину около 200 символов, нормальными считаются имена до 30 символов.
Инструментом, позволяющим отслеживать рассмотренные аномалии в сетевом трафике, являются системы класса NBAD (Network-based Anomaly Detection), которые содержат как встроенные правила, так и могут быть настроены самостоятельно после проведенного режима обучения [6].
Помимо NBAD аномалии могут быть обнаружены с помощью традиционных решений класса Next Generation, а также систем обнаружения вторжений. Например, для Open-Sourse решения Snort существует множество правил по отслеживанию аномалий в DNS-траике, ниже приведено правило, позволяющее обнаружить аномальные запросы с использованием TXT ресурсной записи [5].
alert udp $EXTERNAL_NET any -> $HOME_NET 53 (msg:MPotential DNS Tunneling"; content:M|01 00|"; offset:2; within :4; content:M|00 00 10 00 01|"; offset:12; within:255; classtype:bad-unknown; threshold: type threshold, track by_dst, count 20, seconds 60; sid:1000001;)
Наряду с вышеуказанными средствами защиты, рекомендуется реализация превентивных мер на стороне клиента:
1. Запрет запуска нежелательного ПО. С помощью групповых политик или средства AppLocker создаются правила, разрешающие запуск тех программ, которые содержаться в белом списке.
2. Использование непривилегированных учетных записей. По причине того, что для создания туннеля, необходимы действия с правами администратора, на уровне операционной системы необходимы ограничения прав пользователя.
Для обеспечения безопасности сети необходим комплексный подход, включающий в себя как превентивные меры, так и активные действия по анализу аномалий. Наличие средств защиты без их детального конфигурирования ведет к тому, что вредоносное ПО использует протоколы, обычно не подвергающиеся контролю, в своих целях. Одним из таких протоколов является DNS. Для того чтобы данный протокол использовался легитимно необходимо уделить его контролю особое внимание. Средства защиты и рекомендации, описанные в статье, позволяют снизить угрозу использования DNS, в целях передачи конфиденциальных данных за пределы защищаемой сети.
Библиографические ссылки
1. SafenSoft. Комплексная защита информации на предприятии [Электронный ресурс]. URL: http://rus.safensoft.com/security.phtml?c=791 (дата обращения: 15.03.2018).
2. Cisco Annual Security Report 2017 [Электронный ресурс]. URL: https://www.cisco.com/ c/en/us/products/security/security-reports.html (дата обращения: 15.03.2018).
3. SANS Institute InfoSec Reading Room. Detecting DNS Tunneling [Электронный ресурс]. URL: https://www.sans.org/reading-room/whitepapers/dns/detecting-dns-tunneling-34152 (дата обращения: 15.03.2018).
4. Лукацкий А. Об утечках через dns, которые не ловит ни одна DLP [Электронный ресурс]. URL: http://bis-expert.ru/blog/660/56843 (дата обращения: 02.04.2018).
5. DNS tunneling [Электронный ресурс]. URL: https://www.daemon.be/maarten/ dnstunnel.html (дата обращения: 02.04.2018).
6. Лукаций А. Как выявить скрытую передачу данных в сети [Электронный ресурс]. URL: http://www.itsec.ru/articles2/in-ch-sec/kak-vyyavit-skrytuyu-peredachu-dannyh-v-seti (дата обращения: 06.04.2018).
© Астаулов Р. А., 2018