慕课网-前端跳槽面试必备技巧

前端面试准备--8.安全类

2017-09-27  本文已影响139人  飞菲fly

CSRF/XSS
一、CSRF

1.基本概念和缩写:

  • 跨站请求伪造;Cross-Site Request Forgery 缩写CSRF

2.攻击原理

CSRF攻击原理.png
    1.用户是网站A的注册用户,通过身份验证登录网站A,登录之后网站A核查身份是不是正确的,
      如果正确就下发cookie,这个cookie保存到用户浏览器当中,这就是完成了一次身份认证的过程。
    2.用户又访问了一个网站B,网站B会给用户下发用户页面的时候,会存在引诱的一个点击,这个点击
      往往是一个链接,就是指向网站A的一个API接口,接口是GET类型,比如:www.xxx.com/hack,
      指向存在漏洞的接口,当用户经不住引诱点击了这个东西,这个点击就访问了A网站,访问A网站
      这个链接的时候,浏览器会自动上传cookie,上传之后网站A觉得是A这个Cookie拿过来之后对身
      份重新认证,发现是合法用户,就执行了这个接口的动作。

3.防御措施

 1.加Token验证
    访问接口的时候,浏览器自动上传cookie,但是没有手动上传一个Token,这个Token是你注册成功
    以后,或者没有注册,只要你访问了这个网站,服务器会自动的向你本地存储一个Token,在你访问
    各种接口的时候,如果没带Token,,就不能帮你通过验证,如果只是点击了引诱链接,这个链接只会
    自动携带cookie,不会自动携带Token,所以就避免了那个攻击。

2.Referer验证
   Referer指的是页面来源,如果服务器判断页面来的是不是我的这个站点下面的页面,如果是就执行
   你这个动作,如果不是就拦截。

3.隐藏令牌
  和Token有点像,做法:隐藏在http的head头中,不会放在链接上,这样就做的比较隐蔽。本质上没
  有太大区别。只是使用方式有一点差别。

二、XSS

1.基本概念和缩写:

  • 跨域脚本攻击;Cross-Site Scripting 缩写XSS

2.攻击原理(核心宗旨:让你插入的js不可执行)

http://www.immoc.com/learn/812

3.防御措施
http://www.immoc.com/learn/812

4.和CSRF区别:

总结:
1.关于名称要把中文意思说出来
2.原理说清楚
3.防御措施
要言简意赅,说清楚那个点;

上一篇 下一篇

猜你喜欢

热点阅读