Взлом и защита вашего сервера Asterisk

Сегодня я наткнулся на интересную программу – sipvicious. Это SIP сканер, который может быть использован для сканирования SIP серверов, таких как Asterisk, FreePBX, Trixbox и тому подобные.

Сканирование SIP серверов очень распространенное явление, поэтому стоит проверить защищен ли ваш сервер от подобного рода нападений. Открытый SIP порт 5060 говорит злоумышленнику о многом, в том числе и о том, что можно попробовать транзитные звонки по МГ/МН направлениям за ваш счет :)

Вот что я сделал для сканирования одного из моих SIP серверов (Trixbox CE 2.6) на предмет наличия уязвимости:
Сначала нужно добавить следующие extensions для тестирования:

Ext - 1001 : Display Name - 1001 : Secret - Empty
Ext - 1002 : Display Name - 1002 :  Secret - 1002
Ext - 1003 : Display Name - "test" : Secret - "ekwrbq2k3b4lk32b"

Следующим шагом я скачал Sipvicious:

cd /tmp
wget http://sipvicious.googlecode.com/files/sipvicious-0.2.4.tar.gz
tar xvfz sipvicious-0.2.4.tar.gz
cd sipvicious-0.2.4

Теперь, следую шагам злоумышленника, мы должны найти IP адрес SIP сервера для атаки. Я конечно же знаю адрес моего сервера, но попробую его искать как это бы сделал хакер:

./svmap.py asteriskdemo

| SIP Device        | User Agent   | Fingerprint                            |
-----------------------------------------------------------------------------
| asteriskdemo:5060 | Asterisk PBX | Asterisk / SJphone/1.60.289a (SJ Labs) |

Таким образом, все я должен был сделать, это дать ему имя хоста или IP адрес моего Asterisk сервера и svmap успешно определил его.
Далее мы хотим увидеть, что extensions настроены на сервере, поэтому мы используем svwar.py

./svwar.py -e 1000-9999 asteriskdemo

| Extension | Authentication |
------------------------------
| 1003      | reqauth        |
| 1002      | reqauth        |
| 1001      | noauth         |

Запрос «-e 1000-9999″ задает svwar диапозо сканирования extension. Как вы можете видеть, вывод возвращает нам текст extensions, а также показывает что extension 1001 не требует пароля для подключения к нему. Ок, значит мы уже можем совершать звонки.
Теперь давайте посмотрим, если есть какие-либо другие уязвимые extensions с svcrack.py:

./svcrack.py -u1002 -r1-9999 asteriskdemo

| Extension | Password |
------------------------
| 1002      | 1002     |

Ключ «-u1002″ задает svcrack расширение (номер телефона) к которому требуется подобрать пароль, диапозон значений для перебора задается ключом «-r1-9999″. Попробовать все числа от 1 до 9999 и подобрать пароль заняло 3 секунды. Это определенно не очень хорошая идея просто использовать номера телефонов для ваших паролей!

Также можно скачать файлы словаря для sipvicious и использовать их в качестве потенциальных паролей. Очевидно, что это занимает больше времени для запуска, но результат может оправдать ваши усилия.

Итак, что мы можем сделать, чтобы защитить себя?

Есть несколько действительно простых вещей которые могут сделать наши сервера Asterisk гораздо более безопасным.

Всегда использовать длинные, трудно подбираемые пароли для ваших телефонов (цифры, буквы, регистр)!

Установить «alwaysauthreject = да» в файле конфигурации SIP. Это нужно чтобы предотвратить попытки сканирования SIP сканером. Вот что случилось, когда я изменил настройки на моем Trixbox -

Я редактировал файл sip_custom.conf

alwaysauthreject=yes

Теперь перезагружаем сервер Asterisk:

asterisk -rv
sip reload
exit

Теперь если я повторю попытки сканирования расширений, то получу следующую ошибку:

./svwar.py -e 1000-9999 asteriskdemo

ERROR:TakeASip:SIP server replied with an authentication request for an unknown extension. Set --force to force a scan.

Это только немногое из того, что вы можете сделать, чтобы защитить ваш SIP сервер. Начните прямо сейчас!
Также много примеров и трюков описано на сайте компании дигиум, вот ссылка: http://blogs.digium.com/2009/03/28/sip-security/

Удачи!

Related posts:

  1. Asterisk – храним CDR в БД MySQL. Asterisk. Настройка. Статья#1. Складываем CDR в MySQL. Должны быть установлены...
  2. Установка FreePBX + Asterisk Проект компании Digium – Asterisk. Известен многим, как и вэб...
  3. Flood скрипт, проверка защиты Вашего оборудования У каждого администратора по сетевой безопасности обязательно имеется свой набор...
  4. Настройка PPTP-сервера в Debian/Ubuntu В данной статье мы установим и настроим pptp сервер для...
  5. Подготовка промышленного сервера на CentOS 5 Политика безопасности Этап: Физическая защита Отключение USB mass storage Права...
You can leave a response, or trackback from your own site.

One Response to “Взлом и защита вашего сервера Asterisk”

  1. Дмитрий:

    да, как-то мой сервак(доступный для тестов из внешней сети) был успешно «взломан» этой программой, пароли, естественно, были типа -12345, 54321, спасло лишь то что префикс был на «8″.
    в качестве дополнительной защиты могу порекомендовать fail2ban, в сети много инфы по поводу этой надстройки для iptables.

Оставить комментарий

*