понедельник, 6 февраля 2017 г.

Защита SIP-порта. Часть 2: анализ пакетов.

  Для защиты SIP-порта можно использовать анализ пакетов с помощью опции "content" в Firewall Mikrotik. Но, для начала, нам нужно узнать, что именно посылает наш сервер телефонии на неправильный логин и пароль. Для примера возьмем самый популярный сервер телефонии - Asterisk с веб-интерфейсом FreePBX. Перво-наперво можно изучить, какие именно стандартные ответы дает SIP-сервер:
SIP/2.0 400 Bad Request - запрос не понят из-за синтаксических ошибок в нем, ошибка в сигнализации, скорее всего что-то с настройками оборудования
SIP/2.0 401 Unauthorized - нормальный ответ сервера о том, что пользователь еще не авторизировался; обычно после этого абонентское оборудование отправляет на сервер новый запрос, содержащий логин и пароль
SIP/2.0 401 Expired Authorization - время регистрации истекло
SIP/2.0 402 Payment Required - требуется оплата (зарезервирован для использования в будущем)
SIP/2.0 403 No Such User - нет такого пользователя, ошибка в номере, логине или пароле
SIP/2.0 403 User Disabled - пользователь отключен
SIP/2.0 403 Wrong Guess - ошибка в пароле
SIP/2.0 403 Conflict - такой SIP-номер уже используется
SIP/2.0 403 Forbidden - абонент не зарегистрирован
SIP/2.0 403 Empty Route Set - нет ни одного шлюза в роутинге
SIP/2.0 403 Caller Not Registered - нет такого пользователя
SIP/2.0 403 Out of Look-Ahead Retries - перебор узлов закончен
SIP/2.0 403 Invalid Phone Number - нет такого направления
SIP/2.0 403 No Money Left on RFC Account - на счету нет денег для совершения звонка
SIP/2.0 404 Not found - вызываемый абонент не найден, нет такого SIP-номера
SIP/2.0 404 Undefined Reason - неопределенное направление
SIP/2.0 404 Unknown user account - логин и пароль не найдены
SIP/2.0 404 Out of Order - в заявке на маршрутизацию по этому направлению нет ни одного шлюза, проверьте настройку маршрутизации по этому направлению.
SIP/2.0 405 Method Not Allowed - метод не поддерживается, может возникать если пользователь пытается отправлять голосовую почту и т.п.
SIP/2.0 406 No codecs match - неправильная конфигурация кодеков
SIP/2.0 406 Not Acceptable - пользователь не доступен
SIP/2.0 407 Proxy Authentication Required - необходима аутентификация на прокси-сервере
SIP/2.0 408 Request Timeout - время обработки запроса истекло: Абонента не удалось найти за отведенное время
SIP/2.0 408 Login timed out - за отведенное время не получен ответ от сервера на запрос авторизации
SIP/2.0 410 No Route - вариант SIP/2.0 403 Empty Route Set; нет доступа к ресурсу: Ресурс по указанному адресу больше не существует
SIP/2.0 413 Request Entity Too Large - размер запроса слишком велик для обработки на сервере
SIP/2.0 415 No Media - звонок совершается неподдерживаемым кодеком
SIP/2.0 416 Unsupported Scheme - сервер не может обработать запрос из-за того, что схема адреса получателя ему непонятна
SIP/2.0 420 Bad extension - неизвестное расширение: Сервер не понял расширение протокола SIP
SIP/2.0 421 Extension Required - в заголовке запроса не указано, какое расширение сервер должен применить для его обработки
SIP/2.0 423 Interval Too Brief - сервер отклоняет запрос, так как время действия ресурса короткое
SIP/2.0 480 Invalid Phone Number - неправильный номер телефона, не соответствует к-во цифр или неправильный код страны или города
SIP/2.0 480 Destination Not Found In Client Plan - направления нет в тарифном плане абонента
SIP/2.0 480 Wrong DB Response - проблемы с центральной базой сети
SIP/2.0 480 DB Timeout - проблемы с центральной базой сети
SIP/2.0 480 Database Error - проблемы с центральной базой сети
SIP/2.0 480 Codec Mismatch - несоответствие кодеков
SIP/2.0 480 No Money Left on RFC Account - нет денег на счету, обратитесь к администратору сети!!!
SIP/2.0 480 Empty Route Set - пустое направление, нет принемающих шлюзов
SIP/2.0 480 No money left - недостаточно денег на счете
SIP/2.0 480 Temporarily Unavailable - временно недоступное направление попробуйте позвонить позже
SIP/2.0 481 Call Leg/Transaction Does Not Exist - действие не выполнено, нормальный ответ при поступлении дублирующего пакета
SIP/2.0 482 Loop Detected - обнаружен замкнутый маршрут передачи запроса
SIP/2.0 483 Too Many Hops - запрос на своем пути прошел через большее число прокси-серверов, чем разрешено
SIP/2.0 484 Address Incomplete - принят запрос с неполным адресом
SIP/2.0 485 Ambiguous - адрес вызываемого пользователя не однозначен
SIP/2.0 486 Busy Here - абонент занят
SIP/2.0 487 Request Terminated - запрос отменен, обычно приходит при отмене вызова
SIP/2.0 488 Codec Mismatch - нет шлюзов с поддержкой заказанного кодека
SIP/2.0 488 Private IP Address - адрес RTP media из сетей RFC1918
SIP/2.0 491 Request Pending - запрос поступил в то время, когда сервер еще не закончил обработку другого запроса, относящегося к тому же диалогу
SIP/2.0 493 Undeciperable - сервер не в состоянии подобрать ключ дешифрования: невозможно декодировать тело S/MIME сообщения
SIP/2.0 499 Codec Mismatch - отсутствует кодек
  Sip-ответы могут быть как стандартные, так и не стандартные. Больше ответов можно посмотреть тут. Стоит сказать, что ваш сервер может посылать разные ответы о неверном пароле.  Во многих статьях для защиты Asterisk рекомендуют использовать некоторую уловку, приведу пример.
  По умолчанию Asterisk выдает одну ошибку о неверном пароле для существующего аккаунта и другую для несуществующего аккаунта. Существует множество программ для подбора паролей, поэтому злоумышленнику не составит труда проверить все короткие номера и собирать пароли лишь к существующим аккаунтам, которые ответили «неверный пароль». Чтобы помешать этому, меняем строчку в файле /etc/asterisk/sip.conf:alwaysauthreject = no на alwaysauthreject = yes и перезапускаем Asterisk.
  После такой настройки, Asterisk будет отвечать одинаково для любых неверных авторизации "401 Unauthorized" и не сообщать подробностей.
  Лично у меня при установленном интерфейсе FreePBX эта опция была включена. Ответ "401 Unauthorized" фигурировал и в удачных подключениях (с правильным логином и паролем), так и в неудачных. Поэтому по нему отловить "левые" подключения были невозможно. Поэтому решением стало выключение этой опции.


  И перезапускаем Asterisk для применение настроек.
