安全类

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拿过来之后对身
      份重新认证,发现是合法用户,就执行了这个接口的动作。
  • 重点:用户在注册网站登录过,没有登录会提示登录;

  • CSRF能够造成攻击的原理:(实现CSRF攻击不可缺失的连个因素)

    • 网站中某一个接口存在漏洞
    • 这个用户在注册网站确实登录过

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区别:

  • XSS不需要做任何的登录认证,核心原理向你页面注入脚本;
    eg:比如评论区:如果评论区注入XSS最好的方式可以在你提交区里面写上script标签,img标签上加事件,总之,它的方法利用你合法的渠道向你页面注入js,这是XSS攻击原理。
  • XSS是向你页面注入js运行,然后js函数体里面做它想做的事情。
  • CSRF利用你本身的漏洞,去帮你自动执行那些接口。
    ------这两种攻击方式是不一样的,CSRF要依赖用户要登录网站。



作者:飞菲fly
链接:https://www.jianshu.com/p/6e5189d1021b
来源:简书
简书著作权归作者所有,任何形式的转载都请联系作者获得授权并注明出处。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值