
本文共 1042 字,大约阅读时间需要 3 分钟。
上一篇博客:
PS:P247-P258节内容主要包括PHP注入、ACCESS注入、Webshell、文件上传漏洞等详细内容不再记录(时间不够了,假期君要离我而去了~)
目录
- CSRF
- 概述
- 关键点
- 场景模拟
- 目标
- XSS配合CSFR
- CSFR的防御
开始
一、CSRF
是一个Web应用的漏洞
场景发生在有某一个用户登录Web应用
发生在用户终端强制、诱惑执行非本地的操作
1.1概述
跨站请求伪造(Cross-site request forgery,CSRF)是一种攻击,他强制终端用户在当前对其进行身份验证之后的Web应用程序上执行非本意的操作
CSRF攻击的着重点在伪造更改状态的请求,而不是盗取数据,因为攻击者无法查看对伪造请求的响应
借助社工的一些帮助(电子邮件、聊天发送链接),攻击者可以诱骗用户执行攻击者选择的操作
如果受害者是普通用户,则成功的CSFR攻击可以强制用户执行状态更改的请求,例如资金转移 、更改电子邮件地址等
如果受害者是管理账户,CSFR可能会危及整个Web应用程序
1.2关键点
CSFR是一种欺骗受害者提交恶意请求的攻击
他继承了受害者的身份和特权,代表受害者执行非本意、恶意的操作
对于大多数站点
1.3场景模拟
测试网站具有二人转账功能,包含数据库,每个账户金额存储在数据库
两个不同用户登录

攻击者hacker账户登录

admin用户访问hacker搭建的CSFR服务网站,点击链接,发现钱少了
转账原因
访问领取宝刀页面的同时,也像另外一个网页(转账网页)发送了信息
访问网页时候,浏览器将所有的Cookie信息发给了服务器—》源账户有了
点击引诱链接的同时,发送请求<a href="转账链接">点击领取宝刀!</a>
---->目标账户hacker有了
简单理解,就是hacker利用CSRF伪造了admin用户的转账请求
跨站就是在诱惑网页的地址根网上银行主页的地址不是同一个
原理过程图
1.4目标
CSFR攻击目标是能够更改服务器状态或数据的业务、功能
如更改受害者电子邮件地址、密码或购买商品,强制受害者查询数据
对于攻击者来说没什么用,因为无法获得服务器响应
因此CSFR攻击是针对引起状态变化的请求

1.5场景建模

1.6XSS配合CSFR
1.7CSFR的防御
-
无效的防御
-
有效防御
验证referer字段,就是转账的点击连接的上一个网站必须是该银行的网站转向的其他
参考:B站千峰