电商安全无小事,如何有效地抵御 CSRF 攻击?

现在,我们绝大多数人都会在网上购物买东西。但是很多人都不清楚的是,很多电商网站会存在安全漏洞。比如乌云就通报过,国内很多家公司的网站都存在 CSRF 漏洞。如果某个网站存在这种安全漏洞的话,那么我们在购物的过程中,就很可能会被网络黑客盗刷信用卡。是不是有点「不寒而栗」 的感觉?

首先,我们需要弄清楚 CSRF 是什么。它的全称是 Cross-site request forgery ,翻译成中文的意思就是「跨站请求伪造」,这是一种对网站的恶意利用。简单而言,就是某恶意网站在我们不知情的情况下,以我们的身份在你登录的某网站上胡作非为——发消息、买东西,甚至转账......

从一个 CSRF 攻击场景,看「双十一」 电商安全

这种攻击模式听起来有点像跨站脚本(XSS),但 CSRF 与 XSS 非常不同,并且攻击方式几乎相左。XSS 利用站点内的信任用户,而 CSRF 则通过伪装来自受信任用户的请求来利用受信任的网站。与 XSS 攻击相比,CSRF 攻击往往很少见,因此对其进行防范的资源也相当稀少。不过,这种「受信任」的攻击模式更加难以防范,所以被认为比 XSS 更具危险性。

这个过程到底是怎样的呢?让我们看个简单而鲜活的案例。

银行网站 A,它以 GET 请求来完成银行转账的操作,如:

http://www.mybank.com/Transfer.php?toBankId=11&money=1000

危险网站 B,它里面有一段 HTML 的代码如下:

<img src=http://www.mybank.com/Transfer.php?toBankId=11&money=1000>

可能会发生什么?你登录了银行网站 A,然后访问危险网站 B 以后,突然发现你的银行账户少了10000块......

为什么会这样呢?原因是在访问危险网站 B 之前,你已经登录了银行网站 A,而 B 中的以 GET 的方式请求第三方资源(这里的第三方就是指银行网站了,原本这是一个合法的请求,但这里被不法分子利用了),所以你的浏览器会带上你的银行网站 A 的 Cookie 发出 GET 请求,去获取资源

「http://www.mybank.com/Transfer.php?toBankId=11&money=1000」,

结果银行网站服务器收到请求后,认为这是一个合理的转账操作,就立刻转账了......

其实,真实的银行网站不会如此不加防范,但即使用 POST 替代 GET,也只是让危险网站多花些力气而已。危险网站 B 依然可以通过嵌入 Javascript 来尝试盗取客户资金,所以我们时不时会听到客户资金被盗的案件,其实这并不是很不稀奇。

相信,很多人了解到这儿,会出现一身冷汗,还让不让我们在「双11」期间能够愉快地享受网购的快感了?难道没有什么办法防住它嘛?

当然是有的。可以给网站打补丁,如 Cookie Hashing (所有表单都包含同一个伪随机值)。这可能是最简单的解决方案了,因为理论上攻击者不能获得第三方的 Cookie,所以表单中的数据也就构造失败了。但这并不是完美的解决方案,因为用户的 Cookie 很容易由于网站的 XSS 漏洞而被盗取;另一种方法是用验证码,每次的用户提交都需要用户在表单中填写一个图片上的随机字符串....这个方案可以完全解决 CSRF,但用户体验很遭罪(忒麻烦了)。还有一种是 One-Time Tokens(不同的表单包含不同的伪随机值),需要设计令牌和 Session 管理逻辑,并修改 Web 表单,网站运维又很遭罪。

以上所有办法都需要对网站进行修修补补,再花费很多气力去测试。可能有人会想到用防火墙来防护,那么有没有满足要求的产品呢?在去年,下一代防火墙——自适应安全防护(RASP)这个概念横空出世,吸引了很多企业的注意,它对请求上下文的感知能力和深入应用内部的识别防御能力一改被动的、外部肉盾式的防护理念,可以在无需给网站打补丁的情形下承担起防护的责任,值得尝试。

这里推荐一个最新的解决方案,它的名字叫 RASP(实时应用自我保护),这种方式可以有效解决这类的问题。针对 CSRF 漏洞问题,RASP 定制了规则集和防护类,然后采用 Java 字节码技术,在被保护的类被加载进虚拟机之前,根据规则对被保护的类进行修改,将防护类织入到被保护的类中。大家不妨可以一试。

目前国内仅有一家在提供 RASP 的服务厂商 OneASP。 能以最小代价并且快速解决上述难题,你只需要非常简单的修改一下 JVM 的启动配置,就可以将运行。它能将攻击过程透明化,通过控制台可以非常清楚的知道系统什么时候、哪个模块、哪行代码遭受了哪种类型的攻击。同时还能够快速修复漏洞,只要将 OneRASP 和应用程序部署在一起就可以快速修复已知漏洞,不需要漫长的扫描 - 修复 - 扫描的过程。通过实时升级系统快速同步最新漏洞,避免零日攻击。

当然,只有 OneRASP 也并非万无一失,最优的解决方案是将 OneRASP 和网络安全解决方案、应用安全扫描与测试等安全防护系统结合起来,形成多层次立体的防御体系。如今各种攻击手段层出不穷,单靠其中任一技术来防范应用程序的安全是不科学的。但 OneRASP 永远是应用程序安全保护的最后一道无法逾越的壕沟,它可以帮你快速提升应用程序的安全级别,你再也不用担忧没有合格的安全工程师了。当然也确保你的企业不会作为下一个安全受害者登上头条。

OneRASP(实时应用自我保护)是一种基于云的应用程序自我保护服务, 可以为软件产品提供实时保护,使其免受漏洞所累。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 159,716评论 4 364
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 67,558评论 1 294
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 109,431评论 0 244
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 44,127评论 0 209
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 52,511评论 3 287
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 40,692评论 1 222
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 31,915评论 2 313
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 30,664评论 0 202
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 34,412评论 1 246
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 30,616评论 2 245
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 32,105评论 1 260
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 28,424评论 2 254
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 33,098评论 3 238
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 26,096评论 0 8
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 26,869评论 0 197
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 35,748评论 2 276
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 35,641评论 2 271

推荐阅读更多精彩内容

  • http://www.91ri.org/tag/fuzz-bug 通常情况下,有三种方法被广泛用来防御CSRF攻击...
    jdyzm阅读 4,126评论 0 5
  • 跨站请求伪造也被成为单击攻击或者会话叠置,简称CSRF或者XSRF。是一种恶意利用从网站信任用户获取未授权命令的行...
    留七七阅读 13,452评论 2 21
  • 前言 对于一个影子杀手而言,总能杀人于无形。前端也有影子杀手,它总是防不胜防地危害着你的网站 本篇打算介绍一些前端...
    Layzimo阅读 634评论 0 1
  • 风肆无忌惮的刮 远处天边乌云密布 天马上就要下雨了 路上的行人匆匆的往回走 鸟儿也叽叽喳喳的回巢去 突然格外想念远...
    落之痕阅读 255评论 0 4
  • 那年我12岁。 小学六年级下半学期,为了能考上对口的重点中学,我转到一个完全陌生的学校。离家有点远,我要自己走大约...
    linda_816f阅读 288评论 1 5