浦东网警
CSRF跨站请求伪造
听到这个名字
是不是想起了前段时间
我们讲过的XSS跨站脚本
尽管听起来像XSS跨站脚本
但它与XSS非常不同
CSRF跨站请求伪造是一种不太流行
但危险性高于跨站脚本的网络攻击行为
01
什么是CSRF?
CSRF全称Cross-siteRequestForgery,翻译为跨站请求伪造,也被称为一键式攻击或者会话控制,是一种对网站的恶意利用,它是一种依赖web浏览器的、被混淆过的代理人攻击。
代理人攻击:指不直接对攻击目标进行攻击,而是通过跳板服务器对目标服务器发起攻击,实现其攻击目的的行为
跨站请求伪造与XSS听起来很像
但二者有着很大差别:
XSS利用漏洞影响站点内的用户,攻击目标是同一站点内的用户者;
而CSRF通过伪装成受害用户发送恶意请求来影响Web系统中受害用户的利益。
CSRF往往不太流行和难以防范,对其进行防范的资源也相当稀少,所以它被认为比XSS更具危险性。
02
CSRF的攻击原理
第一步,用户C打开浏览器,输入账号和密码请求登录受信任网站A;
第二步,用户信息通过验证后,网站A将产生的Cookie信息返回给浏览器,用户便成功登录网站A;
第三步,用户在登录网站A的同时,在同一浏览器中访问网站B;
第四步,网站B接收到用户登录请求后,返回的不是Cookie信息,而是一些攻击性代码,同时发出请求要求访问第三方站点A;
第五步,浏览器在接收到这些攻击性代码后,根据网站B的请求,在用户不知情的情况下向网站A发出访问请求,并执行网站B的恶意代码。
跨站请求伪造在受害者是毫不知情的情况下,以受害者名义伪造请求并发送给受攻击的站点,这样就能以受害者的身份和权限执行一些特殊敏感的操作。
03
CSRF的特点
跨站请求伪造具有以下几个特点:
1、用户在受攻击站点已经登录,且没有正常退出。
2、受攻击站点的会话失效时间比较长。而且失效时间越长受攻击机率越高。
3、受攻击站点的特殊敏感操作没有严谨的用户身份标识验证。
4、受害者主动访问含有伪造请求的页面。电子邮件、论坛、博客等常见的互联网应用都是攻击者可利用的社会工程学的范围。
04
CSRF的危害
简单的说,CSRF的攻击一旦发生,攻击者就盗用了你的身份,以你的名义发送恶意请求。
攻击者能够做的事情包括:以你名义发送邮件,发消息,盗取你的账号,甚至于购买商品,虚拟货币转账等等。该攻击行为的主要后果是泄露个人隐私、引发财产安全问题。
05
CSRF漏洞检测
如何知道是否登陆了存在CSRF漏洞的网站?需要对网站漏洞进行检测。检测CSRF漏洞是一项比较繁琐的工作,最简单的方法就是抓取一个正常请求的数据包,去掉Referer字段后再重新提交,如果该提交还有效,那么基本上可以确定存在CSRF漏洞。
在CSRF攻击请求中,Referer字段会是包含恶意网站的地址。
随着对CSRF漏洞研究的不断深入,目前涌现出一些专门针对CSRF漏洞进行检测的工具,如CSRFTester,CSRFRequestBuilder等。
06
CSRF的防范措施
不管是企业用户还是个人用户,防范CSRF可以采取以下三种方法:
1、对于web站点,将持久化的授权方法(例如cookie或者HTTP授权)切换为瞬时的授权方法(在每个form中提供隐藏field),可以帮助网站防止CSRF攻击。
2、对于Ajax请求来说(Ajax是一种用于创建快速动态网页的技术),可以使用“双提交”cookie的方法。简单来说,就是在提交登录请求前,先用JavaScript代码读取用于验证的cookie值加入到提交字段。这样就形成了双提交(验证字段有两份,一份在cookie中,一份在POST或URL中)。显然单纯的CSRF只能让请求中带有cookie但是并不能读取cookie加入到POST或URL中。
3、尽管CSRF是web应用的基本问题,不是用户的问题,但用户可以通过一些操作保护他们的帐户,譬如登录缺乏安全设计的网站时,在浏览其它站点前退出已登录站点或者在浏览器会话结束后清理浏览器的cookie。
衍生阅读
第一期:电脑奇卡?也许是挖矿木马作祟
第二期:隐秘的黑链,伸向网站的龌龊黑手
第三期:基础网络攻防之webshell攻击
第四期:基础网络攻防之跨站攻击
第五期:没那么简单!小邮件大问题
第六期:保护个人信息,别再用弱口令了
第七期:应对勒索病毒?你只有这样做
第八期:从PC到手机,恶意软件从未停止
第九期:基础网络攻防之SQL注入
第10期:网页篡改需提防大意违法泪两行
第11期:基础网络攻防之DDoS攻击
浦东网警
微博:浦东网警
守护互联网安全
转载请注明:http://www.twoac.com/bfbz/12982.html