Денис Здесенко
12.02.2020
5007

HoneyPot как инструмент защиты VoIP

Введение Как известно, безопасность сетей телефонии является очень важной задачей для VoIP-инженеров, внедряющих коммерческие решения для крупных компаний. Причина довольно тривиальна – от этого напрямую зависит финансовая безопасность клиента. В данной статье будет рассмотрен один из способов защиты от злоумышленников, решивших взломать телефонную сеть компании с целью заработать на этом. Речь пойдет о так называемых […]

Введение

Как известно, безопасность сетей телефонии является очень важной задачей для VoIP-инженеров, внедряющих коммерческие решения для крупных компаний. Причина довольно тривиальна – от этого напрямую зависит финансовая безопасность клиента. В данной статье будет рассмотрен один из способов защиты от злоумышленников, решивших взломать телефонную сеть компании с целью заработать на этом. Речь пойдет о так называемых HoneyPot’ах – приманках для недоброжелателей.

Что же такое HoneyPot? Это подставной ресурс, задачей которого является «сдаться» хакеру и собрать о нем немного информации, например, изучить его методы, стратегию и средства, которыми он орудует. Проанализировав полученные данные, можно соответственно разработать стратегию защиты реальных ресурсов, методики и новые решения для отражения атак.

В качестве примера будут рассмотрены два варианта расставления ловушек, при наличии двух ip-адресов, предоставляемых провайдером. Про обращении на один из них по порту 5060 будем заносить адрес обратившегося в черный список, если он не является проверенным.

HoneyPot на Mikrotik

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

Локальная сеть за маршрутизатором MikroTik
Локальная сеть за маршрутизатором MikroTik

Учитывая поставленную перед нами задачу, логика решения будет напоминать работу fail2ban в linux. В разделе Firewall настраиваем ряд правил согласно которым при первичном обращении по порту 5060 с помощью протокола udp адрес обратившегося попадает в некий список (у нас st_1) на 1 минуту. При дальнейших попытках повторного подключения он попадает уже в следующий список (st_2) уже на 5 минут. Ну а после этого, если будут предприняты попытки создать новые подключения, адрес летит уже в черный список (blacklist) и на этот раз перманентно, а трафик блэклиста мы обрабатываем действием drop. Рассмотрим поподробнее создание правил на скриншотах:

  1. Создаем правило, согласно которому адрес будет улетать в список st_1
Настройка правила для попадания в st_1
Настройка правила для попадания в st_1

2. Делаем такое же правило для того чтобы адрес летел в список st_2 но уже из списка st_1

Настройка правила для попадания в st_2
Настройка правила для попадания в st_2

3. По аналогии делаем для списка st_2 и списка blacklist, меняя только время

Настройка правила для попадания в blacklist
Настройка правила для попадания в blacklist

4. Делаем правило для drop

Настройка правила для drop’а трафика из blacklist
Настройка правила для drop’а трафика из blacklist

Выставляем правила в нужном порядке. Должно получиться следующим образом:

Результат создания правил
Результат создания правил

В дальнейшем мы можем использовать сформировавшийся черный список для интерфейса с основным ip-адресом для блокировки трафика от вредоносных хостов.

HoneyPot на Linux

В качестве еще одно й схемы подключения можно выделить следующую: локальная сеть находится за сервером, на котором у нас развернут Asterisk.

Локальная сеть за сервером
Локальная сеть за сервером

В данном случае решение гораздо проще, все что нам необходимо – это грамотно настроенный iptables в паре с ipset.

Логика:

  1. Добавляем в iptables правило, которое будет включать логгирование и помечать трафик, идущий с интрефейса со вторым ip-адресом.
Правило в iptables для второго интерфейса
Правило в iptables для второго интерфейса

2. Вытаскиваем из /var/log/messages записи попыток подключения с пометкой Attack. Нас интересует поле SRC – это хост, с которого пытается подключиться злоумышленник, его мы и должны подсунуть ipset в таблицу blacklist_eth2. Основная загвоздка в том, что парсить лог и передавать адрес хоста неприятеля в таблицу необходимо в реальном времени. Сделать это можно разными способами, но для примера мы просто будем использовать связку из tail –f и awk.

Команда должна выглядеть примерно так:

#tail -f /var/log/firewall.log | awk '/Attack/' | awk -F"=" '/SRC/ {system("ipset -A blacklist_eth2" $3"/32")}'

Посмотрим список добавленных ip командой ipset –L blacklist_eth2

Список ip добавленных в blacklist_eth2
Список ip добавленных в blacklist_eth2

3. Ну и в конце, мы просто добавляем правило в iptables, которое дропает весь трафик от адресов из черного списка.

Правило для дропа трафика от blacklist_eth2
Правило для дропа трафика от blacklist_eth2
Книга 101 функция Asterisk
Познакомьтесь с возможностями Asterisk. Найдите инструменты, которые помогут вашей компании развиваться.
Скачать книгу
Подписаться
Уведомить о
guest
0 комментариев
Межтекстовые Отзывы
Посмотреть все комментарии

Остались вопросы?

Я - Виталий Шелест, менеджер компании Voxlink. Хотите уточнить детали или готовы оставить заявку? Укажите номер телефона, я перезвоню в течение 3-х секунд.

VoIP оборудование


ближайшие курсы

10 доводов в пользу Asterisk

Распространяется бесплатно.

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

Безопасен в использовании.

Любое программное обеспечение может стать объектом интереса злоумышленников, в том числе телефонная станция. Однако, сам Asterisk, а также операционная система, на которой он работает, дают множество инструментов защиты от любых атак. При грамотной настройке безопасности у злоумышленников нет никаких шансов попасть на станцию.

Надежен в эксплуатации.

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

Гибкий в настройке.

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

Имеет огромный функционал.

Во многом именно Asterisk показал какой должна быть современная телефонная станция. За многие годы развития функциональность Asterisk расширилась, а все основные возможности по-прежнему доступны бесплатно сразу после установки.

Интегрируется с любыми системами.

То, что Asterisk не умеет сам, он позволяет реализовать за счет интеграции. Это могут быть интеграции с коммерческими телефонными станциями, CRM, ERP системами, биллингом, сервисами колл-трекинга, колл-бэка и модулями статистики и аналитики.

Позволяет телефонизировать офис за считанные часы.

В нашей практике были проекты, реализованные за один рабочий день. Это значит, что утром к нам обращался клиент, а уже через несколько часов он пользовался новой IP-АТС. Безусловно, такая скорость редкость, ведь АТС – инструмент зарабатывания денег для многих компаний и спешка во внедрении не уместна. Но в случае острой необходимости Asterisk готов к быстрому старту.

Отличная масштабируемость.

Очень утомительно постоянно возвращаться к одному и тому же вопросу. Такое часто бывает в случае некачественного исполнения работ или выбора заведомо неподходящего бизнес-решения. С Asterisk точно не будет такой проблемы! Телефонная станция, построенная на Asterisk может быть масштабируема до немыслимых размеров. Главное – правильно подобрать оборудование.

Повышает управляемость бизнеса.

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

Снижает расходы на связь.

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