Главный специалист отдела комплексных систем защиты информации компании «Газинформсервис» Дмитрий Овчинников рассказал, какую опасность могут нести в себе cookie:
– Прежде всего, надо понимать, что в файлах cookie содержится не сам пароль, а сгенерированный веб-сайтом сессионный ключ, который используется вместо пароля для облегчения жизни пользователя и усиления мер аутентификации. Сессионный ключ – это длинный ряд цифр и букв, который веб-браузер (клиентская сторона) предъявляет веб-сайту (серверная сторона) для повторной авторизации и аутентификации пользователя на веб-сайте. То есть, первый раз пользователь вводит свой логин и пароль, а вот в дальнейшем при переходе между страницами одного веб-сайта используется уже сессионный ключ. Таким образом, повышается надежность авторизации и аутентификации, за счет того, что пароль передается только один раз, а сессионный ключ сгенерирован под конкретную сессию пользователя.
Естественно, такой сессионный ключ, извлеченный из файлов cookie пользователя можно использовать для подключения в его сессию. Однако, это говорит только о том, что на веб-сайте есть существенные недостатки в части информационной безопасности.
Первое, что может быть сделано неверно – это простая генерация сессионных ключей. Злоумышленник, используя специальные программы анализаторы, может создать с десяток пользователей, получить для них сгенерированные сессионные ключи, проанализировать их и предугадать следующие сессионные ключи, которые будут выданы настоящим пользователям. Часто, на дешевых сайтах, для генерации сессионных ключей используется типовые алгоритмы, которые используют текущую дату с добавлением некоторой дополнительной информации. Такого рода «случайные» сессионные ключи легко предсказываются и угадываются злоумышленниками.
Второе, если злоумышленник легко обходит MFA путем использования ворованных coockie – это значит, что в работе сайта присутствует серьезная логическая ошибка, которая позволяет злоумышленникам обходить механизмы MFA. Подобные ошибки нельзя вычислить при помощи автоматических систем тестирования кода или при использовании программ для пентеста сайтов. Подобного рода ошибки, обычно, можно найти только при ручном тестировании веб-сайта на проникновение.
Третье, злоумышленники могут получать свежие cookie из веб-браузеров пользователей используя разные виды атак на стороне клиента. Однако, это говорит лишь о том, что метод верификации сессии пользователя на веб-сервере не совершенен и веб-сервер не может отличить две разные сессии, от двух разных клиентов.
Единственное, что может сделать со всем этим пользователь, это постараться не подвергаться атакам на стороне клиента соблюдая цифровую гигиену и не посещая сомнительных веб-сайтов. А вот, обо всем остальном должны позаботиться разработчики веб-сайтов совместно со специалистами по информационной безопасности. Ведь, мало разработать красивый и функциональный веб-сайт, надо что бы он был безопасен для пользователей.