заходим в консоль asterisk
asterisk -r
перезапускаем asterisk
core restart now
  Делаем проброс SIP-порта в Mikrotik:
/ip firewall natadd action=dst-nat chain=dstnat comment="SIP" disabled=no dst-port=5060 in-interface=ether1-wan protocol=udp src-address-list=udalennie_telefoni to-addresses=10.0.0.150 to-ports=5060
  Я не рекомендую использовать стандартный порт, но как пример приведу его.
  Далее нужно проанализировать пакеты, которые поcылает ваш сервер в ответ на неправильный логин и пароль. Для этого можем использовать программу Wireshark, как ей пользоваться можно почитать тут. После установки программы запускаем ее, выбираем свой сетевой интерфейс, который будем анализировать.


  Создаем фильтр для SIP-пакетов, что-бы не анализировать другой мусор.




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



  Далее нам понадобиться SIP-клиент, я выбираю X-Lite. Вводим IP нашего SIP-сервера, заведомо неправильный логин (номер внутреннего телефона) и любой пароль.



  Анализируем Wireshark.


  Получаем "404 Not found" - отлично, по этому и будем ловить пакеты. Далее вводим в X-Lite правильный логин (регистрационный номер телефона) и неправильный пароль.



  Проводим анализ.


  Получаем ответ "403 Forbidden (Bad auth)" - его тоже мы будем использовать. Теперь для примера покажу вывод правильной регистрации с верным логином и паролем.


  Как видим ответ "401 Unauthorized" попадается и при правильной регистрации. В тоже время текст "403 Forbidden (Bad auth)" и "404 Not found" можно использовать для отслеживания "плохих" подключений. Сам метод описан в статье Защищаем сервер FTP за Mikrotik анализируя пакеты опцией "content".
/ip firewall filter
  add action=drop chain=forward comment="drop sip brute forcers" dst-port=5060 in-interface=ether1-wan protocol=udp src-address-list=sip_drop
  add action=add-src-to-address-list address-list=sip_stage address-list-timeout=1m chain=forward comment=sip_vhod dst-port=5060 in-interface=ether1-wan protocol=udp
  add action=add-dst-to-address-list address-list=sip_drop address-list-timeout=10m chain=forward comment="sip_stage_bad_403 Forbidden (Bad auth)" content="403 Forbidden (Bad auth)" dst-address-list=sip_stage src-address=10.0.0.150
  add action=add-dst-to-address-list address-list=sip_drop address-list-timeout=10m chain=forward comment="sip_stage_bad_404 Not found" content="404 Not found" dst-address-list=sip_stage src-address=10.0.0.150
  Первым правилом мы блочим доступ с адрес-листа sip_drop на порт 5060. Второе правило добавляет все IP, которые обращаются на порт 5060 на наш роутер в адрес-лист sip_vhod. Третье правило анализирует ответы на адрес-лист sip_vhod от нашего сервера Asterisk, и если ответ содержит "403 Forbidden (Bad auth)" - добавляет IP в адрес-лист sip_drop на 10 минут. Четвертое правило аналогично третьему, только фильтрует пакеты по тексту "404 Not found". Такими образом злоумышленник, который пытается подключиться к вашему серверу с неправильным логином или паролем будет заблочен на 10 минут. А если вы неправильно ввели пароль (или ваш пользователь), то через 10 минут сможете повторить попытку.


Используемый материал:

Подписаться на новые статьи.

