五大方法减少跨站请求伪造(CSRF)攻击

你公司网络上的Web应用程序是否容易遭受跨站请求伪造攻击呢?这是一个值得讨论的问题,因为一次成功的CSRF攻击的后果往往是破坏性的,会花费公司的大量金钱,甚至导致机密信息丢失。

什么是CSRF(跨站请求伪造)?

CSRF攻击通过使应用程序相信导致此活动的请求来自应用程序的一个可信用户,从而诱使应用程序执行一种活动(如转移金融资产、改变账户口令等)。用户可以是公司的一位雇员,企业合伙人,或者是一个外部的客户。

CSRF攻击依赖于这样一个事实:许多Web应用程序使用cookie,其终结时间相对较长,从而使用户在通过最初的验证之后仍能访问应用程序。

要使CSRF攻击得逞,潜在的受害者必须使用其浏览器进行验证,并登录到公司的Web应用程序。只要用户没有退出应用程序,浏览器中的应用程序的cookie没被终止,该用户就是CSRF攻击的一个潜在受害者。

CSRF攻击如何运行?

为执行CSRF攻击,黑客需要把一个特别伪造的到达公司应用程序的链接放置到其它网页上或放到电子邮件中。但黑客并不把此链接作为一个超级链接,而是将它放在一个图像或脚本标签中,从而隐藏链接,将链接作为图像或脚本的源。

下面是一个来自维基百科的例子:

  1. img src="http://bank.example.com/withdraw?account=bob&amount=100000&for=mallory" 

现在,如果受害者在其浏览器中查看包含此图像的网页,或读取包含此链接的电子邮件程序,浏览器会跟踪链接,试图获取图片。如果受害者近来登录过此站点,其浏览器会提供一个用于验证的cookie,告诉浏览器将10万美元从“bob”的账户转移给“mallory”。一般而言,受害人不会知道执行了什么业务(至少在检查其账户余额之前),因为受害人的浏览器在执行业务时并不从bank.example.com那里显示任何反馈(如一个确认网页)。

在上面的例子中,该链接专门针对bob,限制其实用性。在实践中,黑客有可能使用一个更为通用的链接,可适用于碰巧登录到企业Web应用程序的任何潜在受害者。但对黑客来说,伪造一次成功的CSRF攻击并不容易,因为在攻击过程中,黑客并不能从Web应用程序获得任何反馈。这意味着,只有从你的Web应用程序发出的响应完全可预测时,这种攻击才可能发生。

所以说,一个易于遭受攻击的Web应用程序必须:

1、 准许用户用一个合法的cookie进行访问,其到期时间必须足够长。

2、 在提交适当的URL(可从外部站点发送)时,准许执行交易。

3、 以一种可预测的方法进行响应。

CSRF攻击可以达到什么目标?

虽然CSRF攻击仅能在Web应用程序中执行业务,其后果却可能蔓延很广。例如,这会导致受害人在不知情的情况下向论坛发帖子、订阅邮件列表、网购或股票交易,或变更用户名或口令。对受到受害人防火墙保护的所有应用程序而言,CSRF攻击都能发挥作用。如果受害者的机器位于受限的某个IP范围,就会使得黑客访问此范围内的相关应用程序。

还有一种CSRF变种,称为登录CSRF,它能够使用攻击者的登录凭证记录受害人在Web应用程序中的活动。这将使黑客以后可以登录进入并检索关于受害人的信息,如用户活动历史,或由受害者所提交的任何机密信息。

五大方法减轻Web应用程序易受CSRF攻击的风险

限制验证cookie的到期时间。这些cookie的合法时间越短,黑客利用你的Web应用程序的机会就越小。不过,这个时间越短,用户就越不方便。因此,你需要在安全性和方便性之间进行平衡。

执行重要业务之前,要求用户提交额外的信息。要求用户在进行重要业务前输入口令,这可以防止黑客发动CSRF攻击(只要浏览器中没有包含口令),因为这种重要信息无法预测或轻易获得。

