CSRF/XSRF概述

时间:2022-07-12

概述

CSRF(Cross-site request forgery)跨站请求伪造,也被称为“One Click Attack”或者Session Riding,通常缩写为CSRF或者XSRF,一般是攻击者冒充用户进行站内操作,它与XSS非常不同,XSS利用站点内的信任用户,而CSRF则是伪装成受信任用户的请求来访问操作受信任的网站。


原理

CSRF攻击经常利用目标站点的身份验证机制,CSRF攻击这一弱点的根源在于Web的身份验证机制虽然可以向目标站点保证一个请求来自于经过站点认证的某个用户的账号,但是却无法保证该请求的确是那个用户发出的或者是经过那个用户批准的。

目前web网站泛用的身份验证机制就是cookie-session认证机制,来跟踪记录用户的行为。

CSRF攻击依赖下面的假定:

攻击者了解受害者所在的站点;

攻击者的目标站点具有持久化授权cookie或者受害者具有当前会话cookie;

目标站点没有对用户在网站行为的第二授权;

欺骗用户的浏览器发送HTTP请求给目标站点(也就是忽悠用户点击攻击链接)或者攻击者控制部分or全部站点(比如攻击者通过XSS拿到未失效且经过网站授权的cookie)。


参考深入解析跨站请求伪造漏洞:原理剖析。

比如攻击者编写了一个在用户的银行站点上进行取款的form提交的链接,并将此链接作为图片src。如果用户的银行在cookie中保存他的授权信息,并且此cookie没有过期,那么当用户的浏览器尝试装载图片时将提交这个取款form和他的cookie,这样在没经用户同意的情况下便授权了这次转账。

如下图所示:


image.png

Copyright © 2016 广州思洋文化传播有限公司,保留所有权利。 粤ICP备09033321号

与项目经理交流
扫描二维码
与项目经理交流
扫描二维码
与项目经理交流
ciya68