Защита IP АТС от внешних атак
В данной статье будут разбираться практики атак IP АТС и способы противодействия. Следует иметь в виду, что методики атакующих постоянно совершенствуются, однако мы в рамках данной статьи постараемся отслеживать новые способы атак и давать свои рекомендации. Oktell является очень мощным и гибким инструментом и мы надеемся, что с его помощью вы будете надежно защищены, при выполнении наших рекомендаций.
Подключение под видом IP телефона с целью совершения звонков на платные номера
Цель и методика атаки.
Атака производится с целью финансового обогащения. За рубежом или в России регистрируется номер телефона, звонок на который является платным. Чем выше стоимость минуты - тем прибыльнее бизнес. Затем специальным оборудованием атакующие сканируют случайные IP адреса в интернете с целью установить любой ответ от IP PBX. После нахождения IP адреса с установленной на нем IP АТС начинается подбор пары логин-пароль. Сканирование ведется очень интенсивно и в случае успешного подбора атакующие подключаются к IP АТС как IP телефон и получают возможность совершения исходящих звонков. Путем подбора различных вариантов набора номера атакующие совершают звонок на свой платный номер и за короткое время "наговаривают" вполне приличную сумму, которая будет выставлена вам оператором за услуги связи в конце месяца.
Противодействие:
На всех телефонах и клиентских приложениях Oktell необходимо устанавливать сложные криптостойкие пароли, состоящие из заглавных и строчных букв и цифр. Небрежность администратора, прописавшего тестовые аккаунты с простыми паролями, или не убравшего простые пароли при переносе сервера из локальной сети на реальный IP адрес приведет к тому, что такой пароль с высокой степенью вероятности будет подобран скан-машинами.
Программный код Oktell содержит возможность автоматической блокировки IP адреса, с которого осуществляется несколько неудачных попыток регистраций. Принцип действия режима автоматической блокировки следующий: При поступлении за 10 секунд более 20 регистрационных пакетов с неверной авторизационной информацией - IP адрес целиком записывается в бан-лист. По истечении срока давности в соответствии с параметром конфигурации происходит автоматическое удаление из бан-листа. При повторном получении неверной авторизационной информации после разбана размещение в бан-листе происходит уже сразу по второму пакету. В серверном лог журнале Exception при этом появляются записи, фиксирующие внесение адресов в бан-лист с указанием причины и адреса. Включение этого режима производится в конфигурационном файле сервера строчкой:
<add key="EnableSipTransportFilter" value="1" /> 0 - выключено 1 - включено и банит до перезагрузки сервера NN - период в минутах, после которого производится автоматический разбан
На момент написания статьи (декабрь 2012 г) большинство атак совершаются с useragent friendly-scanner. В версии начиная с 12.12.12 встроена дополнительная защита и пакеты от данного программного обеспечения игнорируются.
Для того, чтобы даже при успешном подборе пары логин-пароль защититься от ущерба, необходимо внести соответствующие изменения в настройки сценариев маршрутизации. Часто АТС в организациях настроены таким образом, чтобы звонок совершаемый через 8, через 0 или через какой-то другой символ, выходил на городские линии, в противном случае номер считается внутренним и маршрутизируется во внутренний номерной план. Такая настройка является типовой и привычной для большинства пользователей России. Именно это и дает возможность атакующим подобрать символ, открывающий выход на городские линии, чтобы потом совершать звонки на короткие и платные номера, международные номера, сервисные номера. Для того, чтобы закрыть атакующим такую возможность, необходимо использовать другой принцип разделения номеров внутреннего номерного плана и номеров, набираемых по линиям операторов связи, а именно маршрутизацию по длине номера. Это позволит исключить возможность выходить на линии операторов связи с короткими номерами, а также с номерами маска которых не соответствует нумерации вашей страны или стран, в которые вы совершаете звонки. Все трехзначные или четырехзначные вызовы должны отправляться только во внутренний номерной план. Принцип разделения маршрутизации вызова на основании длины номера внутренний номерной план и на линии операторов показан на рисунке. В компоненте Меню2 в выражении вычисляется длина номера и в зависимости от её соответствия указанным значениям маршрутизируется на компоненты Уведомление2 (Для трехзначных внутренних номеров), на уведомление 3 (для одиннадцатизначных федеральных номеров) и на уведомление 4 (для всех остальных номеров). При необходимости стоит сделать исключение для номеров экстренных служб, например 01, 02, 03, 04, 112.
Перед выходом на линии операторов связи полезно по маске отрезать возможность набора любых номеров, кроме тех, на которые разрешено совершать звонки. Например если вы работаете только по России, на городские номера то нужно отклонить номер, если он содержит длину не равную 11 цифрам, если первая цифра отличается от 7 или 8 (по условиям вашего провайдера), а также если первые 4 цифры соответствуют принятой в России маске платных и служебных номеров. В помощь нам нормативный документ Приказ Министерства информационных технологий и связи РФ от 17 ноября 2006 г.N 142 "Об утверждении и введении в действие Российской системы и плана нумерации" (с изменениями от 29 декабря 2008 г.) Согласно нему определены коды и принцип нумерации, действующие в Российской Федерации. Нас в первую очередь в этом документе интересует таблица № 4.
Таблица N 4. Перечень назначенных кодов доступа к услуге электросвязи (КДУ) Наименование услуги электросвязи 1 800 Бесплатный вызов (FPH - Freephone) 2 801 Вызов с автоматической альтернативной оплатой (ААВ - Automatic alternative billing) 3 802 Вызов по кредитной карте (ССС - Credit card calling) 4 803 Телеголосование (VOT - Televoting) 5 804 Универсальный номер доступа (UAN - Universal access number) 6 805 Вызов по предоплаченной карте (РСС - Prepaid card calling) 7 806 Вызов по расчетной карте (АСС - Account card calling) 8 807 Виртуальная частная сеть (VPN - Virtual private network) 9 808 Универсальная персональная связь (UPT - Universal personal Telecommunication) 10 809 Услуга за дополнительную оплату (PRM - Premium rate) 11 881 - 899 Перспективные коды услуг 12 970 Доступ к услугам связи по передаче данных 13 971 Доступ к телематическим услугам связи
Эта таблица показывает какие коды необходимо закрыть, для того чтобы защититься от "своих мошенников" В приведенном примере показан принцип исключения номеров из набора по маске. Так в компоненте Меню3 организовано определение второй, третьей и четвертой цифры набираемого федерального номера, соответствующих коду города, коду мобильного оператора или коду доступа к услуге электросвязи. Возможные значения, набор которых надо ограничить, маршрутизируются на компонент Обрыв связи. Остальные значения маршрутизируются на компонент выхода на внешние городские линии.
Следует иметь в виду, что система Oktell может иметь множество сценариев, каждый из которых может содержать компонент обеспечивающий выход на линии операторов связи. В этом случае логично организовать один сценарий и осуществлять необходимые проверки в нем. При этом из остальных сценариев вместо компонента выхода на линии операторов необходимо организовывать переход в сценарий, осуществляющий проверку набираемого номера на безопасность.