• CSRF跨站请求伪造


    1、CSRF跨站请求伪造

    1.1 CSRF漏洞概述

    1)在CSRF的攻击场景中攻击者会伪造一个请求(这个请求一般为一个链接)然后欺骗用户进行点击,用户一旦点击了这个请求,整个攻击也就完成了。所以CSRF攻击也被称为“one cilck”攻击

    2CSRFXSS的区别:CSRF是借用户权限完成攻击,攻击者并没有拿到用户权限,而xss则是直接盗取了用户的权限,然后实施破坏。

    3)如何确定一个web系统存在CSRF漏洞

    *对目标网站增删改的地方进行标记,并观察其逻辑,判断请求是否可以被伪造

    --比如修改管理员账号,并不需要验证旧密码,导致请求容易被伪造

    --比如对于敏感信息的修改并没有使用安全的token验证,导致请求容易被伪造

    *确认凭证的有效期(这个问题会提高CSRF被利用的概率)

    --虽然推出或者关闭了浏览器,但是cookie仍然有效,或者session并没有及时过期,导致CSRF攻击变得简单

    1.2 CSRF(get/post)实验演示和解析

    1getcsrf演示

    *get型的csrf漏洞所包含的信息都在url里,所以,我们只要可以获取到目标用户的url,就能对其信息进行修改,但同时还要保障的是,用户此时必须处于登陆状态,浏览器没有关闭

     

    *这是我们得到的url,并对他进行加工,修改地址为baodinghttp://192.168.66.246/pikachu-master/vul/csrf/csrfget/csrf_get_edit.php?sex=girl&phonenum=12345678922&add=baoding&email=lucy%40pikachu.com&submit=submit

    *这样就是我们构造完成的url,让用户点击

     

    2postcsrf演示

    *post型的csrf漏洞所需要修改的信息并不在url里,而是在请求体里面进行提交的。所以我们需要和xsspost请求一样,布一个站点,做一个表单,让目标用户点我们站点的表单的url。向存在postcsrf漏洞的页面去提交post请求。

    *我们得先做一个post表单,并把它放到我们的www文件夹下

     

    *发送给用户连接,用户访问,则完成修改:192.168.66.246/post.html

     

    1.3 常见CSRF防范措施

    1)增加token验证(常用)

    对关键操作增加token参数,token值必须随机,每次都不一样

    2)关于安全的会话管理(避免会话被利用)

    *不要在客户端保存敏感信息(比如身份认证信息)

    *测试直接关闭,退出时的会话过期机制

    *设置会话过期机制,比如15分钟内误操作,则自动登陆超时

    3)访问控制安全管理

    *敏感信息的修改时需要对身份进行二次认证,比如修改账号,需要判断旧密码

    *敏感信息的修改使用post,而不是get

    *通过http头部中的referer来限制原页面

    4)增加验证码

    一般用在登陆,(防暴力破解),也可以用在其他重要信息操作的表单中

  • 相关阅读:
    Contest20140710 eagleeggs
    bzoj 1059: [ZJOI2007]矩阵游戏 二分图匹配
    Quick-Cocos2d-x初学者游戏教程(二) -------------------- Quick内部的代码结构及相应的原理
    Quick-Cocos2d-x初学者游戏教程(一)--------------------Quick的一些基础知识
    使用Cocos Studio 1.6 编辑人物属性界面
    Cocos2d-x 3.0 开发(十四)使用UIScrollView 实现大小不同物品拖动展示
    使用Cocos Studio 1.6 编辑开始界面
    Cocos2d-x Json用法
    Cocos2d-x xml解析
    plist文件操作
  • 原文地址:https://www.cnblogs.com/pangsong/p/12487833.html
Copyright © 2020-2023  润新知