Если вы хотите, чтобы весь HTML-код отображался в виде текста, используйте innerText
или textContent
, поскольку они не будут пытаться отобразить HTML-код.
//using template literals ` (backtick) to help not need escaping quotes
document.body.innerText = `<img onerror="window.document.body.innerHTML ='<h1>XSS</h1>';" src=''>`
В противном случае, если вы хотите, чтобы деталь <h1>
отображалась в виде текста, используйте тот же innerText
/ textContent
, но для встроенного кода js
<img onerror="window.document.body.innerText ='<h1>XSS</h1>';" src=''>