服务粉丝

我们一直在努力
当前位置:首页 > 财经 >

实战攻防演之阻击CSRF威胁

日期: 来源:LemonSec收集编辑:

一、概述

CSRF(Cross-site Request Forgery:跨站请求伪造),利用受害者尚未失效的身份信息(cookie/会话),创建恶意的web页面产生伪造请求,在受害者不知情的情况下,向服务器发送请求完成非法操作(增删改查用户信息或业务数据、转账、改密、评论、点关注、点赞等),对用户和企业的数据安全造成了非常严重的威胁。本文从攻击者的攻击手法进行研究,站在攻击者的角度研究CSRF攻击,并同步给出了有效的阻击方法,正所谓未知攻,焉知防。

CSRF攻击原理如图1所示。

图1 漏洞原理图

解读:

1>User访问存在CSRF漏洞的站点A

2>User登录成功,在用户浏览器中产生A的Cookie

3>User未登出网站A ,攻击者设法 (点击链接、xss方式) 让受害者访问自己的站点B

4>受害者中招访问了攻击者构造的站点B

5>攻击者带着User的Cookie发送伪造的请求给站点A(实现非法操作)

6>站点A检测到为User的Cookie信息便执行了请求

7>攻击者达到目的,一次CSRF攻击完成。

针对CSRF,一般的防护做法是在后端添加“Referer”和“token”限制。如图2、图3所示。

图2  添加Referer

图3  添加Token

以上两种传统的防御方法虽然能够在一定程度上防范CSRF攻击,但攻击者仍然有办法来绕过这些限制,对用户和企业的数据安全造成了非常严重的威胁。

二、CSRF的Bypass思路

CSRF Token Tracker 可以自动获取Csrf-token,对于一些有Csrf 限制的请求,它可以绕过该限制。实战攻防演

示如下:

1>安装CSRF Token Tracker

图4  Extender BApp Store-CSRF Token Tracker

自动获取Csrf-token,如图5、图6。

图5

图6 同步token

修改成功,如图7。

图7  修改密码成功

图8  请求包中的TOKEN自动更新可在Logger中查看

Note: 这种方法是最简单的,然而在如下场景并不适用。

②Define宏

1>现状:

CSRF Token Tracker 在有些情况下也无法自动更新获取CSRF-token。

图9  Response:无效的CSRF token

2>Bypass思路:

配置过程:

图10

图11  选择获取token的请求

图12 Response不再返回无效CsrfToken

三、阻击方法

除去以上token校验存在威胁的情况,还存在:

①token-置空令牌

原因:应用程序仅在token应用程序不为空的情况下检查token

Bypass:删除请求中的token令牌即可

②token-仅静态验证

原因:token令牌由静态和动态两部分组成,程序仅验证静态部分

Bypass: 删除动态部分,仅用静态部分绕过

③token-令牌易构造

原因:生成的token令牌过于简单有规律可循

Bypass:研究令牌的生成方式,构造令牌进行绕过

因此想要彻底阻击CSRF威胁需要使用双因子认证,缺点是用户体验不友好,所以在一些关键敏感操作上建议使用双因子认证来保护用户和企业的数据安全。

侵权请私聊公众号删文


 热文推荐  


欢迎关注LemonSec
觉得不错点个“赞”、“在看“

相关阅读

  • 来认领你的神仙GPT助理!

  • ChatGPT 风潮席卷全球,越来越多企业开始将生成式 AI 应用在商业场景中。微软也在 3 月陆续推出了 Dynamics 365 Copilot、Microsoft 365 Copilot 以及 Power Platform Copilo

热门文章

  • “复活”半年后 京东拍拍二手杀入公益事业

  • 京东拍拍二手“复活”半年后,杀入公益事业,试图让企业捐的赠品、家庭闲置品变成实实在在的“爱心”。 把“闲置品”变爱心 6月12日,“益心一益·守护梦想每一步”2018年四
  • 美国对华2000亿关税清单,到底影响有多大?

  • 1 今天A股大跌,上证最大跌幅超过2%。直接导火索是美国证实计划对华2000亿美元产品加征25%关税。 听起来,2000亿美元数目巨大,我们来算笔账。 2000亿美元,按现在人民币汇率

最新文章

  • 真正的聪明人,一辈子不会说的三件事

  • 林语堂先生曾说:“要说得巧,要说得少;言多必失,语多必败。”生活中,有多少误解,源自无所顾忌的言辞;多少纷争,起于口无遮拦的发泄;多少烦闷,来自怨天尤人的念叨。很多时候,“少言”比
  • 实战攻防演之阻击CSRF威胁

  • 一、概述CSRF(Cross-site Request Forgery:跨站请求伪造),利用受害者尚未失效的身份信息(cookie/会话),创建恶意的web页面产生伪造请求,在受害者不知情的情况下,向服务器发送请