zoukankan      html  css  js  c++  java
  • CSRF简介

        

    1.简介 
    CSRF的全名为Cross-site request forgery,它的中文名为 跨站请求伪造

    CSRF是一种夹持用户在已经登陆的web应用程序上执行非本意的操作的攻击方式。相比于XSS,CSRF是利用了系统对页面浏览器的信任,XSS则利用了系统对用户的信任。

    原理:
    攻击者盗用了你的身份,以你的名义发送恶意请求

    CSRF能够做的事情有:
    以你的名义发送邮件、发消息、盗取你的账号,甚至于购买商品,虚拟货币转账。。。。

    造成问题:
    个人隐私泄露以及财产安全


    CSRF的防御:
    cookie hash(所有表单添加伪随机值)、md5、验证码

     

    构成CSRF攻击是有条件的:

      1、客户端必须一个网站并生成cookie凭证存储在浏览器中

      2、该cookie没有清除,客户端又tab一个页面进行访问别的网站

    高级csrf攻击总结
    CSRF攻击是源于Web的隐式身份验证机制!Web的身份验证机制虽然可以保证一个请求是来自于某个用户的浏览器,但却无法保证该请求是用户批准发送的
    中级csrf攻击总结
    网站开发者的错误点在于没有使用$_POST进行接收数据。当$_REQUEST可以接收POST和GET发来的数据,因此漏洞就产生了。

     服务器端防御:

      1、重要数据交互采用POST进行接收,当然是用POST也不是万能的,伪造一个form表单即可破解

      2、使用验证码,只要是涉及到数据交互就先进行验证码验证,这个方法可以完全解决CSRF。但是出于用户体验考虑,网站不能给所有的操作都加上验证码。因此验证码只能作为一种辅助手段,不能作为主要解决方案。

      3、验证HTTP Referer字段,该字段记录了此次HTTP请求的来源地址,最常见的应用是图片防盗链。PHP中可以采用APache URL重写规则进行防御

      4、为每个表单添加令牌token并验证

  • 相关阅读:
    Zara带你快速入门WPF(1)---开篇
    Vue Route Building the UI back-end framework
    TDX指标的理解与改造(价格到达指标线提醒)
    Vue生命周期详解
    Vue轻松入门,一起学起来!
    NodeJs安装步骤与淘宝镜像
    使用npm安装配置vue
    JavaScript面向对象
    vim常用快捷键
    python常用命令
  • 原文地址:https://www.cnblogs.com/110lsm/p/8626212.html
Copyright © 2011-2022 走看看