Проверка сайта на безопасность – это сложная деятельность, которая требует быть внимательным, последовательным и творческим. Также нужна фантазия. Для того, чтобы сделать это корректно, необходимо понимать техническую изнанку веб-приложения или веб-сервера. Тестирование безопасности сайта – исследовательская работа, аналитика и постоянный поиск.
Проверка изнутри: как выставить приоритеты и чем руководствоваться?
При работе с каждым новым проектом компания «Веб Фокус» применяет новые инструменты, внедряет новые технологии, при необходимости обращается к специализированным книгам и статьям, которых нет в свободном доступе.
Зачастую, это англоязычный контент, из которого не получится извлечь пользу, если знать языка на достаточном уровне.
Тест безопасности сайтов состоит из пяти этапов:
- Поиск;
- Локализация;
- Воспроизведение;
- Заведение;
- Отчет.
Приоритетность действий зависит от целей заказчика и специфики проекта.
Мы акцентируем внимание на том, что для проверки сайта недостаточно включить сканер безопасности. Большинство ошибок находим вручную, при глубоком изучении технической части приложения или сервера.
Проверка сайта на безопасность – чего бояться?
Существует десять наиболее серьезных уязвимостей, над которыми мы работаем:
- Код и его внедрение;
- Управление сессией и аутентификация некорректная;
- Чувствительные данные и их утечка;
- Внедрение XXЕ;
- Контроль доступа и его нарушение;
- Небезопасность конфигурации;
- Скриптинг между сайтами;
- Небезопасность десериализации;
- Известные уязвимости, использование компонентов с ними;
- Мониторинг и журналирование, их отсутствие.
Компания «Веб Фокус» совершает тест безопасности сайтов на основании Ваших данных. Проникает вглубь проблемы, детально изучает изнанку и внешнюю сторону технических частей сервера. Решает возникшие проблемы, предупреждает появление новых.
Тестирование безопасности сайта – методика
Во время работы мы пользуемся методическими рекомендациями по проведению глубокой и качественной проверки ресурса на безопасность.
Процесс делится на два этапа:
- Пассивная часть;
Наш штатный тестировщик понимает, как работает приложение, по какой логике, начинает с ним взаимодействовать. Иногда использует различные средства для сбора информации. К примеру, есть http-запросы и ответы, их можно рассмотреть при помощи http-прокси. В итоге специалист понимает и видит все точки входа (параметры, заголовки, куки и т.д.).
- Активная часть;
Тестирование безопасности сайта по методике, которая известна специалисту и является наиболее эффективной. Процесс разбит на одиннадцать этапов:
- Собрать информацию;
- Протестировать контроль доступа;
Определяем причины возникновения несанкционированного вторжения и доступа к информации других пользователей. Смотрим, почему они могут видеть и использовать различные функции. Тестируем конфигурацию.
- Протестировать политику безопасности пользователя;
Исследуем, нет ли обмена данными пользователей. Нет передают ли приложения информацию между собой, например, сторонние сайты или платежные системы, не обнародуется ли эта информация.
- Протестировать аутентификацию и авторизацию;
Проверяем, нельзя ли обойти окно регистрации и авторизации на сайте. Определяем корректность пользовательских данных и управление ими. Нивелируем возможность для других пользователей получить личные данные зарегистрировавшихся клиентов и управлять ими.
- Протестировать, как управлять сессией;
- Протестировать обработку ввода пользователя;
Включаем тест, обрабатываем данные и активируем некорректные показатели прежде, чем ресурс даст на них ссылку.
- Обработать ошибочные значения;
Исключаем ошибки в системе приложения, не раскрывается ли информация о безопасности и её внутренних механизмах. Не показывается ли код или программные исключения.
- Провести криптографию;
Делаем всё, чтобы обнаружить проблемы в криптографии, дешифровании или процессе верификации. Отслеживаем уровень протоколов в сети, изучаем деятельность cookies.
- Протестировать бизнес-логику;
- Протестировать уязвимые места на пользовательской стороне.
Проверяем, будет ли сайт устойчивым к атакам Dos\DDos. Может ли сервер обрабатывать данные в незапланированно больших объемах, переносить серьезные нагрузки и количество данных, которые способны вывести из строя сайт.
Некоторые части можно упростить или вообще убрать, но такой список позволяет полностью покрыть приложение.
Какими инструментами мы пользуемся?
Методика работы зависит от специфики приложения. Кроме глаз и мозга, уместно использовать специальные скрипты. Они предназначены для решения конкретных проблем и целей. Также существуют комплексные инструменты. Позволяют «достать» из минимальных вводных максимальные выводы.
Пользуемся таким инструментарием:
- Сканирование веб-уязвимостей;
- Эксплуатация веб-уязвимостей;
- Криминалистика;
- Сканирование портов;
- Мониторинг трафика;
- Отладчики;
- Детекторы руткит;
- Шифрование;
- Брутфорс.
К сожалению, автоматизированные сервисы не всегда дают корректный результат. Мы придерживаемся такого алгоритма: 80% работы отдаем на проверку автоматизированным сервисам, остальное изучаем вручную. В конце перепроверяем данные, полученные от анализаторов.
Причины появления уязвимостей
Острая необходимость в тесте безопасности сайта появляется из-за лени разработчиков, из-за невнимательности или халатности. Также причиной может послужить неопытность. Специалист не представляет себе алгоритм атаки на сайт. Разработчик низкой квалификации считает, что экранирования кавычки («’») в области пользовательского ввода будет достаточно. Если нет, можно использовать «magic_quotes». И всё, SQL-инъекция не страшна. В результате обращаются к превентивным мерам, а дальнейшие действия неизвестны. И даже WAF-ы не помогут.
Почему стоит обратиться к нам?
Компания «Веб Фокус» гарантирует качественную проверку сайта на безопасность. Мы глубоко изучаем проблему, внедряемся в её техническую часть изнутри и снаружи. Используем доступный нам инструментарий, привлекая к работе опытных тестировщиков. Владеем навыки беспроигрышных методик, предназначенных для тестирования безопасности сайта. Находим причину уязвимостей, устраняем их. Ошибки допускают все, наша задача – помочь Вам их исправить, чтобы сайт работал корректно и не подвергся атаке. Обращайтесь к нам, чтобы обезопасить свой сайт от намеренных вредоносных вторжений!