博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
CSRF 认识
阅读量:4885 次
发布时间:2019-06-11

本文共 1155 字,大约阅读时间需要 3 分钟。

CSRF(Cross-site request forgery)跨站请求伪造,也被称为“One Click Attack”或者Session Riding,通常缩写为CSRF或者XSRF,是一种对网站的恶意利用。利用受害者尚未失效的身份认证信息(cookie,会话等),诱变点击恶意链接或者访问包含攻击代码的页面,在受害人不知情的情况下以受害者的身份向服务器发送请求,从而完成非法操作。

HTTP Referer:   是 请求header 的一部分,当浏览器(或者模拟浏览器行为)向web 服务器发送请求的时候,头信息里有包含 。Http协议头中的Referer主要用来让服务器判断来源页面, 即用户是从哪个页面来的,通常被网站用来统计用户来源,是从搜索页面来的,还是从其他网站链接过来,或是从书签等访问,以便网站合理定位.

类型:

  1.GET请求。

    验证时,直接在另一个浏览器上登录账户后访问URL即可。利用时,则将URL放在html标签中进行伪装。

    POC构造:

      <img src="url" border="0" style="display: none;"/>

      <h1>404</h1>

      <h2>file not found.</h2>

  2.POST请求。

    需要构造HTML表单。burp中可以直接构造也可以自己写

     POC构造:

        <!DOCTYPE html>

        <html>

        <body>
        <form name="poc" action="" method="POST" type="hidden">
        <input type="hidden" name="newEmail" value="xx"/>
        <input type="submit" value="submit request" style="display: none;">
        </form>
        </body>
        <script>
        poc.submit();
        </script>
        </html>

基本绕过

(1).referer

    (1).是否属于指定域

    (2).指定关键字

    (3)是否有指定域

    (4)为空时

(2).token

防护

  (1).验证码

  (2)token :加密,随机令牌

  (3)通过请求头判断请求是否与当前页面同源

  

转载于:https://www.cnblogs.com/pangya/p/8992248.html

你可能感兴趣的文章
如何在SpringBoot中集成JWT(JSON Web Token)鉴权
查看>>
python的pydoc与help
查看>>
js动画实现透明度动画
查看>>
css3实现圆形逐渐减少动画
查看>>
D24_02_页面驻留(page Frame)
查看>>
基于Boost无锁队列实现的内存池
查看>>
HDU-4861-Couple doubi(数学题,难懂!难懂!)
查看>>
sublime text 输入法不跟随光标
查看>>
java多态
查看>>
highchart 图标 时钟的使用
查看>>
牛客OI赛制测试赛2(0906)
查看>>
1005—I Think I Need a Houseboat
查看>>
java的Timer定时器任务
查看>>
第6章 当c++爱上面向对象
查看>>
hadoop伪分布式环境搭建
查看>>
广域网远程开机教程 测试
查看>>
爬取大众点评
查看>>
LeetCode 66. Plus One
查看>>
Sharepoint学习笔记—ECMAScript对象模型系列-- 10、 复制/移动Document List中的文档
查看>>
Routed Events【pluralsight】
查看>>