盒子
文章目录
  1. 安全问题
    1. XSS (Cross Site Script)跨站脚本攻击
    2. HTTP 劫持
    3. DNS 劫持
    4. CSRF(跨站请求伪造)

前端安全

安全问题

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

(Cascading Style Sheets, CSS)

  1. 原理: 通过篡改网页,插入恶意脚本。从用户浏览网页时开始,控制用户浏览器。XSS 成功的条件:向页面注入恶意脚本;这些恶意脚本能够执行。

  2. 类型:

    1. 反射型,诱导用户去访问一个包含恶意代码的UI了,这段恶意代码会直接在受害者主机上的浏览器执行。一次性的。前端发送恶意脚本,后端不做任何处理返回前端

      • 用户输入内容不包含特殊字符
      • 特殊字符转意 (小明转义URL的case,特殊字符转化为HTML实体)
      • a 标签根据实际情况: 禁止掉:”javascript:” 、链接、非法 scheme 等
    2. 存储型XSS:把攻击存放在服务端。发表了文章之类的,加入了代码。如果过滤不严格,就会存在服务器端。

    3. DOM-base型:DOM XSS 是由于浏览器解析机制导致的漏洞,服务器不参与,而存储型与反射型都需要服务器响应参与,反射型的一种。避免一些重定向的操作。

HTTP 劫持

运营商HTTP劫持,当我们使用HTTP请求请求一个网站页面的时候,网络运营商会在正常的数据流中插入精心设计的网络数据报文,让客户端(通常是浏览器)展示“错误”的数据,通常是一些弹窗,宣传性广告或者直接显示某网站的内容,大家应该都有遇到过。

DNS 劫持

重定向

CSRF(跨站请求伪造)

维基百科举的例子:银行转账 image表现
refer头部
增加token校验