【基础类】—安全类

一、CSRF

  1. 基础概念和缩写
    CSRF, 通常称为跨站请求伪造,英文名 Cross-site request forgery 缩写 CSRF
  2. 攻击原理
    【基础类】—安全类_第1张图片
    关键点: 利用你本身的漏洞自动去执行接口,同时要依赖于用户要登录网站(比如微博粉丝关注)
    2-1 网站A中某个接口存在漏洞
    2-2 用户已经在网站A上登录过
  3. 防御措施
    3-1 Token验证
    登录时会向用本地存储一个token,访问接口时,没有带上token,不会通过验证
    引诱点击时,浏览器只会自动生成cookie,没有手动上传token,从而避免受到攻击
    3-2 Referer 验证
    Referer 指的是页面来源,如果服务器判断,请求的页面是否属于我的站点下的页面,如果是执行接口,如果不是一律拦截
    3-3 隐藏令牌
    把令牌隐藏到HTTP的header头部中,不放在链接上,和token类似

二、XSS

  1. 基本概念和缩写
    XSS 跨域脚本攻击 (cross-sit scripting)
  2. 攻击原理
    通过合法渠道,向你的页面注入脚本(js),让你的js不可执行,导致页面卡死
  3. 防御措施
    3-1 编码
    ①对用户输入的数据进行 HTML Entity 编码
    3-2 过滤
    ① 移除用户上传的DOM属性,如onerror事件
    ②移除用户上传的Style节点、Script节点、Iframe节点
    3-3 校正
    ①避免 直接对HTML Entity 解码
    ② 使用DOM Parse转换,校正不匹配的DOM标签

你可能感兴趣的:(面试必备技巧,javascript,前端)