【IT168 技术】跨站请求伪造
跨站请求伪造是另一种同源策略攻击,它的目的是为了欺骗受害者加载一个包含恶意请求的网页,要求用户输入其账户及口令等。这种欺骗依赖于用户对其身份信息的信任。用户一般会认为他们只是在执行不同的任务,只不过是使用一种HTTP请求。攻击者借用用户自己的浏览器将攻击发送给目标站点。
1、跨站请求伪造的原理
首先,攻击者将达到恶意站点的链接发布到目标站点上,然后,就会有一些轻信的用户浏览恶意网站,从而成为受害者,更有甚者,会成为其帮凶。在用户受到诱骗将表单提交给原始的目标网站(最初被植入恶意链接的网站)时,用户就会成为攻击者的帮凶。因为用户已经通过了身份验证,所以目标网站会接受表单提交请求,并准许修改敏感数据,如用户自己的口令或从网站上获取关键的信息。
2、保护代码
首先,要通过检查REQUEST链接请求来限制对POST或Web应用程序的访问。
注意:有些浏览器会有一个空的链接请求,这也应当被阻止。
因而,相互认证一般情况下是令牌化认证的请求,即如果数据包含着一个适当的机密值,才可以接受粘贴数据。而且通过实行多个步骤的写入过程或确认页面会强化这种安全机制。
总结
同源策略是一个在多数浏览器中实施的概念,但它可被XSS攻击利用(它利用了一个用户对于某个网站或应用程序的信任),也可被XSRF利用(它利用了网站或应用程序对用户的信任)。
那么,我们的策略简单地说就是:绝不相信任何人!
不妨将信任看做是一个双向的街道:你永远不会知道哪个方向会出现车流。任何人都可以潜入到信任关系的中间,并滥用这种信任关系。
因而,我给出如下要点:
1、保护你的代码和客户端:对所有的远程数据输入都进行验证或过滤。
2、警告用户不要随意浏览,要教育用户能够确切地知道自己正在被导航到哪里。