2015-08-08 80 views
6

我想知道當直接通過Javascript設置表單域值時是否存在安全問題。我很確定,在任何情況下都可以這樣做,但我應該絕對肯定,而不是十分肯定。所以,我在徵求你的意見。通過Javascript設置表單域值時的安全考慮?

我的意思:

假設我有一個包含ID爲「txt_Field」文本輸入字段的HTML表單,和我做了以下內容:

... 
myvalue = "<script>alert('I am evil');</script>"; 
document.getElementById("txt_Field").value = myvalue; 
... 

即我設定值表單字段中的字符串保存在變量中,不會以任何方式轉義或過濾該字符串。當然,這個字符串實際上會包含用戶生成的輸入和各種邪惡的東西。

不過,我認爲這樣做是安全的。有人知道一個證明相反的例子嗎?

請注意,問題不在於未經過濾的表單字段值在表單數據發送到服務器時是否會在後端造成傷害。

我只想知道是否有人能夠想到myvalue中的任何內容,這可能會欺騙(現代)瀏覽器變爲奇怪的行爲,當表單字段值被設置爲這種方式時,或者如果我通常誤解了一些非常重要的東西。

非常感謝!

回答

-1

我認爲這是安全的,因爲要運行你的代碼 - 你應該使用eval()方法。當然,這絕對安全!