尝试在网站上以形式注入JS?- 警报(“TK00000025”)


Attempted JS injection in form on website? - alert('TK00000025')

我刚刚在 2 分钟内收到了 20 份提交的内容,表格托管在我的网站上。填写的唯一字段显示alert('TK00000025'),每次提交都会将此数字增加到 alert('TK00000036') .该字段在表单之间切换,因此一个表单在名称部分中具有此内容,而下一个表单将其放在电子邮件部分中。在此之后,有四个空白条目。

这是什么,为什么会发生?我应该做些什么来防止它吗?

一般来说:

1)切勿插入不受信任的数据,除非在允许的位置

2) 在将不受信任的数据插入 HTML 元素内容之前进行 HTML 转义

3) 在将不受信任的数据插入 HTML 公共属性之前进行属性转义

4) 在将不受信任的数据插入 JavaScript 数据值之前进行 JavaScript 转义

5) HTML 转义 HTML 上下文中的 JSON 值并使用 JSON.parse 读取数据

  • JSON 实体编码
  • HTML 实体编码

6) CSS 转义并在将不受信任的数据插入 HTML 样式属性值之前进行严格验证

7) 在将不受信任的数据插入 HTML URL 参数值之前进行 URL 转义

8) 使用专为作业设计的库清理 HTML 标记

9) 防止基于 DOM 的 XSS

如果你休耕,我相信你几乎是安全的。

参考:预防备忘单