Предотвращение захвата сеанса в приложении asp.net mvc

Как мы можем предотвратить перехват сеанса в приложении asp.net mvc? Следующие шаги были выполнены тестировщиками для захвата сеанса — OWASP A2. .

  1. Войдите в систему как пользователь с низким уровнем привилегий.
  2. Войдите в систему как администратор. (в отдельном браузере - с той же машины)
  3. Скопировано ASP.Net Session ID пользователя-администратора
  4. Заменил ASP.Net Session ID пользователя low-prev на пользователя admin.

Выполнив вышеуказанные шаги, пользователь с низким уровнем доступа смог получить доступ к административным областям приложения.

  1. Приложение размещено на SSL (https).
  2. Файлы cookie были установлены на Secure и HttpOnly.
  3. Срок действия файлов cookie истекает Session_End и Signout.

Тем не менее, я могу воспроизвести описанный выше сценарий, используя Fiddler. Может ли кто-нибудь помочь в решении вышеуказанной проблемы.

Спасибо.


person Arul    schedule 04.12.2017    source источник


Ответы (1)


Я бы сказал, что если кто-то смог по-прежнему сохранять файл cookie, то он должен иметь возможность войти в систему. Смягчение должно заключаться в использовании недолговечных файлов cookie для конфиденциальных ресурсов и требовать от пользователя повторного ввода своих учетных данных, прежде чем делать какие-либо конфиденциальные данные. . Например, установка пароля, предоставление разрешений и т. д. Кроме того, вам следует затруднить сохранение файла cookie, что, похоже, вы уже сделали. Стоит также добавить Same-Site) и обеспечить безопасность вашего сайта.

person Omer Levi Hevroni    schedule 04.12.2017