介绍
跨站点请求伪造(CSRF / XSRF)是一种攻击类型,当用户通过恶意站点、博客、电子邮件、程序或即时消息进行身份验证时,在受害者不知情的情况下web浏览器在受信任的站点上执行非法的操作,就会发生这种攻击。
对于大多数站点,浏览器请求自动包含与站点相关的任何凭证(会话cookie、Windows域凭证、IP地址等)。因此,该网站无法区分受害者发送的是合法请求还是伪造请求。
执行CSRF攻击的攻击者无法看到伪造请求的响应,因为攻击是瞬时的,即state-changing请求。然而,当与针对管理员账号的社会工程攻击相结合时,这种方法可能对WEB应用程序造成严重的破坏。
影响及危害
CSRF攻击目标是专门针对state-changing的请求,而不是窃取数据,因为攻击者无法看到伪造请求的响应。成功的CSRF攻击的影响仅限于易受攻击的应用程序所暴露的能力。例如,这种攻击可能导致资金转移、更改密码或使用用户的凭证进行购买消费操作。
场景
CSRF攻击通常包括两种行为:通过社交工程或网络钓鱼诱骗受害者点击链接或加载页面,然后从受害者的浏览器向网站发送看似合法、精心制作的请求。攻击者能够发送带有值的请求,包括网站与受害者关联的cookie,仿冒受害者在网站上执行某些操作。
以下例子很好地说明了“跨站点”一词在这种攻击中的应用:
注意,表单的交互是发送到受攻击的站点,而不是恶意站点。这是CSRF的“跨站点”部分。
如何防护
有许多代码模型可以防止CSRF攻击,并且可以同时应用多个代码模型作为深度安全策略防御的一部分。
在身份验证成功后,在服务器端生成一个随机令牌,并与用户的会话相关联。令牌作为HTML响应的一部分返回给用户(例如,表单中的隐藏字段或通过AJAX检索)。
当用户需要执行敏感操作时,令牌就包含在请求中。应用程序验证令牌的正确性,然后仅当请求中的令牌与存储在用户会话中的令牌匹配时,才执行请求的操作。
页面更新:2024-04-01
本站资料均由网友自行发布提供,仅用于学习交流。如有版权问题,请与我联系,QQ:4156828
© CopyRight 2008-2024 All Rights Reserved. Powered By bs178.com 闽ICP备11008920号-3
闽公网安备35020302034844号