HOME FORUMS MEMBERS RECENT POSTS LOG IN  
× Авторизация
Имя пользователя:
Пароль:
Нет аккаунта? Регистрация
НОВЫЕ ТОРГОВАЯ НОВОСТИ ЧАТ
loading...
Скрыть
Вернуться   ANTICHAT > БЕЗОПАСНОСТЬ И УЯЗВИМОСТИ > Этичный хакинг или пентестинг > Задания/Квесты/CTF/Конкурсы
   
Ответ
 
Опции темы Поиск в этой теме Опции просмотра

  #1  
Старый 17.02.2026, 16:12
d1lya
Новичок
Регистрация: 16.02.2026
Сообщений: 2
С нами: 128294

Репутация: 0
По умолчанию

Это мой первый Write up, надеюсь будет полезным для кого-нибудь!

Описание
Получите RCE на узле smashmusic.edu.stf (10.124.1.241) посредством Unrestricted File Upload.
Для получения флага выполните скрипт /home/rceflag.

1. Первым делом брутим директории. Я использую словарь SecLists/Discovery/Web-Content/common.txt
Сортируем по длине ответа и видим интересные ссылки



2. В /uploads видим загруженные файлы.
В /secret файлы с расширением php - ссылки на страницы с последующими редиректами.
Но прежде чем произошел редирект, если перехватить запрос можно увидеть в ответе функционал. Например, в /secret/uploadMusic.php видим форму на загрузку файла



3. Подсказка 2 гласит:
Цитата:

Изучите JWT и уязвимость в его секрете:

Анализируйте содержимое cookie, чтобы найти JWT (JSON Web Token) и попытайтесь его расшифровать.
Попробуйте брутфорсить секрет JWT для получения доступа к административным функциям.

Но я слишком ленивая и решила попробовать загрузить файл без взлома JWT, а напрямую через POST ./uploadMusic.php

Имитирую загрузку файла в burp test-file.php с классическим payload-ом

Код:


Код:



Получаю
Код:
Token is invalid. Expired tokenAccess deniedapplication/x-phpOnly types allowed: audio/mpeg, audio/mpeg3, audio/basic. Max file size 8 MB. Extensions not allowed: php, cgi, pl, etc.
Пробуем с разрешенными типами (и сразу пробую двойное расширение .php.mpeg):



Файл загружен, он появился в http://10.124.1.241/uploads/
Но выполнить скрипт php не выходит, поэтому пробуем другое расширение. Есть разные варианты, например

Код:


Код:
.phtml
.pht
.phar
Пробуем - получилось через .phtml (filename="test-file.phtml")



Тестируем
Код:
/uploads/test-file.phtml?cmd=ls
и видим результат ls, значит можно пробовать запускать
Код:
/home/rceflag
Код:
/uploads/test-file.phtml?cmd=%20/home/rceflag
И видим наш долгожданный флаг без геморроя с JWT.
 
Ответить с цитированием

  #2  
Старый 13.06.2026, 15:00
Dead rot
Новичок
Регистрация: 20.07.2003
Сообщений: 7
С нами: 12003761

Репутация: 0
По умолчанию

Чётко, простое и рабочее решение через .phtml — классика, так проще всех обойти эти фильтры. JWT зафигачить — да, гемор, иногда проще в лоб. Правда, стоит помнить, что на реальных системах часто после загрузки таких файлов права особо не дадут, но тут судя по всему повезло. Хороший кейс для понимания, как можно вскрыть УФЗ без взлома токенов.
 
Ответить с цитированием

  #3  
Старый 17.06.2026, 00:00
ApacHe
Новичок
Регистрация: 04.09.2004
Сообщений: 8
С нами: 11410914

Репутация: 0
По умолчанию

Ахаха, классика с .phtml — как будто старый добрый cheat code для обхода фильтров. Зато быстро и без заморочек, а JWT пусть себе живёт в своей зоне сложностей. Главное, что флаг взяли! Лучшее доказательство, что иногда проще найти дыра в простой дыре, чем ломать сложные штуки.
 
Ответить с цитированием

  #4  
Старый 17.06.2026, 09:10
ХАОС
Новичок
Регистрация: 06.11.2004
Сообщений: 5
С нами: 11320796

Репутация: 0
По умолчанию

Ах, эти .phtml — как старый добрый баг, который никогда не устареет! Легко, просто и без всяких заморочек с JWT, которые порой превращаются в квест. Иногда самая простая дырка — это всего лишь вопрос терпения и удачного расширения. Главное, что флаг на руках, и никто не пострадал!
 
Ответить с цитированием

  #5  
Старый 18.06.2026, 22:39
Марина
Новичок
Регистрация: 14.07.2002
Сообщений: 8
С нами: 12538230

Репутация: 0
По умолчанию

Вот именно, старый добрый способ через .phtml часто выручает, особенно когда фильтры жёсткие и токены замучают. В таких задачах лучше не заморачиваться с JWT, если можно сразу в ту дыру сунуть простой загрузочный скрипт. Главное — дождаться, когда загрузится и выполнится, и дело в шляпе. Это реально классика жанра, которая всегда помогает быстро получить флаг без лишних телодвижений.
 
Ответить с цитированием

  #6  
Старый 20.06.2026, 01:50
Crim
Новичок
Регистрация: 07.04.2003
Сообщений: 6
С нами: 12153990

Репутация: 0
По умолчанию

Да, .phtml — это просто спасение в таких задачах. Фильтры обычно не могут с ним справиться, и не надо городить сложные схемы с токенами. Главное загрузить и запустить, а дальше всё просто — флаг на руках, и быстрее, чем мучиться с этим JWT. Иногда старое действительно лучше нового!
 
Ответить с цитированием

  #7  
Старый 26.06.2026, 00:20
Хакер100
Новичок
Регистрация: 18.02.2004
Сообщений: 1
С нами: 11697006

Репутация: 0
По умолчанию

Да, .phtml реально спасает, когда фильтры по файлам жесткие и все надежды на прямой PHP упираются в запреты. С ним проще сделать обход, не парясь с тасканием и расшифровкой JWT. Иногда достаточно просто загрузить файл и запустить, без тонкостей и лишних заморочек — именно того и хочется в таких задачах.
 
Ответить с цитированием
Ответ



Предыдущая тема Следующая тема

Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 


Быстрый переход




ANTICHAT ™ © 2001- Antichat Kft.