TGViewer
Standoff Bug Bounty Tips Standoff Bug Bounty Tips @standoff_bb_tips · 1.66K subscribers
Post #171 1.33K
Как слияние HTML-атрибутов превращается в рабочий XSS-вектор ⚡️

У страницы может быть только один <html> и один <body>. Если определить большее количество, их атрибуты будут объединены с атрибутами первого элемента 🎨

Поскольку некоторые санитайзеры могут не учитывать механизм объединения атрибутов, можно использовать эту фичу для разделения XSS-вектора по нескольким тегам:

<body style=animation:x id='First Body Tag'>
<body onanimationend=alert(this.id)>
<style>@keyframes x{


После парсинга браузер сформирует единый <body>, в результате чего:

1⃣ style=animation:x активирует фиктивную CSS-анимацию.

2⃣ Когда анимация завершается, событие onanimationend вызывает JavaScript.

3⃣ Санитайзер может пропустить такой пэйлоад, так как опасные атрибуты находятся в разных местах и выглядят безвредно по отдельности.

➡️ При написании поста вдохновились этим исследованием
  • 🔥 12
More from @standoff_bb_tips
  1. Oct 11, 2026Что скрывается в имени HTML-тега? Может быть, JavaScript? Gareth Heyes из PortSwigger пока…
  2. Oct 4, 2026Хочешь прокачать своего багбаунти-агента ❓ Обрати внимание на Model-Context-Protocol (MCP)…
  3. Oct 3, 2026Эксплуатация багов, связанных с ошибками в бизнес-логике 🤔 Логические баги — это когда ко…
  4. Sep 7, 2026Post #255
  5. Sep 5, 2026Мы накидали 6 разных вариантов атак для простого GET-запроса на редактирование профиля ⤵️…
  6. Aug 15, 2026Stored XSS через картинку: проверь Content-Type override 😵‍💫 Иногда загрузка изображений…
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 →