14.01.2018 Встроенная в ASP.NET Identity уязвимость
 
Разбираюсь тут с asp.net core
Как известно, в ASP.NET можно использовать встроенную систему авторизации — Identity, можно обойтись и без нее, используя авторизацию на базе Cookies и самому реализовать всю логику Identity.
Но и в том и в том случае кроется подвох — имеется серьезная уязвимость, думаю она не особо критична для серьезных разработчиков, но в любом случае, надо понимать что происходит, чтобы найти способ ее устранить.

В общем, суть такая, что для авторизации при входе на сайт, достаточно просто иметь сохраненные куки. Это конечно, логично и все так делают.
Но в этих куках никак не учитывается пароль, и соотвественно, middleware аутентификации не проверяет соотвствеие пароля хешу в БД. Она просто дешифрует куки в которых содержится логин и все права пользователя на сайте.

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

Возможно, эта проблема не только ASP.NET, но и более общая.
Кто как с ней борется?

 
 
 
 
10.12  .NET Reactor
15.11  n
15.11  C# ClickOnce
 
22.01  PDF to Image