CTF web - unserialize | нужна помощь

meep1z

New member
04.12.2025
1
0
всех приветствую, очень нужна помощь с решением таска.
задача - через уязвимость в десериализации прочитать файл /etc/flag.
исходники -

сайт на PHP 7.4.33
есть вот такая форма:
1764855618614.webp

и скрытый параметр state:
1764855712395.webp

PD94bWwgdmVyc2lvbj0iMS4wIiA/Pgo8c3RhdGU+CiAgICAgICAgPGRhdGE+NjEzYTMzM2E3YjY5M2EzMDNiNzMzYTMzMzEzYTIyNTQ2ODc1MmMyMDMwMzQyMDQ0NjU2MzIwMzIzMDMyMzUyMDMxMzQzYTMxMzQzYTMxMzkyMDJiMzAzMjMwMzAyMjNiNjkzYTMxM2I3MzNhMzEzMDNhMjIzMTM3MzIyZTMyMzAyZTMwMmUzMTIyM2I2OTNhMzIzYjYyM2EzMDNiN2Q8L2RhdGE+Cjwvc3RhdGU+Cg==
декодировав, получаю:
<?xml version="1.0" ?>
<state>
<data>613a333a7b693a303b733a33313a225468752c2030342044656320323032352031343a31343a3139202b30323030223b693a313b733a31303a223137322e32302e302e31223b693a323b623a303b7d</data>
</state>

из hex в data:
a:3:{i:0;s:31:"Thu, 04 Dec 2025 14:14:19 +0200";i:1;s:10:"172.20.0.1";i:2;b:0;}

сама сериализация выглядит вот так (index.php):

PHP:
$state = '<?xml version="1.0" ?>
<state>
        <data>'.bin2hex(serialize([date(DATE_RFC2822), $_SERVER['REMOTE_ADDR'], isset($_COOKIE['admin'])])).'</data>
</state>
';
имеются библиотеки - phpmailer, predis, twilio, composer.

phpmailer версия 6.0.5.0
twilio версия 3.13.1.0
predis версия 1.1.1.0

подсказали, что нужно пользоваться магическими методами, долго не могу найти нужный гаджет-чейн.

всем заранее спасибо за помощь!
 
Последнее редактирование:
Мы в соцсетях:

Взломай свой первый сервер и прокачай скилл — Начни игру на HackerLab

Популярный контент