Gustavo Fring
25.07.2023, 16:28
https://forum.antichat.xyz/attachments/29106315/img_ba03288490.png
Приветствую всех, дорогие обитатели ресурсов Codeby! Представляю вашему вниманию очередной авторский врайтап к заданию с площадки Antichat. Сегодня мы попробуем выбраться из Лабиринта / Администрирование.
Подключаемся через netcat по айпишнику с портом, которые указаны в описании таска
https://forum.antichat.xyz/attachments/29106315/1690285690014.png
Посмотрим справочник по командам через /help
https://forum.antichat.xyz/attachments/29106315/1690285765072.png
Окей, вектор у нас однозначно только один - команда /hello, которая выводит приветствие с указанным именем. Тестируем
https://forum.antichat.xyz/attachments/29106315/1690288292296.png
Догадываемся, что должна произойти какая-то инъекция команды. Допустим, что на стороне сервера скрипт выполняет printчерез evalследующим образом
https://forum.antichat.xyz/attachments/29106315/1690286168292.png
Тогда наш пейлоад для удаленного выполнения команды был бы следующим
'),print('pwd')#
. Думаю понятно, что делает наш пейлоад.
https://forum.antichat.xyz/attachments/29106315/1690288320531.png
У нас этот пейлоад работает. Но, мы точно не знаем, как именно принимает аргумент скрипт на сервере. Попробуем свой пейлоад на реальной цели
https://forum.antichat.xyz/attachments/29106315/1690288410348.png
Не совсем то, что мы ожидали. Вероятно, хоть сервер обрабатывает запрос через python, но передает он другому скрипту, который написан на абсолютно любом интерпретируемом языке программирования.
Допустим, скрипт передает введенное имя к другому скрипту на PHP. И имя он будет выводить скорее всего следующим образом
eval("echo '\n$message\n';");
В таком случае, у нас пейлоад будет чуть отличаться от старого.
';system('pwd');'
проверяем
https://forum.antichat.xyz/attachments/29106315/1690287374989.png
Отлично! Мы успешно проэксплуатировали уязвимость CMD Injection. Смотрим список файлов
https://forum.antichat.xyz/attachments/29106315/1690288368843.png
Хмм. Вероятно, некоторые команды, как
ls, cat, dir, nc и тд
фильтруются. Попробуем обойти, используя трюк с кавычками
https://forum.antichat.xyz/attachments/29106315/1690288435753.png
Отлично! Таким же подходом читаем флаг
https://forum.antichat.xyz/attachments/29106315/1690287767634.png
Бинго!
Приятного хакинга и до скорых встреч : )
Приветствую всех, дорогие обитатели ресурсов Codeby! Представляю вашему вниманию очередной авторский врайтап к заданию с площадки Antichat. Сегодня мы попробуем выбраться из Лабиринта / Администрирование.
Подключаемся через netcat по айпишнику с портом, которые указаны в описании таска
https://forum.antichat.xyz/attachments/29106315/1690285690014.png
Посмотрим справочник по командам через /help
https://forum.antichat.xyz/attachments/29106315/1690285765072.png
Окей, вектор у нас однозначно только один - команда /hello, которая выводит приветствие с указанным именем. Тестируем
https://forum.antichat.xyz/attachments/29106315/1690288292296.png
Догадываемся, что должна произойти какая-то инъекция команды. Допустим, что на стороне сервера скрипт выполняет printчерез evalследующим образом
https://forum.antichat.xyz/attachments/29106315/1690286168292.png
Тогда наш пейлоад для удаленного выполнения команды был бы следующим
'),print('pwd')#
. Думаю понятно, что делает наш пейлоад.
https://forum.antichat.xyz/attachments/29106315/1690288320531.png
У нас этот пейлоад работает. Но, мы точно не знаем, как именно принимает аргумент скрипт на сервере. Попробуем свой пейлоад на реальной цели
https://forum.antichat.xyz/attachments/29106315/1690288410348.png
Не совсем то, что мы ожидали. Вероятно, хоть сервер обрабатывает запрос через python, но передает он другому скрипту, который написан на абсолютно любом интерпретируемом языке программирования.
Допустим, скрипт передает введенное имя к другому скрипту на PHP. И имя он будет выводить скорее всего следующим образом
eval("echo '\n$message\n';");
В таком случае, у нас пейлоад будет чуть отличаться от старого.
';system('pwd');'
проверяем
https://forum.antichat.xyz/attachments/29106315/1690287374989.png
Отлично! Мы успешно проэксплуатировали уязвимость CMD Injection. Смотрим список файлов
https://forum.antichat.xyz/attachments/29106315/1690288368843.png
Хмм. Вероятно, некоторые команды, как
ls, cat, dir, nc и тд
фильтруются. Попробуем обойти, используя трюк с кавычками
https://forum.antichat.xyz/attachments/29106315/1690288435753.png
Отлично! Таким же подходом читаем флаг
https://forum.antichat.xyz/attachments/29106315/1690287767634.png
Бинго!
Приятного хакинга и до скорых встреч : )