Обход фильтра SSRF

Здравствуйте, меня зовут W1C3, и сегодня я собираюсь объяснить, как получить произвольный доступ для чтения файлов с помощью подделки запросов на стороне сервера (SSRF) в обход фильтра. Эта задача была разработана для WaniCTF .
Имя
Скриншот
Описание
Приложение, которое делает скриншоты ваших любимых веб-сайтов.
Прохождение
При доступе к веб-сайту можно заметить, что это очень простая страница. Его единственная функциональность — получение URL-адреса, доступ к URL-адресу с помощью веб-браузера и создание снимка экрана.

В этой задаче, поскольку исходный код предоставляется, мы видим, что он выполняет проверку, которую нам нужно обойти, поскольку « HTTP » должен быть включен в наш запрос, а « FILE » не может быть включен.

Чтобы убедиться в этом, мы попытаемся прочитать файл /etc/passwd , но безуспешно.

Как мы упоминали ранее, фильтр, который нам нужно обойти, должен либо содержать строку « http », либо не включать строку « file ».

Теперь, когда мы находимся на предыдущем шаге, зная, что SSRF существует, и понимая фильтр, который нам нужно обойти, мы добавим « File:// » в начало и « ../../../../flag. txt » или « ../../../../etc/passwd » до конца. Благодаря этому мы сможем прочитать файл «flag.txt», чтобы выполнить нашу задачу.
ПРИМЕЧАНИЕ . Чтобы обойти фильтр, файл должен содержать хотя бы одну заглавную букву.

Чтобы упростить задачу, мы удалим некоторые данные из запроса. В этом случае наша полезная нагрузка будет выглядеть так:
File:///http/../../flag.txt
Заключение
В этой задаче мы продемонстрировали, как обойти простой фильтр, который пытался предотвратить SSRF, запретив « файловый » протокол и потребовав протокол « http ». Тщательно сформировав наш запрос с заглавной буквы в параметре « file » и используя протокол « File:// », мы смогли прочитать произвольные файлы на сервере.
Спасибо за прочтение этого поста. Следите за новыми публикациями в блоге и не стесняйтесь следить за обновлениями в социальных сетях. Также обратите внимание, что на моем личном GitHub будут публиковаться сообщения на испанском языке. До свидания!
Гитхаб: J-W1C3
Твиттер: Josewice7
Телеграмма: W1C3Posts
Присоединяйтесь к моему Telegram-каналу, чтобы быть в курсе, когда публикуются новые сообщения.