Аудит безопасности веб-приложений и интернет-магазинов
Мы проверяем веб-приложения, API и магазины на WordPress или WooCommerce так, как это сделал бы злоумышленник, анализируем код и настройки сервера и выдаём отчёт, в котором сказано, что исправлять в первую очередь. После исправлений проверяем снова. Работаем только с письменного разрешения владельца системы.
Когда аудит оправдан
Проблемы с безопасностью редко заявляют о себе сами. Обычно поводом для аудита становится перемена: запуск, уход сотрудника, вопрос от партнёра.
- Разработчик ушёл, и вы не уверены, какие ключи и доступы ушли вместе с ним
- Продукт вот-вот запустится, а глазами злоумышленника на него никто не смотрел
- Партнёр, инвестор или корпоративный клиент просит подтверждение, что платформу проверяли
- Магазин работает на десятках плагинов, и в одном из них только что опубликовали уязвимость
- Продукт построен на старом фреймворке, к которому никто в команде не хочет прикасаться
- Вы исправили находки прошлого аудита, и нужно, чтобы кто-то подтвердил, что они закрыты
Что мы проверяем
Тестирование веб-приложений
Ручное тестирование приложения и его бизнес-логики: контроль доступа, обработка ввода, загрузка файлов, сессии и сценарии, в которых переходят из рук в руки деньги или персональные данные.
API и аутентификация
Вход, сброс пароля, токены и обработка JWT, роли и права. Проверяем, может ли один пользователь добраться до данных другого, поменяв ID в запросе.
WordPress и WooCommerce
Плагины и темы с известными уязвимостями, доступ к админке, открытые файлы и конфигурация, а также логика оформления заказа: цены, купоны и смена статусов заказов.
Проверка кода на безопасность
Читаем код и его историю в поисках секретов в репозитории, небезопасных запросов, недостающих проверок и устаревших библиотек, в том числе в старых стеках, которые годами никто не проверял.
Защита серверов
Правила SSH и файрвола, открытые порты, TLS, заголовки безопасности, права на базы данных и файлы, бэкапы, хранящиеся отдельно от сервера, и защита от подбора паролей, которая не блокирует ваш собственный офис.
Повторная проверка
После того как ваша или наша команда исправит находки, мы заново проверяем каждую и обновляем её статус в отчёте.
Чего мы не делаем
Эти правила входят в каждый договор и не обсуждаются.
- Мы не тестируем ни одну систему без письменного разрешения её владельца
- Мы не проводим нагрузочные тесты и тесты на отказ в обслуживании на рабочей системе без отдельной договорённости
- Мы не передаём находки никому, кроме контактных лиц, указанных в договоре
- Мы не храним ваши данные и тестовые аккаунты после завершения работы
Отчёт, в котором сказано, что исправлять в первую очередь
Список из двухсот предупреждений сканера не помогает команде решить, что делать в понедельник. В нашем отчёте каждая находка оценена по серьёзности по CVSS, приведены доказательства, например запрос и ответ, подтверждающие проблему, описано, как её воспроизвести и как исправить. Владелец получает краткое резюме простым языком, а разработчики — план исправлений, упорядоченный по риску и трудоёмкости.
- Находки с оценкой CVSS, упорядоченные по риску
- Доказательства и шаги воспроизведения для каждой находки
- Краткое резюме для владельца
- План исправлений, по которому могут работать разработчики
Где обычно прячутся серьёзные проблемы
Автоматические сканеры находят устаревшие версии. Проблемы, которые позволяют захватить чужие аккаунты, обычно в другом месте: API, который отдаёт заказ другого клиента, если поменять номер в запросе, ключ подписи, закоммиченный в репозиторий много лет назад, маршрут админки, который проверяет вход, но не роль, оформление заказа, которое доверяет цене, присланной браузером, файл бэкапа, забытый в публичной папке. Чтобы найти такое, нужен человек, который читает код и проходит сценарии вручную, — так мы и тестируем.
- Контроль доступа проверен на каждом чувствительном запросе
- История репозитория проверена на секреты и ключи
- Логика оплаты и заказов протестирована вручную
- Найдены забытые файлы, эндпоинты и режимы отладки
Повторная проверка и защита, чтобы отчёт не стал концом
Аудит окупается, только когда находки закрыты. После исправлений мы заново проверяем каждую находку и отмечаем её как закрытую, частично исправленную или всё ещё открытую. Если хотите, исправления делают наши разработчики, а наша серверная команда укрепляет инфраструктуру: доступ только по ключам, файрвол, открывающий наружу лишь то, что должно быть публичным, актуальный TLS, отдельные пользователи баз данных с минимальными правами и бэкапы, хранящиеся отдельно от сервера, который они защищают.
- Каждая находка перепроверена после исправлений
- Обновлённый отчёт со статусом каждого пункта
- Исправления силами наших разработчиков, если вам так удобнее
- Защита серверов в рамках той же работы
Как проходит аудит
Объём и разрешение
Согласуем, что тестируется, откуда и когда, и владелец системы подписывает письменное разрешение. Вы предоставляете тестовые аккаунты, а для проверки кода — доступ к репозиторию.
Тестирование
Изучаем приложение, тестируем его вручную и проверяем код и настройки сервера в согласованных рамках. О критичных находках сообщаем сразу, не дожидаясь отчёта.
Отчёт
Вы получаете находки с оценкой CVSS, доказательства, способы исправления, краткое резюме и план исправлений, и мы разбираем их с вашей командой.
Исправления
Ваши или наши разработчики идут по плану в порядке риска.
Повторная проверка
Заново проверяем каждую находку и выдаём обновлённый отчёт со статусом каждой.
Что мы проверяем и по каким стандартам
Стандарты
- OWASP Top 10
- OWASP API Security Top 10
- CVSS
- CWE
Приложения
- Веб-приложения и админ-панели
- REST API
- Аутентификация через JWT и сессии
- Headless CMS, например Payload и Next.js
Платформы и стеки
- WordPress и WooCommerce
- PHP, Laravel, Yii2
- Ruby on Rails
- Node.js
Инфраструктура
- Linux-серверы
- nginx
- SSH и файрвол
- TLS и заголовки безопасности
Форматы работы
Аудит с повторной проверкой
Фиксированный объём: тестирование, отчёт и повторная проверка после того, как ваша команда исправит находки.
Аудит и исправления
Мы тестируем, исправляем находки в коде и на сервере и подтверждаем результат повторной проверкой.
Регулярные проверки
Проверка перед крупными релизами или по графику, часто вместе с поддержкой сайта или серверов.
См. также: Тестирование и QA · Поддержка серверов · Поддержка сайтов
Отзывы
Команда Revol продолжает укреплять возможности клиента в разработке благодаря качественной работе и надёжной поддержке. Они эффективно коммуницируют и хорошо понимают потребности и бизнес клиента.
Tomas
Работа Revol полностью оправдала ожидания и устроила клиента. Свежий подход и готовность всегда быть на связи для поддержки стали ценным преимуществом. Если нужна открытая, клиентоориентированная команда для достижения целей — Revol отличный выбор.
Andrey
Частые вопросы
Вам нужно наше письменное разрешение?
Да, всегда. Владелец системы подписывает разрешение, в котором указаны объём, адреса и даты. Если система работает у хостинг- или облачного провайдера, мы также соблюдаем правила этого провайдера для тестирования безопасности.
Не сломает ли тестирование наш работающий сайт?
Границы мы согласуем заранее. По возможности тестируем на тестовой копии с тем же кодом. На рабочей системе используем тестовые аккаунты, избегаем разрушительных действий и не проводим нагрузочные тесты без отдельной договорённости.
Чем это отличается от автоматического сканирования уязвимостей?
Сканер находит известные версии и типичные ошибки настройки, и мы тоже пользуемся сканерами. Но самые важные находки, например когда один пользователь читает данные другого или цена меняется в браузере, требуют человека, который понимает приложение и тестирует его вручную.
Что именно мы получаем?
Отчёт, в котором каждая находка оценена по CVSS, с доказательствами, шагами воспроизведения и способом исправления, краткое резюме для руководства и план исправлений. После повторной проверки — обновлённую версию со статусом каждой находки.
Можете исправить то, что найдёте?
Да. Наши разработчики могут исправить код, а серверная команда — укрепить инфраструктуру. Некоторые клиенты предпочитают, чтобы исправляла их команда, а мы проверяли, и это работает не хуже.
Повторная проверка входит в аудит?
Мы закладываем её в объём с самого начала, потому что аудит без повторной проверки оставляет вас гадать, сработали ли исправления. Когда она пройдёт, зависит от того, как быстро будут внесены исправления.
Как вы обращаетесь с нашими данными и находками?
Мы работаем по NDA, передаём находки только контактным лицам, указанным в договоре, и удаляем тестовые данные и доступы по завершении работы. Подробности найденного мы никогда не публикуем.
Это сертификация?
Нет. Мы не орган сертификации, и отчёт не является сертификатом соответствия. Он может помочь в вашей работе над соответствием требованиям и показывает партнёрам, которые просят подтверждение тестирования, что именно и как было проверено.
Расскажите о своём проекте
Опишите задачу в нескольких строках. В течение одного рабочего дня мы ответим вопросами или первым мнением об объёме работ и стоимости.
Удобнее написать на почту или созвониться?
welcome@revolsource.com
+38 097 662 23 20
Revol Software OÜ, Таллин, Эстония. Наша команда распределена по всему миру.
Присоединяйтесь к нашей команде
Присылайте резюме на career@revolsource.com