【问题标题】:Safety considerations when setting form field values via Javascript?通过 Javascript 设置表单字段值时的安全注意事项?
【发布时间】:2015-11-01 00:36:30
【问题描述】:

我想知道直接通过 Javascript 设置表单字段值时是否存在安全问题。我很确定在任何情况下这样做都是安全的,但我应该绝对确定而不是十分确定。所以,我在征求你的意见。

我的意思:

假设我有一个 HTML 表单,其中包含一个 id 为“txt_Field”的文本输入字段,并且我正在执行以下操作:

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

即我将表单字段的值设置为一个字符串,该字符串保存在一个变量中,而不以任何方式转义或过滤该字符串。当然,该字符串实际上会包含用户生成的输入,其中包含各种邪恶的东西。

不过,我认为这样做是安全的。有人知道证明相反的例子吗?

请注意,问题不在于当表单数据发送到服务器时,未过滤的表单字段值是否会对后端造成损害。

我只是想知道是否有人能想到 myvalue 中的任何内容,当以这种方式设置表单字段值时,可能会诱使(现代)浏览器做出奇怪的行为,或者我是否通常误解了一些非常重要的东西。

非常感谢!

【问题讨论】:

    标签: javascript html forms


    【解决方案1】:

    我认为这是安全的,因为要运行您的代码 - 您应该使用 eval() 方法。当然,它绝对安全!

    【讨论】:

      猜你喜欢
      • 2017-01-14
      • 1970-01-01
      • 2016-12-26
      • 1970-01-01
      • 1970-01-01
      • 2011-07-01
      • 2014-08-19
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多