Chinaunix首页 | 论坛 | 博客
  • 博客访问: 162810
  • 博文数量: 64
  • 博客积分: 3366
  • 博客等级: 中校
  • 技术积分: 765
  • 用 户 组: 普通用户
  • 注册时间: 2010-04-10 10:32
文章分类

全部博文(64)

文章存档

2012年(5)

2011年(22)

2010年(37)

我的朋友

分类: 网络与安全

2010-06-02 11:10:56

CSRF是Cross Site Request Forgery的缩写,中文意思是跨网站请示伪造,也有人写成XSRF。黑客伪造目标用户的HTTP请求,然后将这个HTTP请求发送给有CSRF漏洞的网站。有CSRF漏洞的网站执行了伪造的HTTP请求,就引发了一个跨网站请求伪造攻击。黑客利用电子邮件或图片中隐藏的HTTP连接,让目标用户在注意的情况下单击这个链接。由于这个HTTP链接是由目标用户自己发出的,而目标用户又是拥有特定权限的合法用户,因此,有CSRF漏洞的网站将这个请求视为正常的HTTP请求而执行它。
例如,你访问的购物网站网址为:,你购买了一个产品,购物网站参数为:,这是一个正常的HTTP请求,商品名称是照相机camera,购买数量是1,网站会将所买的商品与数量记录在用户的账户内。

如果黑客知道了购物网站的操作流程,他就可以伪造一个类似的HTTP请求:,商品名称是camera,而购买数量却是1000。如果目标用户在网站登录期间不小心访问了这个链接,那么在他的帐户内就是会有一条记录是购买1000台的camera。跨网站请求伪造攻击步骤如图1所示。

 
其实这个技术在国外2000年的时候已经被提出,而在国内一直没有被重视,可能大家认为这个只是自慰式的漏洞。一般CSRF配合XSS比较好,如果没有XSS的情况下,配合社工也是不错的。下面我以PHP168整站系统最新版为例。PHP168在经过多次的风风雨雨在XSS和SQL Injection方面都比较严格了。这次我利用CSRF攻击添加管理员。
 
  添加管理员页面为:,如图2所示。
 
我们看一下代码是怎么写的,如下:

   
      添加新用户
   
   
      帐号:
     
       
     
   
   
      密码:
     
       
     
   
   
      重复密码:
     
       
     
   
   
      所属用户组:只有超级管理员与创建人才能添加新的超级管理员,只有超级管理员与创始人及前台管理员才能添加新的前台管理员
     
   
   
      邮箱:
     
       
     
   
   
       
     
       
     
   
 

本文转自 ☆★ 包罗万象网 ★☆ - 转载请注明出处,侵权必究!
原文链接:
阅读(915) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~