使用秘密的无法预测的验证符号。当保存在用户浏览器中的cookie仅由一次会话确认时,CSRF攻击才会有效。所以在每次HTTP请求(当然攻击者无法提前知道)中都有附加的特定会话的信息,这样就可以挫败CSRF攻击。不过,如果这种应用程序存在跨站脚本漏洞,黑客就有可能访问这种验证符号。

使用定制的HTTP报头。如果执行交易的所有请求都使用XMLHttpRequest并附加一个定制的HTTP报头,同时拒绝缺少定制报头的任何请求,就可以用XMLHttpRequest API来防御CSRF攻击。由于浏览器通常仅准许站点将定制的HTTP报头发送给相同站点,从而了防止由CSRF攻击的源站点所发起的交易。

检查访问源的报头。在浏览者发送HTTP请求时,它通常会包含源自访问源报头的URL。理论上讲,你可以使用这些信息来阻止源自其它任何站点(而不是来自Web应用程序自身)的请求。不过,访问源报头并不总是可用的,(例如,有些单位由于私密性的缘故而将它剥离了),或者这个报头容易被欺骗,所以说,这条措施并不真正有效。

推荐专题:十大工具及应用策略搞定OWASP热门威胁

文章来源网络,作者:运维,如若转载,请注明出处:https://shuyeidc.com/wp/150112.html<

(0)
运维的头像运维
上一篇2025-03-12 22:32
下一篇 2025-03-12 22:33

相关推荐

  • 个人主题怎么制作?

    制作个人主题是一个将个人风格、兴趣或专业领域转化为视觉化或结构化内容的过程,无论是用于个人博客、作品集、社交媒体账号还是品牌形象,核心都是围绕“个人特色”展开,以下从定位、内容规划、视觉设计、技术实现四个维度,详细拆解制作个人主题的完整流程,明确主题定位:找到个人特色的核心主题定位是所有工作的起点,需要先回答……

    2025-11-20
    0
  • 社群营销管理关键是什么?

    社群营销的核心在于通过建立有温度、有价值、有归属感的社群,实现用户留存、转化和品牌传播,其管理需贯穿“目标定位-内容运营-用户互动-数据驱动-风险控制”全流程,以下从五个维度展开详细说明:明确社群定位与目标社群管理的首要任务是精准定位,需明确社群的核心价值(如行业交流、产品使用指导、兴趣分享等)、目标用户画像……

    2025-11-20
    0
  • 香港公司网站备案需要什么材料?

    香港公司进行网站备案是一个涉及多部门协调、流程相对严谨的过程,尤其需兼顾中国内地与香港两地的监管要求,由于香港公司注册地与中国内地不同,其网站若主要服务内地用户或使用内地服务器,需根据服务器位置、网站内容性质等,选择对应的备案路径(如工信部ICP备案或公安备案),以下从备案主体资格、流程步骤、材料准备、注意事项……

    2025-11-20
    0
  • 如何企业上云推广

    企业上云已成为数字化转型的核心战略,但推广过程中需结合行业特性、企业痛点与市场需求,构建系统性、多维度的推广体系,以下从市场定位、策略设计、执行落地及效果优化四个维度,详细拆解企业上云推广的实践路径,精准定位:明确目标企业与核心价值企业上云并非“一刀切”的方案,需先锁定目标客户群体,提炼差异化价值主张,客户分层……

    2025-11-20
    0
  • PS设计搜索框的实用技巧有哪些?

    在PS中设计一个美观且功能性的搜索框需要结合创意构思、视觉设计和用户体验考量,以下从设计思路、制作步骤、细节优化及交互预览等方面详细说明,帮助打造符合需求的搜索框,设计前的规划明确使用场景:根据网站或APP的整体风格确定搜索框的调性,例如极简风适合细线条和纯色,科技感适合渐变和发光效果,电商类则可能需要突出搜索……

    2025-11-20
    0

发表回复

您的邮箱地址不会被公开。必填项已用 * 标注