黑客新技术之CSRF攻击手法介绍

  • 时间:
  • 浏览:1





作者: 论坛分发 zdnet网络安全

CNETNews.com.cn

1007-12-24 20:20:00

关键词: 攻击防范 CSRF 黑客

Cross-site request forgery:跨站请求伪造,也被称成为“one click attack”肯能session riding,通常缩写为CSRF肯能XSRF,是这俩对网站的恶意利用。尽管听起来像跨站脚本(XSS),但它与XSS非常不同,有但是攻击法律法律辦法 几乎相左。XSS利用站点内的信任用户,而CSRF则通过伪装来自受信任用户的请求来利用受信任的网站。与XSS攻击相比,CSRF攻击往往不大流行(有但是对其进行防范的资源也相当稀少)和难以防范,统统有被认为比XSS更具危险性。 

示例和型态 

«  ‹  ›  »

CSRF攻击通过在授权用户访问的页面中所含链接肯能脚本的法律法律辦法 工作。类式:另一个网站用户Bob肯能正在浏览聊天论坛,而并肩统统用户Alice 也在此论坛中,有但是后但是发布了另一个具有Bob银行链接的图片消息。设想一下,Alice编写了另一个在Bob的银行站点上进行取款的form提交的链接,并将此链接作为图片tag。肯能Bob的银行在cookie中保存他的授权信息,有但是此cookie不可以 过期,不可以 当Bob的浏览器尝试装载图片时将提交有些取款form和他的cookie,统统在没经Bob同意的状况下便授权了这次事务。

CSRF是这俩依赖web浏览器的、被混淆过的代理人攻击(deputy attack)。在顶端银行示例中的代理人是Bob的web浏览器,它被混淆后误将Bob的授权直接交给了Alice使用。

下面是CSRF的常见型态:

依靠用户标识危害网站

利用网站对用户标识的信任

欺骗用户的浏览器发送HTTP请求给目标站点

风险在于那先 通过基于受信任的输入form和对特定行为不让授权的已认证的用户来执行有些行为的web应用。肯能通过被保处于用户浏览器中的cookie进行认证的用户将在完整性无知的状况分发送HTTP请求到那个信任他的站点,进而进行用户不愿做的行为。

使用图片的CSRF攻击常常总出 在网络论坛中,肯能那里允许用户发布图片而不可以使用JavaScript。

防范法律法律辦法  

«  ‹  ›  »

对于web站点,将持久化的授权法律法律辦法 (类式cookie肯能HTTP授权)切换为瞬时的授权法律法律辦法 (在每个form中提供隐藏field),这将帮助网站处置那先 攻击。这俩类式的法律法律辦法 是在form中所含秘密信息、用户指定的代号作为cookie之外的验证。

统统可选的法律法律辦法 是“双提交”cookie。此法律法律辦法 只工作于Ajax请求,但它不让可以作为不让改变絮状form的全局修正法律法律辦法 。肯能某个授权的 cookie在form post但是正被JavaScript代码读取,不可以 限制跨域规则将被应用。肯能服务器须要在Post请求体肯能URL中所含授权cookie的请求,不可以 有些请求须要来自于受信任的域,肯能其它域是不可以从信任域读取cookie的。

与通常的信任想法相反,使用Post代替Get法律法律辦法 暂且能提供卓有成效的保护。肯能JavaScript能使用伪造的POST请求。尽管不可以 ,那先 原因对安全产生“副作用”的请求应该总使用Post法律法律辦法 发送。Post法律法律辦法 不让在web服务器和代理服务器日志中留下数据尾巴,然而Get法律法律辦法 却会留下数据尾巴。

尽管CSRF是web应用的基本问题 ,而有的是用户的问题 ,但用户不让可以在不足英文安全设计的网站上保护让我们歌词 的帐户:通过在浏览其它站点前登出站点肯能在浏览器会话刚开始了了后清理浏览器的cookie。

影响CSRF的因素 

«‹  ›  »

CSRF攻击依赖下面的假定:

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

攻击者的目标站点具有持久化授权cookie肯能受害者具有当有的是话cookie

目标站点不可以 对用户在网站行为的第二授权

内部人员链接 

«  ‹  ›  »

Cross-Site Request Forgeries

RFC 2616

The Cross-Site Request Forgery FAQ

Foiling Cross-Site Attacks

Security Tips for Web Developers

CSRF Attacks and Protecting Your Site