時據我已經注意到反對XSS保護TinyMCE的做它的元字符自己的轉義,並使用用htmlspecialchars()之後只會擾亂輸出和顯示< P>標籤等,而不是在瀏覽器中渲染它們。關閉Javascript並輸入惡意代碼是一件容易的事情,當打開Javascript的另一用戶訪問內容時將會呈現惡意代碼。將TinyMCE
所以我需要使用適當的服務器端驗證,但確切地說 - 如何 - 我能做到這一點考慮到成千上萬的XSS技術?是否有任何適用於TinyMCE的有效方式,例如「使用htmlspecialchars()和TinyMCE?」
到目前爲止,我已經做了一個白名單允許HTML標籤,更換任何javascript:
和類似:void
內容中,試圖防止內嵌的JavaScript如onClick="javascript:void(alert("XSS"));"
,但我覺得這是不夠的。
關於這個問題的任何建議將非常感激,但請記住,某些內容需要正確顯示在輸出上,這就是爲什麼我首先使用TinyMCE。我只需要受到XSS的保護。
另外,雖然在這個問題上;我該如何保護自己免受諸如style="background-image: url(XSS here);"
之類的CSS XSS?