VOIP Security Audit Framework

Тема в разделе "Этичный хакинг и тестирование на проникновение", создана пользователем Vander, 8 окт 2016.

Метки:
  1. Vander

    Vander Модератор
    Команда форума Grey Team

    Регистрация:
    16 янв 2016
    Сообщения:
    335
    Симпатии:
    312
    Всем привет! В этой статье я покажу, как провести аудит безопасности систем IP-телефонии.

    upload_2016-10-8_18-38-30.png

    Для начала необходимо заиметь то, что мы будем проверять, для этого подойдет дистрибутив FreePBX, объясню, что это:

    FreePBX - представляет собой веб-ориентированный GUI с открытым исходным кодом, который используется для контроля и управления Asterisk (PBX), - open source сервер связи. Распространяется под лицензией GNU - лицензии с открытым исходным кодом. Данный программный пакет может быть установлен вручную или в составе предварительно сконфигурированного дистрибутива FreePBX, в который входят: операционная система, Asterisk и FreePBX GUI с соблюдением всех зависимостей, для его скачивания перейдем по ссылке => https://www.freepbx.org/downloads/
    Скачаем ISO, устанавливаем систему в Oracle VM VirtualBox, к примеру.

    upload_2016-10-8_18-38-54.png

    По адресу 192.168.0.109 будет доступен web интерфейс, для управления и настройки сервера. Перейдем по нему:

    upload_2016-10-8_18-44-40.png

    Если увидели это, значит все прошло успешно. Теперь непосредственно об аудите безопасности сервера.

    Для этого я буду использовать VSAUDIT - VOIP Security Audit Framework.

    VSaudit - представляет собой фреймворк с открытым исходным кодом который предназначен для выполнения атак на общие услуги IP-телефонии. Он позволяет сканировать всю сеть или один хост, затем переходит в фазу сбора информации, и плюс ко всему умеет искать наиболее известные уязвимости на сканируемых системах, а затем пытается их использовать.

    Для его использования необходимы следующие зависимости:

    · Ruby 2.3.0

    · Bundler

    Устанавливаем фреймворк:

    > git clone http://github.com/sanvil/vsaudit.git

    Далее с помощью gem – это такая система управления пакетами для языка программирования Ruby, который предоставляет стандартный формат для программ и библиотек Ruby, инструменты, предназначенные для простого управления установкой «gems» установим Bundler.

    В свою очередь Bundler – это менеджер для управления зависимостями gem'ов в ruby приложениях. Он позволяет легко устанавливать необходимые gem'ы для вашего приложения.

    > gem install bundler

    Затем перейдем в директорию vsaudit и выполним команды:

    > cd vcaudit

    > bundle

    upload_2016-10-8_18-45-54.png

    > ruby vsaudit.rb

    upload_2016-10-8_18-46-17.png


    Обратимся за помощью:

    > vsaudit > help


    upload_2016-10-8_18-46-49.png
    upload_2016-10-8_18-46-57.png

    Запустим сканирование сервера Asterisk по адресу 192.168.0.109

    > scan 192.168.0.109

    upload_2016-10-8_18-47-37.png

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

    Проверка ошибок в локальных файлах конфигурации:

    В модуле modules/asterisk.rb вы можете выбрать пользовательские конфигурационные файлы, которые vsaudit проверит, используя шаблоны регулярных выражений. Есть возможность добавить или удалить конфигурационные файлы, в массив @@services используя регулярное выражение.

    @@services_files = [

    # file to audit. # unsecure parameter regex.

    '/etc/asterisk/sip.conf' => /^(allow=|allowguest)/,

    '/etc/asterisk/extensions.conf' => /^(allow)/

    ]

    В приведенном выше примере, вы можете задать имя файла с абсолютным путем, который вы хотите проверить, устанавливая регулярное выражение для поиска соответствия в файле, vsaudit к grep в sip.conf и поиск опций конфигурации, которые начинаются с allow= or allowguest и extensions.conf для allow= options.

    > vsaudit > fcheck

    Checking filename: /etc/asterisk/sip.conf

    regexp to matchs: (?-mix:^(allow=|allowguest))

    Line 3: un-safe parameter found 'allowguest=no'

    Line 9: un-safe parameter found 'allow=ulaw'

    Checking filename: /etc/asterisk/extensions.conf

    regexp to matchs: (?-mix:^(allow))

    Перечисление используемых расширений по словарю:

    > vsaudit > enum ext-list 192.168.0.109

    upload_2016-10-8_18-48-45.png

    Файл ext-list находится в директории /list, его можно заменить на свой.

    Брутфорс расширений:

    Найденные расширения можно попробовать сбрутфорсить с помощью словаря.

    > vsaudit > bf ext-list psw-list 192.168.0.109

    Выглядит это так:

    upload_2016-10-8_18-54-24.png

    Перехват сетевого трафика:

    > vsaudit > live

    capturing local network traffic

    using barkeley packet filter: udp

    Packet length: 631, Time: 2015-04-11 09:45:43

    ---------------------------------------------

    SIP/2.0 401 Unauthorized

    Via: SIP/2.0/UDP 192.168.1.196:5060;branch=z9hG4bKf083b96c-8cde-e411-85f6- 000c29bac856;received=192.168.1.196;rport=5060

    From: "pentester" <sip:7001@192.168.1.100>;tag=aa7fb86c-8cde-e411-85f6-000c29bac856

    To: <sip:192.168.1.100>;tag=as54658d12

    Call-ID: 0683b86c-8cde-e411-85f6-000c29bac856@deftcode

    CSeq: 1 INVITE

    Server: Asterisk PBX 11.7.0~dfsg-1ubuntu1

    Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, SUBSCRIBE, NOTIFY, INFO, PUBLISH

    Supported: replaces

    WWW-Authenticate: Digest algorithm=MD5, realm="asterisk", nonce="39e13888"

    Content-Length: 0

    Получение, всего UDP трафика с фильтром по порту назначения.

    > vsaudit > in udp dst port 5060

    Запись потока трафика в файл:

    > vsaudit > in udp portrange 10000-20000 record

    Запись будет производиться в /raw/data.raw в фоновом режиме.

    Повторюсь, что, для более развернутого сканирования, необходимо корректно настроить сервер, RTP потоки и SIP транк. Свой сервер я не настраивал.
     
    gx6060, Inject0r и WebWare Team нравится это.
  2. Ishikawa

    Ishikawa Well-Known Member
    Команда форума Grey Team

    Регистрация:
    15 ноя 2016
    Сообщения:
    66
    Симпатии:
    48
    Он рассчитан только на астериск или подойдет для Avaya или Grandstream?
    Про брут можно вообще забыть - первым делом на АТС настраивается логирование всего и вся, в том числе неудачных попыток входа. Ко всему на том же Grandstream UCM есть fail2ban, который сообщит что кто-то делает что-то нехорошее. Перехват трафа будет работать только если не используется шифрование, как правило это свой родной кусок intranet. Между участками ip-атс (если их больше двух) соединяются туннелем, что уже обламывает прослушку. А вот позволяет ли этот фреймворк вмешаться в уже открытое соединение, скажем для прослушки разговора? И есть ли в нем DDoS?
     
    Vander нравится это.
  3. Vander

    Vander Модератор
    Команда форума Grey Team

    Регистрация:
    16 янв 2016
    Сообщения:
    335
    Симпатии:
    312
    Я пока не задавался последними двумя вопросами, и тестил его только на Астере не настроенном. Сейчас сконфигурировал его, и попробую запустить против полностью рабочего сервера. Еще пробовал на MVTS, но там все бесполезно.
     
  4. Ishikawa

    Ishikawa Well-Known Member
    Команда форума Grey Team

    Регистрация:
    15 ноя 2016
    Сообщения:
    66
    Симпатии:
    48
    MVTS всего-лишь NGN-шлюз, там что-то сделать вообще сложно, разве что подвержен DDoS.
     
Загрузка...
Похожие Темы - VOIP Security Audit
  1. songoku
    Ответов:
    5
    Просмотров:
    770
  2. ToxaRat
    Ответов:
    8
    Просмотров:
    3.021
  3. redhat
    Ответов:
    1
    Просмотров:
    49
  4. TAPAKAHATOP
    Ответов:
    0
    Просмотров:
    57
  5. Vander
    Ответов:
    39
    Просмотров:
    3.042

Поделиться этой страницей