freeBuf
主站

分类

云安全 AI安全 开发安全 终端安全 数据安全 Web安全 基础安全 企业安全 关基安全 移动安全 系统安全 其他安全

特色

热点 工具 漏洞 人物志 活动 安全招聘 攻防演练 政策法规

点我创作

试试在FreeBuf发布您的第一篇文章 让安全圈留下您的足迹
我知道了

官方公众号企业安全新浪微博

FreeBuf.COM网络安全行业门户,每日发布专业的安全资讯、技术剖析。

FreeBuf+小程序

FreeBuf+小程序

实战攻防演之阻击CSRF威胁
2022-08-19 10:23:31
所属地 北京

一、概述

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

CSRF攻击原理如图1所示。

1660874603_62feef6b25f0c15d9983d.png!small

图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所示。

1660874661_62feefa5515328e9a04d5.png!small

图2  添加Referer

1660874683_62feefbbd0917726a6245.png!small

图3  添加Token

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

二、CSRFBypass思路

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

示如下:

1>安装CSRF Token Tracker

1660874913_62fef0a14cb0d85d2c01d.png!small

图4  Extender BApp Store-CSRF Token Tracker

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

1660874944_62fef0c072441cb43a0c0.png!small

图5

1660874973_62fef0ddbd2aa4541fcaf.png!small

图6 同步token

修改成功,如图7。

1660874999_62fef0f7ba88ce354c4b6.png!small

图7  修改密码成功

1660875053_62fef12dec1c1806a89c1.png!small

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

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

Define宏

1>现状:

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

1660875091_62fef153e33536e030422.png!small

图9  Response:无效的CSRF token

2>Bypass思路:

配置过程:

1660875137_62fef181a5be94e0681be.png!small

图101660875166_62fef19ed51a5a515341d.png!small

图11  选择获取token的请求

1660875193_62fef1b90181d3a5f38e2.png!small

1660875245_62fef1ed3d9b5b81a109a.png!small

图12 Response不再返回无效CsrfToken

三、阻击方法

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

token-置空令牌

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

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

token-仅静态验证

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

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

token-令牌易构造

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

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

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

# 数据泄露 # web安全 # 数据安全
免责声明
1.一般免责声明:本文所提供的技术信息仅供参考,不构成任何专业建议。读者应根据自身情况谨慎使用且应遵守《中华人民共和国网络安全法》,作者及发布平台不对因使用本文信息而导致的任何直接或间接责任或损失负责。
2. 适用性声明:文中技术内容可能不适用于所有情况或系统,在实际应用前请充分测试和评估。若因使用不当造成的任何问题,相关方不承担责任。
3. 更新声明:技术发展迅速,文章内容可能存在滞后性。读者需自行判断信息的时效性,因依据过时内容产生的后果,作者及发布平台不承担责任。
本文为 独立观点,未经授权禁止转载。
如需授权、对文章有疑问或需删除稿件,请联系 FreeBuf 客服小蜜蜂(微信:freebee1024)
被以下专辑收录,发现更多精彩内容
+ 收入我的专辑
+ 加入我的收藏
相关推荐
  • 0 文章数
  • 0 关注者