SHADOW:Group
Выбор дополнительных победителей (в количестве 2):
🏆 Победители:
1. Alexey (@AlexeyInfosec)
2. Evktolly (@evktolly)
✔️ Проверить результаты
1. Alexey (@AlexeyInfosec)
2. Evktolly (@evktolly)
Please open Telegram to view this post
VIEW IN TELEGRAM
Forwarded from вольтаж
file://localhost/etc/passwd что вернёт?
В RFC 8089, верный формат протокола описан как
file://<host>/<path>, в то время как все шпоры на LFR при SSRF говорят лишь о file:///<path>Причём, в
<host> возможно вписать домен. Система резолвнет его, и если тот указывает на 127.0.0.1, то вернётся содержимое файла. В противном случае получишь лишь отстук в DNS. питон пок
from urllib.request import urlopen
content = urlopen(
"file://yoogle.com/etc/passwd", timeout=2,
).read().decode('utf-8')
print(content)
Представил сколько возможностей для обхода фильтров? И это не последний твой приступ FOMO за сегодня.
В статье The Minefield Between Syntaxes от @yeswehack, автор вскрывает проблемы разных синтаксисов и как парсеры выживают с ними.
Представим, ты нашёл SSTI, но WAF блокирует символ$
Что делать?
Неприятно, но не критично, ведь в Python / Perl возможно представить символ через
\N{CHARACTER NAME}. Пример обхода фильтра
\N{dollar sign}{7*7} == ${7*7} == 49Уже на стену лезешь? Погоди, я с тобой ещё не закончил.
Давай дальше по загрузке файлов. Видел же в
Content-Disposition есть параметр filename?В RFC 6266 описан базовый подход с именем файла, но RFC 8187 вышибает дверь с... чего.. какие юникод байты
# RFC 6266
filename="image.png"
# RFC 8187
filename*=UTF8''image%0a.png
RFC 8187 вводит новые правила для
filename параметра, включая поддержку всего Unicode + способности кодировать произвольные байты через % То есть, ты можешь закодировать перенос строки (
%0a == \n) и всячески ломать как парсинг имени файла, так и куда тот запишется. . . .
FOMO карусель закрыта.
Как восстановишь силы, пробегись по статье автора ради:
⚀ разбор CVE из-за проблем синтаксиса [^]
⚀ кейс бб, из cache poisoning в stored xss через пролом валидации parse_url в PHP [^]
⚀ кейс бб, из слепого чтения файлов через SSRF в arbitrary file read [^]
Затем разнеси CTF по ресерчу
1. обход фильтров SSTI [^]
2. иной подход к протоколу file:// [^]
3. проломparse_urlв PHP [^]
#web #waf_bypass
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
1🔥27👍4
Forwarded from Заметки Слонсера (Slonser)
Осознал что не все подписаны на меня в соц сети Илона Маска, поэтому возможно буду дублировать сюда некоторые посты
На выходных нашел SQLi в PostgreSQL приложении. Обычно я не пишу про такие находки, но этот случай показался достаточно интересным.
Инъекция была path-based (/api/v2/.../INJECTION_POINT/...), и путь не url декодился. Пробелы, слеши, кавычки и скобки приводили к 400 Bad Request.
Придумал обход используя dollar-quoting синтаксис PostgreSQL:
Как PostgreSQL это парсит:
1. $$0$$ - dollar-quoted строка, автоматически каститься в integer
2. OR - логический оператор
3. -0-$$0$$ - арифметическое выражение
4. NOTNULL - проверка на null (вернет true)
Для этого payload нужны всего два не alphanumeric символа: $ и - (минус можно заменить на +).
Может быть полезно для обхода WAF (например, Cloudflare это не блокирует) или при похожих ограничениях на символы.
На выходных нашел SQLi в PostgreSQL приложении. Обычно я не пишу про такие находки, но этот случай показался достаточно интересным.
Инъекция была path-based (/api/v2/.../INJECTION_POINT/...), и путь не url декодился. Пробелы, слеши, кавычки и скобки приводили к 400 Bad Request.
Придумал обход используя dollar-quoting синтаксис PostgreSQL:
$$0$$OR-0-$$0$$NOTNULL
Как PostgreSQL это парсит:
1. $$0$$ - dollar-quoted строка, автоматически каститься в integer
2. OR - логический оператор
3. -0-$$0$$ - арифметическое выражение
4. NOTNULL - проверка на null (вернет true)
Для этого payload нужны всего два не alphanumeric символа: $ и - (минус можно заменить на +).
Может быть полезно для обхода WAF (например, Cloudflare это не блокирует) или при похожих ограничениях на символы.
🔥23
Проснулся, а тут RCE в React Server Functions с одного запроса уже выполняется. Жаркие споры вчера не прошли напрасно.
https://gist.github.com/maple3142/48bc9393f45e068cf8c90ab865c0f5f3
https://github.com/msanft/CVE-2025-55182
#web #rce #react
https://gist.github.com/maple3142/48bc9393f45e068cf8c90ab865c0f5f3
https://github.com/msanft/CVE-2025-55182
#web #rce #react
5🤯14🔥12👍3
Недавно занял 2 место в приватном ивенте от ТБанка. Ребята порадовали интересным скоупом и достойными выплатами за что им большой респект 😎
Please open Telegram to view this post
VIEW IN TELEGRAM
33🔥59👍7😁2
Вот с таким интересным принтом получил футболку от ребят из BI.ZONE Bug Bounty. Говорят, если присмотреться, то можно увидеть на нем множество знакомых лиц из багбаунти сообщества. Я узнал примерно половину)
5🔥20👍3
Друзья, поздравляю вас с наступающим Новым годом 🎄
Пусть он принесёт больше спокойствия, уверенности в себе и своих идеях, новых положительных эмоций и ощущения, что вы идёте в правильном направлении.
Желаю интересных и результативных находок, роста там, где вам действительно важно, и достижения новых высот.
Постарайтесь отдохнуть в эти праздники и набраться сил. Пусть в новом году всё станет хотя бы немного лучше, чем в прошлом.
Спасибо, что вы здесь. Увидимся в 2026 ❤️
Пусть он принесёт больше спокойствия, уверенности в себе и своих идеях, новых положительных эмоций и ощущения, что вы идёте в правильном направлении.
Желаю интересных и результативных находок, роста там, где вам действительно важно, и достижения новых высот.
Постарайтесь отдохнуть в эти праздники и набраться сил. Пусть в новом году всё станет хотя бы немного лучше, чем в прошлом.
Спасибо, что вы здесь. Увидимся в 2026 ❤️
Please open Telegram to view this post
VIEW IN TELEGRAM
42🎄24☃9