TGViewer
🕷 BugBountyRu 🕷 BugBountyRu @bugbountyru · 3.01K subscribers
Post #462 879
🔥 Байпас targetOrigin в postMessage через нормализацию IP

Второй аргумент postMessage определяет, какому origin разрешено получить данные. Браузер прогоняет это значение через свой URL-парсер перед любым сравнением, и парсер переписывает некоторые хосты.

Хост, состоящий из простого числа, интерпретируется как IPv4 и записывается обратно в точечной нотации — так 2130706433 превращается в 127.0.0.1. Шестнадцатеричные, восьмеричные и короткие формы вроде 127.1 ведут себя аналогично.

➡️ Уязвимый паттерн выглядит так: приложение принимает origin от пользователя и проверяет его регуляркой вроде https?://[^.]+[.]target[.]com, рассчитывая пропустить только поддомены target.com — а затем передаёт проверенное значение в postMessage.

Проблема в том, что [^.]+ должен матчить одну метку поддомена, но проверяет он сырую строку целиком и не запрещает слэш — а слэш не точка. Это значит, что строка http://2130706433/.target.com тоже пройдёт проверку: [^.]+ жадно захватывает 2130706433/, а .target.com в конце удовлетворяет оставшейся части регулярки.

В результате в код попадает такой вызов:
window.postMessage('message_here', 'http://2130706433/.target.com')

Однако это не является поддоменом чего-либо. После парсинга хост становится 2130706433, который нормализуется в 127.0.0.1, а /.target.com — это просто путь, который проверки origin игнорируют. Данные уходят на http://127.0.0.1, который контролирует атакующий 🤤

URL Standard:
🔗 IPv4 parser
🔗 IPv4 serializer

@BugBountyRu 🕷 Буст каналу
  • 🔥 6
More from @bugbountyru
  1. Sep 17, 2026Петербург, снова к вам ⚡️⚡️ Год назад впервые привезли наш митап в северную столицу— говор…
  2. Sep 10, 2026Привет, охотники! Нам нужно серьёзно поговорить. ИИ радикально меняет правила игры как в р…
  3. Aug 15, 2026💡 Один принцип, который помогает находить больше багов Огромное семейство багов сводится…
  4. Aug 10, 2026Как эффективно отслеживать, перехватывать и отлаживать JavaScript sinks в режиме реального…
  5. Aug 2, 2026⌛️ SSRF через асинхронные задачи и фоновые воркеры Одна из самых недооценённых поверхносте…
  6. Jul 27, 2026🧰 Арсенал скиллов для автоматизации разведки и поиска уязвимостей Recon-skills — проверен…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →