TGViewer
Standoff Bug Bounty Tips Standoff Bug Bounty Tips @standoff_bb_tips · 1.66K subscribers
Post #258 487
Что скрывается в имени HTML-тега? Может быть, JavaScript?

Gareth Heyes из PortSwigger показал: имя HTML-тега само по себе может стать JS-пэйлоадом. Браузер приводит имя тега к верхнему регистру, но свойство localName отдает его обратно в нижнем — и дальше из этого собирается цепочка.

Схема простая: tabindex + autofocus триггерят onfocus, в хендлер пишется строка из localName, а new onfocus исполняет её как конструктор.
<alert(1) onfocus="attributes[0].value=localName,new onfocus" autofocus tabindex=1>
<JAVASCRIPT:ALERT(1) onfocus=location=localName autofocus tabindex=1>


Что это даёт для байпаса WAF 👇
▪️ JS можно писать капсом — localName всё равно вернёт нижний регистр
▪️ Символы-разделители строк и абзацев браузер в имени тега не трогает, а JS считает их переводом строки
▪️ Если фильтр режет attributes[0].value — есть .textContent, .nodeValue, getAttributeNode(...).value
▪️ Через part/classList имя тега уходит прямо в eval

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