Пентест SPA-приложения — это тестирование одностраничных приложений на React, Vue, Angular и подобных фреймворках. У SPA логика вынесена в браузер, а данные ходят через API: это меняет модель угроз, и потому важны безопасность токенов, клиентская логика, DOM-based XSS и защита API, стоящего за фронтендом.
Что мы проверяем в SPA
SPA переносит на клиент много логики, а вместе с ней — и часть рисков. Проверяем:
- Хранение и защиту токенов: как достать JWT или сессию из браузера.
- DOM-based XSS — уязвимости на стороне клиента.
- Клиентскую авторизацию: скрытые, но вполне доступные функции и роуты.
- Безопасность API за фронтендом по OWASP API Security Top 10.
- CORS и CSP — ошибки конфигурации кросс-доменного доступа.
- Секреты во фронтенд-бандле: ключи и токены прямо в JS.
Типичные уязвимости, которые находим
Список находок у каждого проекта свой, но повторяющиеся сюжеты есть всегда. Чаще всего встречаем:
- DOM-based XSS: вредоносный скрипт исполняется через небезопасную работу с DOM на клиенте.
- Небезопасное хранение токенов: JWT и сессии в localStorage, доступные любому XSS.
- Broken Access Control на API: весь контроль доступа лежит на backend, а SPA лишь прячет кнопки.
- Утечка секретов в бандле: ключи и эндпоинты, зашитые в собранный JavaScript.
- CORS и postMessage — слишком широкие политики и небезопасный обмен между окнами.
- Клиентская бизнес-логика: проверки сделаны только на клиенте и обходятся напрямую через API.
Как проходит пентест SPA-приложения: этапы
- Согласование и границы (scope). Определяем цели, объекты и правила, чтобы работа шла легально и била в реальный бизнес-риск, а не в галочки для отчёта.
- Разведка и картирование. Сначала собираем всю поверхность атаки в границах проекта и только потом что-то эксплуатируем.
- Ручная эксплуатация. Дальше в дело идут руки: выстраиваем цепочки уязвимостей за пределами автосканеров и доказываем реальное воздействие.
- Анализ и отчёт. Каждую находку приоритизируем по CVSS, привязываем к бизнес-риску и расписываем с шагами воспроизведения.
- Поддержка и бесплатный ретест. Помогаем команде с исправлениями и повторно проверяем, что уязвимости действительно закрыты.
Инструменты и техники
Burp Suite Pro, анализ и деобфускация бандлов, DevTools, Semgrep для клиентского кода, ручной разбор маршрутов и состояния. Автоматику пускаем только первым проходом — основную ценность даёт ручной разбор и понимание бизнес-логики.
Что вы получаете
- Отчёт с резюме для руководства и техническими деталями для инженеров.
- Каждая уязвимость — с шагами воспроизведения, оценкой по CVSS 3.1 и бизнес-контекстом.
- Приоритизированные рекомендации, которые можно применить сразу.
- Бесплатный повторный тест после исправлений и письмо-подтверждение для клиентов и аудиторов.
Кому нужно тестирование React/Vue/Angular
- Продуктам на React, Vue, Angular и других SPA-фреймворках.
- Приложениям, где вся логика вынесена на клиент и API.
- Командам, которые перешли с классического сайта на SPA.
- Стартапам перед запуском или инвестиционным due diligence.
Стандарты и методологии
Тестируем вручную по признанным методологиям веб-безопасности:
- OWASP Top 10 и OWASP Web Security Testing Guide (WSTG) — эталон проверки веб-приложений.
- OWASP API Security Top 10 — для API и интеграций.
- PTES — методология тестирования на проникновение.
- Ручная эксплуатация каждой находки, а не только автосканер.
Смежные услуги
Если нужен не полный пентест, а точечный аудит SPA перед релизом, объём работ можно сузить под конкретный риск. SPA неотделим от своего бэкенда, поэтому полноценную проверку дополняют пентест API и пентест веб-приложений.
Стоимость и заказ
Цена услуги «Пентест SPA (React, Vue, Angular)» зависит от объёма и глубины работ и фиксируется заранее, без скрытых доплат. Чтобы заказать пентест SPA, оставьте заявку — бесплатно проконсультируем, согласуем границы и посчитаем точную стоимость под ваш бюджет и сроки.