DPA Frontend Application Security Testing (FAST) Analyzer
FAST-анализатор для автоматизированного тестирования безопасности frontend-приложений в процессе безопасной разработки (SSDLC / DevSecOps).
  • 7 МБ

    средний размер JavaScript-кода современных frontend-приложений
  • 98%

    скриптов минифицированы / обфусцированы, что значительно затрудняет их ручной и автоматизированный (SAST) анализ
  • 12

    уровней - средняя глубина дерева зависимостей NPM-пакетов в JavaScript-проектах
Классические анализаторы (SAST, DAST, SCA, OSA), применяемые в процессе безопасной разработки, обнаруживают не все угрозы, специфические для клиентских JavaScript/TypeScript-приложений, такие как возможность загрузки стороннего кода (3rd-party), выполнение зашифрованного кода из текста. Достоверно выявить весь фактически исполняемый код и вредоносное поведение скриптов возможно только на контентном слое (Content Layer) браузера.

Frontend-приложения имеют десятки зависимостей, при этом при разработке не анализируются на реальные угрозы, что создает слепую зону в безопасности и предоставляет возможность монетизации взлома для злоумышленника, что регулярно обнаруживается в реальных атаках. При этом весь этот код имеет полный доступ к странице web-приложения и функциям браузера и может выполнять следующие действия.
  • Quality
    Сбор и кража критичных данных со страниц web-приложения (персональные данные, банковские карты, данные клиентов, учетные записи, токены, cookie, профиль поведения и т.п.)
  • Experience
    Загрузка на страницу других скриптов злоумышленника
  • Support
    Выполнение действий от имени пользователя
  • Presents
    Показ пользователю мошеннических баннеров от имени компании для последующей кражи денег / данных или загрузке вредоносного вложения
  • Flexibility
    Майнинг криптовалюты за счет вычислительных ресурсов устройства пользователя
  • Efficiency
    Заражение устройства пользователя через эксплуатацию уязвимостей браузера
Безопасность frontend-приложений
  • НДВ и закладки в зависимостях js-библиотек
  • Избыточная передача данных доверенным партнерам
  • Несанкционированное изменение файлов в скомпрометированных CDN
  • Атаки на цепочки поставок frontend-приложений
  • Утечки данных через браузер из intranet-порталов (CRM, HRM, ERP, Wiki)
  • Некорректное управление доступом и уязвимости бизнес-логики (в т.ч. IDOR)
  • Отображение мошеннических баннеров от имени компании
  • Избыточное раскрытие данных разработчиком (OWASP API3:2019)
  • Раскрытие критичных данных в комментариях в коде web-страниц и скриптов
  • Черное SEO (продажа ссылок, скрипты ретаргетинга конкурентов)
  • Трекеры / пиксели отслеживания
  • Системы управления тегами
  • Трансграничная передача ПД
  • Вредоносные плагины браузера
DPA FAST Analyzer
DPA FAST Analyzer - российский FAST-анализатор для автоматизированного тестирования безопасности frontend-приложений в процессе безопасной разработки (SSDLC / DevSecOps).

Инструмент выполняет анализ поведения скриптов, обнаруживает НДВ и закладки в сторонних библиотеках, позволяет контролировать требования политик ИБ к разработке клиентских js/ts приложений и управлять поверхностью атаки для выпуска frontend-приложений по принципу Secure by Design.
По технологии frontend-sandbox (песочница), в ходе FAST-анализа выполняется весь js-код, в том числе динамически загруженный. Помимо скриптов обнаруживаются другие активные элементы (атрибуты событий, iframe, object и другие).

На выходе Вы получаете полный достоверный Frontend SBOM, и перечень отклонений от эталонной политики безопасности, требующих реакции AppSec-специалиста.
Динамическая инвентаризация активных элементов
Для реализации цели скрипту злоумышленника потребуется выполнить сетевой запрос со страницы frontend-приложения (например, загрузка полезной нагрузки, отправка украденных данных) .

