Важность ИБ на уровне ИТ-специалистов обусловлена тем, что они участвуют в разработке веб-приложения и его последующем администрировании, а именно в улучшении, устранении уязвимостей или иных ошибок. Так, обеспечение ИБ веб-ресурсов заключается, в том числе, в применении правил безопасной разработки, безопасности исходного кода и тестировании на отсутствие ошибок логики, реализация которых может привести к негативным последствиям. Например, ошибки бизнес-логики могут привести к потере денежных средств, когда из-за некорректной функциональности баланс пользователя округляется в большую сторону (0,9 рубль округляется до 1 рубля и при многократном повторении округления происходят утечки больших сумм). А отсутствие процессов безопасной разработки может привести к наличию уязвимостей в исходном коде, приводящих к получению административных прав, или к наличию комментариев разработчиков между строк кода, позволяющих нарушителю узнать важную информацию об архитектуре приложения. Файрвол веб-приложений (Web Application Firewall — WAF) не поможет в полной мере закрыться от таких уязвимостей и ошибок. Выявить их и показать возможность их использования для реализации негативных (недопустимых) событий поможет проверка безопасности в виде тестирования на проникновение (пентест).
Нелегитимное проникновение в веб-приложение открывает для злоумышленника различные вектора для деструктивных действий: кража персональных данных, получение привилегированных прав с подменой информации на странице (так называемый Deface), утечка коммерческой тайны, вывод денежных средств. Взлом веб-ресурсов влечет за собой не только финансовые, но и репутационные риски, когда осуществляется подрыв доверия клиентов и партнеров к компании, а также могут быть негативные публикации в средствах массовой информации.
При этом не стоит забывать, что веб-приложения могут размещаться как на ресурсах хостинг-провайдера, так и на специально выделенных мощностях компании (в идеале – в демилитаризованной зоне). Так, приложения могут открывать точки входа в локальную сеть организации, позволяя злоумышленнику осуществлять деструктивные действия не только на внешнем периметре, но и внутреннем.
Таким образом, можно сказать, что пентест веб-приложений проводится для того, чтобы:
- получить общую оценку по анализу защищенности (выявление уязвимостей, недостатков, ошибок);
- выявить вектора проникновения во внутреннюю сеть компании;
- оценить возможность реализации недопустимых событий (кража или удаление данных, подмена информации, компрометация инфраструктуры ресурса).
В данной статье мы рассмотрим основные этапы проведения работ по тестированию веб-приложений.