CTF. Курс молодого бойца. Начальные задания категории WEB #4.
https://t.me/hacker_sanctuary
Данный пост будет носить практический характер. В нём мы рассмотрим задания начального уровня в категории WEB. Данные задания часто встречаются в простых CTF'ах и иногда, как разминочные, в более крупных.
Задания будут взяты с известного сайта с различными задачами (CTF и не только) - https://www.root-me.org/
Будем решать задачи из категории: Web - Server
Прямая ссылка: https://www.root-me.org/en/Challenges/Web-Server/
Предыдущие задания из данной категории вы можете найти на канале.
Часть 1 - https://telegra.ph/CTF-Kurs-molodogo-bojca-Nachalnye-zadaniya-kategorii-WEB-08-17
Часть 2 - https://telegra.ph/CTF-Kurs-molodogo-bojca-Nachalnye-zadaniya-kategorii-WEB-08-31
Часть 3 - https://telegra.ph/CTF-Kurs-molodogo-bojca-Nachalnye-zadaniya-kategorii-WEB-2-09-21
Пример 1.
Решим задание "Local File Inclusion".
Прямая ссылка на задание - https://www.root-me.org/en/Challenges/Web-Server/Local-File-Inclusion
Смотрим описание.

Из названия понятно про какую уязвимость пойдёт речь. На канале есть теоретический и практический пост про данную уязвимость, а также пример с варгейма Natas.
Пример (задание номер 8).
Поэтому особой теории по данному заданию не будет, просто перейдём к решению.

Попадаем на сайт и сразу видим ряд файлов или папок на которые можно перейти.

Перейдём на одну из предложенных ссылок и убедимся в том, что это папки, а внутри них файлы. При этом устанавливается параметр files с именем папки.

При открытии файлы мы видим его содержимое и добавляется ещё один параметр - f, который отвечает за файл в данной папке.
Внимательно посмотрим на правую часть сайта.

Мы находимся на сайте в качестве гостя, но можно быть и админом, однако при попытке залогиниться как админ вылетает форма авторизации, однако при её отклонение мы видим, что существует папка admin.

Попробуем прочитать содержимое данной папки.

Видим один файл, откроем его.

Читаем файл и видим имя пользователя admin и пароль, пробуем их для формы и они подходят.
Задание решено. Оно оказалось не сложным и довольно хорошо демонстрирует базовую концепцию уязвимости LFI.
Если у вас остались вопросы по решению задания или в целом по хакингу, то напишите в бот-ответчик - @hackersanctuary_bot