FAST-анализатор на контентном слое браузера контролирует все сетевые запросы и отображает диаграмму потоков данных (Data Flow Diagram). В случае обнаружения запроса на неразрешенный хост будет выявлено нарушение политики безопасности.

Также Вы сможете проанализировать, какие данные (состав / объем / страна назначения) собирают партнерские сервисы.
Карта сетевых запросов, диаграмма потоков данных
Современные браузеры предоставляют js-приложениям множество API, которое может быть использовано злоумышленниками (доступ к камере, микрофону, экрану, уведомлениям, геопозиции, полноэкранному режиму, буферу обмена, сохраненным методам оплаты и другие). При этом большая часть frontend-приложений использует не более 2 % существующих API.

При анализе поведения скриптов FAST-анализатор обнаруживает вызовы таких API. Если после обновления сторонних библиотек приложение стало запрашивать доступ к микрофону, это может означать внесение закладки в код злоумышленником.

Используя FAST-анализатор, Вы сможете контролировать факты вызова не разрешенного API браузера.
Опасные функции браузера, управление поверхностью атаки

PLAN

  • Определение политики для активных элементов (например, запрещены iframe)
  • Определение политики для хостов-получателей данных
  • Определение политики для разрешенных опасных функций браузера (например, разрешен только доступ к геопозиции)

TEST

1. Запуск сканирования FAST-анализатором

2. Соответствует политике:

  • Релиз разрешен

3. Не соответствует политике:

  • Согласование отклонений AppSec-специалистом
  • Коррекция политики либо устранение нарушения
  • Повторное сканирование

MONITOR

1. Периодическое сканирование FAST-анализатором продуктивной версии

2. Не соответствует политике:

  • Расследование инцидента
Решаемые задачи
  • Управляемый и измеряемый риск-ориентированный процесс разработки безопасных frontend-приложений
  • Управление поверхностью атаки в js-приложении, обнаружение используемого "опасного" API браузера
  • Обнаружение актуальных угроз и уязвимостей для frontend-приложений, невидимых для классических анализаторов безопасности (SAST, DAST, SCA, OSA)
  • Возможность анализа данных, собираемых доверенными партнерами, на предмет избыточности и трансграничной передачи
  • Предотвращение утечек информации в frontend-приложениях, в том числе web-скимминга (e-skimming) и formjacking-атак
  • Автоматизированный анализ безопасности без увеличения Time to Market (TTM)
  • Обнаружение закладок, фактов компрометации и НДВ в зависимостях по аномальному поведению приложения
  • Выполнение требований и рекомендаций PCI DSS 4.0, 152-ФЗ, НКЦКИ, GDPR, отраслевых стандартов ИБ. Отчеты для аудиторов
  • Инвентаризация всех скриптов и других активных элементов, контроль целостности
Интерфейс продукта
Статусы проектов
Обзор результатов сканирования
Преимущества
  • Полная видимость и контроль

    Frontend Application Security Testing (FAST) анализатор обнаруживает актуальные угрозы для клиентских JavaScript-приложений, не видимые для других анализаторов безопасности.

    Контролируйте безопасность каждого релиза в процессе безопасной разработки для предотвращения утечек данных и атак на пользователей.
  • Отсутствие ложных срабатываний

    FAST-анализатор применяет политики по принципу "Белого списка". После первичной настройки политики, срабатывание происходит только в случае обнаружения элемента или действия, представляющего реальное нарушение, требующее реакции AppSec-специалиста.
  • Простое внедрение и быстрое сканирование
    Для настройки первого сканирования необходим стенд с frontend-приложением, настройка базового E2E-сценария занимает несколько минут в удобном UI.

    Сканирование выполняется по конкретным E2E-сценариям и не превышает их длительность, что позволяет не влиять на Time to Market (TTM).
  • Технология Frontend Sandbox

    FAST-анализатор работает по технологии frontend-sandbox (песочница), выполняя весь js-код в модернизированном виртуальном браузере, контролирует динамическое внедрение кода, сетевые запросы и использование API браузера
Безопасная разработка frontend-приложений и выпуск каждого релиза по принципу Secure by Design