下面再来回顾一下整个攻击过程
在此次攻击成功的路径上,可修改xd_arbiter是第一个关键点,提供代理劫持框架7SWBAvHenEn.js是第二个关键点。有了第一个关键点,攻击者才能伪造可执行路径,将7SWBAvHenEn.js加入进来。
SWBAvHenEn.js文件在攻击中充当了攻击武器,本来有第一个关键点攻击者即可找到攻击方向,但炮弹精准度不足,7SWBAvHenEn.js文件所提供的功能加速了攻击者完成攻击的速度。同时,在网媒报道中,也提到了“即使用户更改了Facebook账号密码,令牌仍然有效”,这是导致账号权限被接管的主要原因。
作为防守方,如果仅仅使用URL白名单来防御往往是不够的。尤其是复杂的应用程序中,在面对跨域通信,PC端、手机端、移动平板等不同类型设备的多端接入提供多个接入点的情况下。而且还要考虑不同浏览器、同一浏览器不同版本的复杂情况下,即使使用X-Frame-Options 来防止跨域但也要考虑其兼容性问题。通过这个案例,也给开发人员提了个醒。在做某个程序设计时,在实现功能的前提下,尽可能遵循简单原则,参考标准的协议实现流程。对线上环境中不使用的文件,尽快清除。