CSRF(Cross-site request forgery)是一种网络攻击方法,中文名称:跨站请求伪造,也被称为:one click attack/session riding,缩写为:CSRF/XSRF。
攻击者利用用户已经认证的身份在第三方站点上进行恶意操作。攻击者诱使用户访问一个包含恶意请求的网页,当用户浏览该网页时,该请求会利用用户在目标网站上的认证信息(如Cookies)来伪装用户进行操作。例如:以你名义发送邮件,发消息,盗取你的账号,甚至于购买商品,虚拟货币转账…造成的问题包括:个人隐私泄露以及财产安全。
例如,我在自己的文章里放一段代码,接口假设是关注的GET接口
<img style="width:0;" src="https://mp-action.csdn.net/interact/wrapper/pc/fans/v1/api/follow?username=m0_37820751 />
那么如果你登录了这个平台,访问这篇文章就会自动关注我。
CSRF这种攻击方式早在2000年就被国外的安全人员提出。然而,在国内直到2006年才开始引起关注。在2008年,国内外多个大型社区和互动网站相继曝出了CSRF漏洞,其中包括纽约时报(NYTimes.com)、Metafilter(一个大型的博客网站)、YouTube和百度HI等。尽管如此,现在仍有许多网站对CSRF攻击没有足够的防范措施,这也导致安全领域将CSRF称为“沉睡的巨人”。
CSRF攻击的实施通常需要受害者依次完成下面两个步骤:
看到这里,你也许会说:“如果我不满足以上两个条件中的一个,我就不会受到CSRF的攻击”。是的,确实如此,但你不能保证以下情况不会发生: