1
我有一個處理XML文檔以生成HTML的XSLT樣式表。防止XSLT生成的內容中的XSS(和其他攻擊)
我意識到可以通過用戶可以提供他們喜歡的任何XML的方式操作站點 - 不幸的是這是不可避免的,所以我想通過以下方式保護自己免受XSS(和其他攻擊)確保我的XSLT樣式表能夠安全地處理任何文檔。
我需要注意什麼來實現這個目標?
UPDATE:
我知道,在默認情況下XSLT逃逸輸出(可通過屬性disable-output-escaping
被禁用) - 這是足以防止有人能夠注入惡意HTML元素和屬性?
您能否解釋爲什麼您允許用戶提供自定義xml文檔?你能否使用模式強制驗證以避免任何問題? – sisve 2011-01-30 09:13:59
@Simon XML文檔是一個SQL查詢執行計劃 - 它們不允許提供它,但它的構造查詢(它適用於[數據資源管理器](http://data.stackexchange.com/))的查詢是非常簡單的。包含一個被視爲執行計劃的xml文檔 - 我無法想到防止發生這種情況的方法。已經有一個[schema](http://schemas.microsoft.com/sqlserver/2004/07/showplan/),但我不確定如何驗證這個模式將有助於防止攻擊? – Justin 2011-01-30 09:32:15