К команде наших специалистов по кибербезопасности обратился международный коммерческий банк с общими активами 500 миллионов долларов США. Банк предлагает весь спектр банковских услуг для частных и корпоративных клиентов.
Команде была поставлена задача оценить текущий уровень безопасности веб-приложений и мобильных банковских приложений для коммерческого банка в Европе. Хотя объем работы был ограничен перспективой черного ящика и предусматривал сценарий внешней атаки, когда злоумышленник знает только имя клиента, нам удалось использовать отклонения в работе приложения, получить доступ к критически важным данным, получить полный доступ к счетам клиентов банка и снять деньги в качестве конечной цели.
ЭТАПЫ ТЕСТИРОВАНИЯ
Разведка:
ЭТАПЫ ПРОВЕДЕНИЯ ТЕСТА
Для проведения качественного комплексного тестирования мы использовали как ручные, так и автоматизированные инструменты и методики тестирования.
Компрометация OTP:
Во время тестирования мы обнаружили, что доступ к счету через онлайн-банкинг защищен двухфакторной аутентификацией с помощью OTP-кода. Нам удалось найти критическую уязвимость в OTP, что позволило нам захватить его с помощью атаки грубой силы (атака подбора пароля на странице входа). Кроме того, OTP-верификация также использовалась для финансовых или любых других операций с активами. При условии, что злоумышленник знал бы учетные данные пользователя, он мог бы получить доступ к любому счету в банке и осуществить нежелательный денежный перевод, что полностью скомпрометировало бы систему безопасности.
Такая же OTP-уязвимость была подтверждена и в мобильном приложении, хотя для обработки запросов использовался другой сервер, а API веб и мобильного приложений должны были функционировать отдельно. Таким образом, мобильное приложение содержало тот же недостаток в логике управления сессиями, и риск безопасности был соответственно больше.
Компрометация аутентификации:
Сценарий взлома:
Мы провели ряд тестов для анализа безопасности веб и мобильных приложений банка. В результате тестирования было выявлено несколько типов уязвимостей, классифицированных в соответствии с уровнями риска, определенных методологией OWASP. Сочетание двух критических уязвимостей позволило нашей команде провести любые транзакции со счетов клиентов банка без надлежащей аутентификации.
Чтобы помочь банку устранить выявленные пробелы в безопасности, мы подготовили комплексный отчет, охватывающий все обнаруженные уязвимости, и предоставили рекомендации по их устранению, которые были реализованы на этапе исправления.