写点什么

注入攻击

作者:沃德
  • 2022 年 7 月 09 日
  • 本文字数:565 字

    阅读完需:约 2 分钟

js 注入经常发生在用户信息重新显示在页面上,如反馈页面填写完反馈表单重新填充。


利用你的 js 注入漏洞,不是注入的这么一行简单的代码,而是要执行一个跨站脚本,发送一个请求,就可以将你网站甚至数据表里的数据(包括一些用户信息)发送到远程服务器上了,例如,黑客可以使用 JavaScript 注入攻击窃取来自其他用户浏览器的 Cookies 值。如果将敏感信息(如密码、信用卡帐号或社会保险号码)保存在浏览器 Cookies 中,那么黑客可以使用 JavaScript 注入攻击窃取这些信息。或者,如果用户将敏感信息输入到页面的表单字段中,而页面受到 JavaScript 攻击的危害,那么黑客可以使用注入的 JavaScript 获取表单数据并将其发送到另一个网站。


防止方案 1,阻止 JavaScript 注入攻击的一种简单方法是重新在视图中显示数据时,用 HTML 编码任何网站用户输入的数据 如:<%=Html.Encode(feedback.Message)%> 使用 HTML 编码一个字符串的含意是什么呢?使用 HTML 编码字符串时,危险字符如 < 和 > 被替换为 HTML 实体,如 < 和 >。所以,当使用 HTML 编码字符串 <script>alert("Boo!")</script> 时,它将转换为 <script>alert("Attack!")</script>。浏览器在解析编码的字符串时不再执行 JavaScript 脚本。而是显示无害的页面。


2,除了在视图中显示数据时使用 HTML 编码数据,还可以在将数据提交到数据库之前使用 HTML 编码数据。

用户头像

沃德

关注

我就是个零 2018.06.14 加入

程序员而已

评论

发布
暂无评论
注入攻击_程序员_沃德_InfoQ写作社区