7 комментариев:

  1. Консоли от корпорации Microsoft не сразу захватили всемирную популярность и доверие игроков. 1-ая консоль под названием Xbox, вышедшая в далеком 2001 году, существенно уступала PlayStation 2 по количеству проданных приставок. Однако все поменялось с выходом Xbox 360 - консоли седьмого поколения, которая стала по-настоящему "народной" для жителей Рф и стран СНГ - Xbox 360 прошивка LT 1.9 торрент. Интернет-сайт Ru-Xbox.Ru является пользующимся популярностью ресурсом в числе поклонников приставки, поскольку он предлагает игры для Xbox 360, которые поддерживают все существующие версии прошивок - совсем бесплатно! Для чего играть на оригинальном железе, если есть эмуляторы? Для Xbox 360 игры выходили длительное время и представлены как посредственными проектами, так и хитами, многие из которых даже сейчас остаются уникальными для это консоли. Некие гости, желающие сыграть в игры для Xbox 360, смогут задать вопрос: для чего нужны игры для прошитых Xbox 360 freeboot либо различными версиями LT, в случае если есть эмулятор? Рабочий эмулятор Xbox 360 хоть и существует, однако он требует производительного ПК, для покупки которого будет нужно вложить существенную сумму. К тому же, современные артефакты в виде исчезающих текстур, отсутствия некоторых графических эффектов и освещения - смогут значительно попортить впечатления об игре и отбить желание для ее дальнейшего прохождения. Что предлагает этот веб-сайт? Наш портал полностью приурочен к играм для приставки Xbox 360. У нас вы можете совсем бесплатно и без регистрации загрузить игры на Xbox 360 через torrent для следующих версий прошивок консоли: - FreeBoot; - LT 3.0; - LT 2.0; - LT 1.9. Каждая прошивка имеет свои особенности обхода интегрированной защиты. Поэтому, для запуска той либо иной игры будет нужно скачать специальную ее версию, которая полностью приспособлена под одну из 4 перечисленных выше прошивок. На нашем портале вы можете без труда получить желаемый проект под подходящую прошивку, поскольку возле каждой игры присутствует заглавие версии (FreeBoot, LT 3.0/2.0/1.9), под которую она приспособлена. Гостям данного ресурса доступна особая категория игр для 360-го, предназначенных для Kinect - специального дополнения, которое считывает все движения одного либо нескольких игроков, и позволяет управлять с их помощью компьютерными персонажами. Большой выбор ПО Кроме способности загрузить игры на Xbox 360 Freeboot либо LT разных версий, тут можно получить программное обеспечение для консоли от Майкрософт: - различные версии Dashboard, которые позволяют кастомизировать интерфейс консоли под свои нужды, сделав его более комфортным и нынешним; - браузеры; - просмотрщики файлов; - сохранения для игр; - темы для консоли; - программы, для конвертации образов и записи их на диск. Помимо вышеперечисленного игры на Xbox 360 Freeboot вы можете запускать не с дисковых, а с USB и многих других носителей, используя программу x360key, которую можно достать на нашем портале. Гостям доступно огромное количество полезных статей, а помимо этого форум, где можно пообщаться с единомышленниками или попросить совета у более опытнейших владельцев консоли.

    ОтветитьУдалить
  2. Магазин спортивного питания, официальный веб-сайт которого доступен по адресу: SportsNutrition-24.Com, реализует огромный выбор товаров, которые принесут пользу и достижения как проф спортсменам, так и любителям. Интернет-магазин производит свою деятельность уже многие годы, предоставляя клиентам со всей России высококачественное питание для спорта, а кроме этого витамины и особые препараты - https://sportsnutrition-24.com/bustery-gormona-rosta/. Спортпит представляет собой категорию товаров, которая призвана не только лишь сделать лучше спортивные достижения, да и благоприятно влияет на здоровье организма. Подобное питание вводится в повседневный рацион с целью получения микро- и макроэлементов, витаминов, аминокислот и белков, а кроме этого других недостающих веществ. Не секрет, что организм спортсмена в процессе наращивания мышечной массы и адаптации к повышенным нагрузкам, остро нуждается в должном количестве полезных веществ. При этом, даже правильное питание и употребление растительной, а кроме этого животной пищи - не гарантирует того, что организм получил необходимые аминокислоты или белки. Чего нельзя сказать о высококачественном питании для спорта. Об наборе товаров Интернет-магазин "SportsNutrition-24.Com" продает качественную продукцию, которая прошла ряд проверок и получила сертификаты качества. Посетив магазин, клиенты могут найти для себя товары из следующих категорий: - L-карнитинг (Л-карнитин) представляет собой вещество, родственное витамину B, синтез которого осуществляется в организме; - гейнеры, представляющие из себя, белково-углеводные консистенции; - BCAA - средства, содержащие в собственном составе три важные аминокислоты, стимулирующие рост мышечной массы; - протеин - чистый белок, употреблять который вы можете в виде коктейлей; - современные аминокислоты; - а также ряд других товаров (нитробустеры, жиросжигатели, особые препараты, хондропротекторы, бустеры гормона роста, тестобустеры и многое другое). Об оплате и доставке Интернет-магазин "SportsNutrition-24.Com" предлагает огромное разнообразие товаров, которое полностью способно удовлетворить профессиональных и начинающих спортсменов, включая любителей. Большой опыт позволил компании сделать связь с крупнейшими поставщиками и производителями питания для спорта, что позволило сделать политику цен гибкой, а цены - демократичными! Например, аминокислоты или гейнер купить вы можете по стоимости, которая на 10-20% ниже, чем у конкурентов. Оплата возможна как наличным, так и безналичным расчетом. Магазин предлагает обширный выбор методов оплаты, включая оплату различными электронными платежными системами, а помимо этого дебетовыми и кредитными картами. Главный кабинет фирмы расположен в Санкт-Петербурге, но доставка товаров осуществляется во все населенные пункты РФ. Помимо самовывоза, получить товар можно при помощи любой транспортной фирмы, подобрать которую каждый клиент может в индивидуальном порядке.

    ОтветитьУдалить
  3. Большая часть пользователей Инстаграма желали бы добавить количество фолловеров, просмотров, комментариев и лайков. Самым быстрым способом может стать накрутка за деньги, именно такие услуги предлагают на портале Krutiminst.ru - instagram nakrutka ru

    ОтветитьУдалить
  4. Инстраграмм являться самой популярной на данный момент площадкой для продвижения собственного бизнеса. Но, как показывает практика, люди гораздо чаще подписываются на профили в которых уже достаточное количество подписчиков. В случае если заниматься продвижение своими силами, потратить на это вы можете очень множество времени, поэтому еще лучше обратиться к специалистам из Krutiminst.ru тут https://www.sagecenters.com/avs4pets/2018/12/14/2018-12-13-dental-care-for-pets/

    ОтветитьУдалить
  5. Система бонусов и поощрений в БК 1хбет существенно увеличивает привлекательность компании в глазах игроков. Очень выгодные предложения доступны как новичкам, и гостям, уже имеющим опыт работы на платформе. Среди внушительного набора бонусной программы очень очень просто потеряться. Каждый промокод 1хбет гарантирует право на определенные преференции - промокод для 1 икс бет.

    ОтветитьУдалить
  6. БК MelBet пользуется большой известностью на российском рынке: -Деятельность компании лицензирована; - Игрокам предоставлен впечатляющий список ставок - в формате live и предматчевых; - Здесь нет задержек с выплатами. Линия ставок неописуемо презентабельна. Для того, чтобы получить выгодный бонус на совершение ставок, надо всего лишь использовать промокод MelBet RS777. Получить промокод можно на ставку или на депозит. Каждое предложение имеет свои особенности отыгрыша - MelBet промокод на сегодня.

    ОтветитьУдалить