На странице
Перебор имён пользователей по разным ответам сервера
Лаборатория
Username enumeration via different responses · Apprentice
Решение
Дано
This lab is vulnerable to username enumeration and password brute-force attacks. It has an account with a predictable username and password, which can be found in the following wordlists:
Candidate usernames
Candidate passwords
To solve the lab, enumerate a valid username, brute-force this user's password, then access their account page.
Анализ задания
Нам дают словари имён и паролей. Нужно организовать брутфорс-атаку. Сперва подобрать имя, а затем пароль. Для решения лабы нужно залогиниться в аккаунт жертвы.
Разведка
Логин происходит через:
POST /login
username=ПЕРЕМЕННАЯ&password=123
Нам предоставили список имён для перебора. Скопируем его и создадим атаку в Intruder. username делаем переменной — 101 имя для теста. Сервер всегда отвечает 200, поэтому отфильтруем по длине ответа. Вот наш кандидат — asterix.
Второй шаг — подобрать пароль:
username=asterix&password=ПЕРЕМЕННАЯ
Аналогично берём список — 100 паролей. Запускаем, тут можем ориентироваться на редирект 302:
HTTP/2 302 Found
Location: /my-account?id=asterix
Это значит, пароль подошёл. Пароль найден — computer.
Лаба решена.
Ещё в этой категории
Web Shell Upload через обход блек-листа расширений (PortSwigger Lab)
.php в блек-листе, но .htaccess заливается без вопросов — подсовываем свой конфиг Apache и заставляем сервер исполнять shell.bug как PHP.
Web Shell Upload через обфускацию расширения (PortSwigger Lab)
Блек-лист расширений не пускает .php, двойное расширение shell.php.jpg отдаётся как картинка — null-byte shell.php%00.jpg обходит обе проверки.
Remote Code Execution через загрузку web shell (PortSwigger Lab)
Загрузка аватарки без валидации — заливаем PHP web shell и читаем /home/carlos/secret.