Какой клиент выбрать в вашей ситуации? Даем ответ!

Многие пользователи последовали нашему совету, который мы давали после обнаружения вторжения, и установили веб-приложение PWA вместо десктопного приложения. И мы получили определенный опыт развертывания клиентов 3CX в этом режиме. В этой статье мы хотели бы поделиться этим опытом, а также дать рекомендации, какой клиент выбрать в той или иной ситуации.

Приложение PWA (Progressive Web App)

Что такое приложение PWA?

PWA (Progressive Web Apps) – приложения, созданные с использованием веб-технологий. Они создаются для всех устройств с использованием общей кодовой базы. В данном случае используется код нашего веб-клиента. Из него компилируется как десктопное приложение, так и приложение PWA. PWA-приложение по функциональности приближается к десктопному приложению, адаптируясь к возможностям каждого устройства. Особенности PWA-приложения:

  • Работает в Chrome и Microsoft Edge Chromium.
  • Запускается безопасно внутри “движка” браузера, используя его библиотеки в функции безопасности.
  • Нулевое администрирование и автоматическое обновление с сервера.
  • Не требуется локальная установка и удаление.
  • Приложение работает в фоновом режиме и поддерживает Push-уведомления.

Возможности приложения PWA 3CX

  • Полнофункциональный клиент 3CX, который выглядит и работает как нативное приложение.
  • Запускается автоматически при запуске браузера.
  • Уведомляет пользователя о входящих звонках с помощью PUSH-уведомлений.
    • Не нужно заходить в клиент 3CX и даже держать открытую вкладку.
    • В случае Edge браузер будет запущен автоматически, если он не активен.
    • В случае Chrome браузер должен быть запущен на ПК.
  • Звонки из CRM или веб-сайта через расширение Click2Call.
  • Поддержка автоответа на вызов.
  • Поддержка технологии SSO.
  • Полная поддержка гарнитур Yealink, Jabra и, вскоре, Plantronics.
  • PWA хорошо работает на Microsoft Terminal Server (подробнее о групповой установке).
  • Ожидается в Update 7a: Панель BLF в номеронабирателе.
  • Ожидается в Update 8: возможность запуска сторонних приложений с поддержкой протокола tel:.

Требования для приложений PWA

  • PWA будет работать только в инсталляциях с действительным FQDN и SSL сертификатом.
    • Если вы размещаете АТС в облаке используя сертификат 3CX, настройка FQDN происходит автоматически.
    • Если у вас локальная инсталляция, следует настроить разделенную DNS (Split DNS) с действующим сертификатом 3CX / собственным сертификатом. Рано или поздно такая конфигурация все равно потребуется для нормальной работы!
  • Необходимо настроить Google или Edge на автоматический запуск при входе в ОС.

Ограничения для приложений PWA

  • Не работает захват фокуса при входящих звонках (пока мы не нашли решение этой задачи).
  • Использование Microsoft TAPI для некоторых старых CRM и бухгалтерских приложений (например, Datev).
  • Запуск внешнего приложения при входящем вызове.

Десктопное приложение

Что представляет собой десктопное приложение, также называемое приложением Electron? Десктопное приложение 3CX – это перекомпилированный веб-клиент 3CX, использующий фреймворк Electron. Оно реализует контроль версии браузера и может иметь доступ к функциям ОС.

Именно это десктопное приложение было скомпрометировано при атаке на цепочку поставок 3CX. Атака не имеет отношения к фреймворку Electron или другим компонентам, которые включены в десктопное приложение. Это приложение было скомпрометировано, потому что наша локальная сеть была атакована злоумышленниками. Расследующая инцидент компания Mandiant с высокой степенью вероятности связывает кластер злоумышленников UNC4736 с Северной Кореей. Подробнее об этом инциденте.

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

Возможности десктопного приложения, отсутствующие в PWA

  • Захват фокуса при входящих звонках.
  • Запуск внешних приложений при получении вызова.
  • Выполнение или перевод вызова с помощью горячих клавиш.
  • Перемещение панели номеронабирателя по экрану независимо от интерфейса основного приложения.

Ограничения десктопного приложения

  • Поддержка TAPI – невозможно работать с приложениями, использующими TAPI.
  • Если полностью закрыть приложение, уведомления о входящих вызовах поступать не будут.

Требования для десктопного приложения

  • Права локального администратора для установки приложения.
  • Сетевой антивирус и другие средства контроля в случае чрезвычайной ситуации.

Нативное приложение

У 3CX есть нативные (“родные”) приложения для основных операционных систем – iOS, Android и Windows. Эти приложения используют для вызовов протокол SIP, а не WebRTC. Они работают независимо от сервера АТС, подключаясь к нему с учетными данными SIP (а не через веб-аутентификацию). В этом случае, если злоумышленник получит доступ к приложению, максимум, что он сможет сделать – совершать и принимать звонки.

Приложения для iOS и Android распространяются через соответствующие магазины приложений, а приложение для Windows скачивается непосредственно с сервера АТС. Сейчас нативное приложение для Windows также называется 3CX Legacy App. И тем не менее, оно отлично работает, вполне безопасно, однако уже давно не обновлялось. Во время атаки на 3CX мы всем рекомендовали его использовать, и нам это очень помогло. Но все же архитектура приложения уже весьма устарела и нуждается в переработке.

Сейчас мы рассматриваем возможность выпуска нового нативного приложения для Windows, которое будет выглядеть как приложения для iOS и Android и распространяться через магазин приложений Microsoft. Это сделает его еще более безопасным, поскольку маркетплейс проверяет безопасность приложений в процессе сертификации, а также автоматически помещает их в карантин при подозрении на угрозу.

Дополнительные возможности нативного приложения

  • Захват фокуса при входящих звонках.
  • Запуск внешних приложений при получении вызова.
  • Поддержка TAPI – приложение может запускаться или быть запущенным из приложений, работающих с TAPI.

Требования для нативных приложений

  • Права локального администратора для установки приложения.
  • Автонастройка конфигурации по технологии PNP в локальной сети, либо скачивание файла конфигурации (в Update 8).