0
對於此代碼:如何使用esapi驗證hashmap?
HashMap temphashMap = session.getAttribute("abc");
我如何可以驗證的HashMap反對使用ESAPI的跨站點腳本漏洞?
對於此代碼:如何使用esapi驗證hashmap?
HashMap temphashMap = session.getAttribute("abc");
我如何可以驗證的HashMap反對使用ESAPI的跨站點腳本漏洞?
你不能這樣做。爲了進行驗證,您必須事先知道該HashMap
中每個項目的特殊規則和數據流。
如何判斷應用程序中的某個表單域是否爲一個富文本字段,就像我用來輸入此答案的域?如果一些HTML標籤是合法的呢?
你無法知道這一點。
這就是爲什麼確保數據正確編碼爲以確保正確的上下文的100倍。
爲此,您將使用ESAPI.encoder()
類中的方法。
最接近你要求的是建立一個servlet過濾器,然後在每個請求/響應對上,然後使用像AntiSamy這樣的XSS過濾器來允許某些標記進入和禁止其他標記。但是,對於HTML屬性,HTML標記文本或<textarea>
塊中使用的值,規則是不同的。您必須寫出相當多的邏輯,才能避免將所有數據轉交給其他解釋器之前避免的所有數據。
目前還不清楚你在問什麼。 「驗證」是什麼意思? –
我需要根據跨站腳本漏洞驗證Hashmap/Collection,這是一種安全漏洞。 – ManthanB