DDOS/DOS через телефонную сеть. Оборона на коленке

    Вместо предисловия



    Уже пол года являюсь постоянным читателем здесь, иногда встречаются посты или коментарии — душа просто ноет, ответить хочется, а вот доступа нет. А тут такой случай, новый клиент появился, с интересной большой проблемой: вышел новый каталог и кто-то начал бомбить опубликованые номера звонками.

    Думаю надо написать, может кому интересно, а может даже инвайт получу… =)

    UPD: инвайт получил, радуюсь как маленький ребенок...=)



    Акт 1. Сцена 1.



    В офисе «жертвы»: старенкая Elmeg c88m от фирмы Funkwerk, обслуживающия с десяток линий наружу и чуть большее количество внутрених телефонов, потихоньку начинает дымится, операторы впадают в панику, директор много курит и ругается, клиенты и филиалы в других городах прозвониться не могут…

    Бизнес встал…
    Жертва «атаки» обзванивает знакомых в поисках «спеца», получает мой номер с рекомендацией… Звонит мне, пытается в двух словах объяснить, что произошло происходит… говторит не внятно, явно нервничает, просит приехать сейчасже. Что произошло или в чем проблема я понять из телефонного разговора не смог, пообещал приехать в течении двух часов.

    Акт 1. Сцена 2.



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

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

    Попытка активировать какие-либо фильтры для блокировки на офисной мини АТС (Funkwerk Elmeg c88m) показала возможность вмести 100 блокируемых номеров… и все. Чего-либо больше система не может вообще. После некоторых раздумий, было принято решение воспользоваться возможностями Soft-PBX Asterisk. Опыт установки есть, должно сработать.

    Акт 2. Сцена 1.



    Итак… имея десяток внешних ISDN линий требуется более или менее профессиональная ISDN техника работающая под Asterisk. Выбор пал на Asteribank от Xorcom на 8 BRI (16 b-каналов) и 4 BRI (8 b-каналов). Таковой под рукой не оказалось, пришлось заказывать. Поставка обещана через 3-5 дней =(

    Что делать до поставки? Бизнес умирает, директор на грани срыва, операторы в панике, год и так начался тяжело из-за экономической ситуации, а тут еще и такое открытие сезона. Каждый упущений звонок уходит к конкурентам.

    В голове пробегают все позможности Asterisk и вот оно! SIP — решение всех проблем: регистрируется номер у одного немецкого провайдера SIP-телефонии (www.sipgate.de), делается звонок оператору телефонной сети с спросьбой перенаправить все входящие звонки на новый номер, ставится «ящик» (Athlon II X2 240, 2GB RAM) с Asterisk под Ubuntu и Asterisk настраивается на Sipgate. Остается только снабдить операторов SIP-клиентами и гарнитурой.

    В качестве SIP-клиента пал выбор на Zoiper и QuteCom. Zoiper был выбран изначально, но вылетал с ошибкой на половине компьютеров — QuteCome как альтернатива.

    Остается поставить скрипт для отсеивания «плохих» звонков: пользуем функцию WaitForSilence и радуемся жизни.

    Акт 2. Сцена 2.



    Начало нового рабочего дня: плохие звонки прорываются через оборону, ситуация не улучшается. Я наконец могу послушать, что происходит на линии при «плохом звонке», результат поражает: дыхание в «трубку», долгое и прерывистое… WaitForSilence не срабатывает.

    Смотрю поток звонков: атака идет или с загран. номерами или без номера вообще. Ок, ставлю блокировку на два ноля в начале номера и на анонимные звонки. Все…

    Тишина и покой в офисе, звонки редкие, но все в «тему»: клиенты, партнеры, филиалы. Директор закуривает и начинает улыбаться, цвет лица менятся на более здоровый. Дамы на телефонах радостно отвечают на звонки, в перерывах шутливо называют друг-друга DJ'ями из-за гарнитуры на голове.

    Я спокойно покидаю офис…

    Акт 3. Сцена 1.



    На следующий день меня вызванивают опять, с жалобой на малое количество звонков. Подозрение падает на звонки «без номера», количество которых оказывается далеко не малым.

    Немного поразмыслив прихожу к умозаключению, что номера которые сейчас блокируются надо проверять на присутствие интелекта — делаем тест Тьюринга.

    Для этого были записаны несколько реплик (здравтвуйте, вы позвонили в фирму XY, и самая главная «нажмиту 1 чтобы прододжить») голосом одной из сотрудниц. С помощью реплик было создано короткое голосовое меню, Asterisk позволяет на этом поле любые изхищрения. Готово! Количество звонков увеличилось, бизнес живет, все ок. Я покидаю офис клиента (теперь уже клиент, больше не жертва...).

    Акт 4. Сцена 1.



    Звонок клиента оповещает меня о том, что качество звука стало хуже, звук дергается, прирывается и пропадает. Приезжаю в офис, смотрю в логи и консоль Asterk'a, обнаруживаю увеличенное количество паралельных звонков — тест Тьюринга тебует «поднятия трубки и воспроизведения реплик». Тест просто напросто съедает канал в интернет. Случилось то, чего я опосался — канала не хватает на нужное количество звонков и надо переходить с кодека ulaw/alaw (64kbit) на gsm(16kbit). Из собственного опыта знаю, что это связано со слышимым ухудшением качества связи… особенно при переходе с ISDN на SIP с GSM-кодеком это ощущается очень сильно.

    Но делать нечего. Включаю gsm на наружние каналы, делаю тестовый звонок — все ок. Даю директору на контроль и надеюсь на чудо… И вот оно чудо! Все познается в сравнении: после всех проблем со связью, все остаются довольны тем, что есть. Шипение и потеря качетсва на кодеке gsm — ничто по сравнению в ulaw/alaw на «узком» канале.

    Послесловие



    Фирма живет, gsm спасает. В понедельник придут Asteribank'и, верну систему на ISDN, SIP оставлю на всякий пожарный. Скрипт блокировочный будет оптимирован. А пока: ведутся логи о заблокированых звонках для органов, заявление в полицию подано, посмотрим, что они смогут сделать =)

    Если у сообщества есть интерес в продолжении о Asteribank'ах, ISDN, полиции и отпимированом отсеве — напишу…

    PS: прошу не пинать за язык/ошибки… эмиграция дает о себе знать.

    Комментарии 24

      +4
      Хотелось бы побольше конкретики, с примерами конфигов.
        0
        Вечером добавлю конфиги
          0
          благодарствую, добрый человек, мне как раз предстоит поднимать asterisk, поэтому любая информация очень ценна.
      • НЛО прилетело и опубликовало эту надпись здесь
          +1
          По идее обзвон ведется через сервис подобный скайпу, может даже использоваться несколько сервисов, интересно, можно ли выявить какому сервису принадлежат телефонные номера.
            0
            Спасибо за статью, давно интересовался Астериском, а всё никак мотивации не было:)
              0
              А Вы не пробовали использовать кодек iLBC вместо gsm? При примерно одинаковом потреблении трафика iLBC, как мне кажется, обеспечивает более чёткий звук.
                0
                а почему не g729?
                на 8kbit/s вполне приемлемое качество.
                плюс всякие бонусы в сокращении трафика на тишину.
                  0
                  Он лицензируется (платный), а автор, как я смотрю, использовал только фришные варианты.
                  0
                  iLBC скорее всего не поддерживается в Sipgate. А вот g729 может останавливать законопослушного немецкого подданного необходимость покупки коммерческой версии, с оплатой за канал. Вся Россия конечно использует опен-сурс варианты.
                    0
                    а что мешает законопослушным немцам использовать opensource варианты?
                    или там такиеже заморочки как с h264?
                      0
                      Да, примерно такие же заморочки, до 2020 года (кажется) необходимы лицензионные отчисления.
                        0
                        да, это я тут запямотовал…
                        действитеьлно лицензия на каждое соединение.
                    +1
                    и ещё интересно — какая вгода возвращаться с SIP обратно на ISDN?
                    у SIP гораздо больше возможностй, бесплетнее «межгород» и меньше проблем с определением соединения/причины разъединения.
                      0
                      Гораздо более надежная связь, более качественный звук, факсы можно передавать по человечески.
                      Много выгод.
                        0
                        И кстати факсы через SIP без проблем, Hylafax + iaxmodem рулят. Только надо кодек «несжимающий»… С alaw/ulaw рабоает все ОК.
                          0
                          Не только в кодеке дело, 90% VOiP операторов не дают гарантии прохождения факсов и даже DTMF в любом отдельно взятом направлении. С обычной фиксированной связью таких проблем нет.
                        0
                        Дело в городе Германии творится, здесь меж.город на «обычных линиях» в месячную абонентскую входит, т.е. flat rate. А вот SIP flatrate доступен только частным лицам, фирмам поминутка.

                        Да и клиенту трудно «продать» такое решение: избавляйтесь от телефонных линий, будем двигаься вместе с прогрэссом. Не все пнимают… =)
                        +3
                        ну и перенесите наверно в habrahabr.ru/blogs/telephony/
                          0
                          В какой стране происходит действо? А то PSTN линии по BRI в России как-то не представлены
                            –1
                            Я думаю, что это Германия. Но посмотрим, что скажет автор.
                              0
                              да, действительно Германия… здесь вообще-то BRI вполне стандартное решение.
                            • НЛО прилетело и опубликовало эту надпись здесь
                                0
                                Именно BRI? Не PRI (E1)?

                            Только полноправные пользователи могут оставлять комментарии. Войдите, пожалуйста.

                            Самое читаемое