zoukankan      html  css  js  c++  java
  • 前端安全

          前端安全一直以来都是被容易忽略的知识点,因为放在前端的东西都能被用户拿到,还谈什么安全而言。也正是因为如此,我们才更应该为用户的安全考虑我认为,防止黑客窃取用户信息,从而损害用户利益。
          个人认为,最好的前端安全就是同源策略,浏览器已经帮我们做好了。我们要做的就是防止黑客钻空子。下面来具体分析几种前端攻击:

    XSS(Cross Site Scripting)跨站脚本攻击

    原理

    HTML是一种超文本标记语言,通过将一些字符特殊地对待来区别文本和标记,例如,小于符号(<)被看作是HTML标签的开始,之间的字符是页面的标题等等。当动态页面中插入的内容含有这些特殊字符(如<)时,用户浏览器会将其误认为是插入了HTML标签,当这些HTML标签引入了一段JavaScript脚本时,这些脚本程序就将会在用户浏览器中执行。所以,当这些特殊字符不能被动态页面检查或检查出现失误时,就将会产生XSS漏洞。 XSS攻击

    攻击类型

    • 反射性XSS(非持久型XSS)
            如果恶意用户输入一段javascript代码作为查询参数name的值:http://example.com/hello?name=<script>alert('你被攻击了!');</script>,后端响应处理代码:res.send = '<h1>Hello,'+query.name+'!</h1>' 。此时,客户端接收的响应为<h1>Hello, <script>alert('你被攻击了!');</script>!</h1>。因为把