说说“史上最大规模的DNS劫持”
| 2013-05-22 08:44
今天的微博讨论围绕着腾讯电脑管家应急响应的<史上最大规模“54DNS劫持”已得到有效遏制>进行,黑哥说了句:“猥琐流从科普到实际利用,看来需要比较长的时间~~”。确实是,很多猥琐的技巧,尤其是Web前端方面的,我们(极其一小撮群众)在玩啊玩,而黑产一旦也玩出价值了,那危害就来了,而且这些技巧经常是“看去很高级且很陌生”,导致很多安全团队在响应时速度没那么快,不过管家这次能这么快响应,确实很不错。
这里有个链接是说管家这次响应的(点击最后的“阅读原文”也可以看到):http://www.itbear.com.cn/ZiXun/2013-05/81995.html
里面有句话:
“此次被发现的DNS劫持攻击要远比以往严重,黑客利用宽带路由器的缺陷对用户DNS进行篡改——用户只要浏览一下黑客所掌控的WEB页面,其宽带路由器的DNS就会被黑客篡改,因为该WEB页面没有特别的恶意代码,所以可以成功躲过安全软件检测,导致大量用户被DNS钓鱼诈骗。”
这次攻击主要是攻击了TP-LINK路由器。
其实这是一起很经典的CSRF攻击(不了解这个攻击的也可以先往后看),我不做具体考据了,大概是08年的blackhat大会上有老外公布了针对路由设备的CSRF攻击,之后攻击技巧一直在进化,包括HTML5的一些技巧使用。我08年还有去年的两个PPT里都提到了针对内网攻击的思路。这类攻击一直没引起重视,直到被黑产利用了。(相关资源在最后列出)
微博上在热烈讨论时,@iceyes汪利辉给出了2年前茄子的一篇文章《Http Authentication Url and csrf = Router Hacking !!!》: http://hi.baidu.com/kpstfbahmmalqre/item/008121262c7802112b0f1c89
建议大家看看,这次大规模的攻击原理应该就是这样,可能会有新技巧,不过不影响大家理解攻击原理。
步骤大概是:
1. 攻击者诱骗受害者通过浏览器访问一个有CSRF攻击代码的页面; 2. 受害者访问后,这个页面里的CSRF代码开始执行; 3. 执行第1个CSRF:用默认账户密码登录默认路由IP地址(比如admin/admin登录http://192.68.1.1),这些默认的可以形成一个列表,遍历就行; 4. 第1个CSRF成功后,目标路由设备会有个合法的Cookie植入到受害者浏览器端; 5. 执行第2个CSRF:将DNS的IP修改为攻击者准备好的服务器IP。这次的执行,浏览器会带上第1次的合法Cookie,所以修改可以成功; 6. 用户的访问请求就会经过攻击者的这个服务器,攻击者可以做各种劫持了;
防御:
防御这个不太指望TP-LINK等路由厂商发布固件升级,个人用户可以这样:
1. 修改默认的口令与内网地址段会比较好,不过不一定就安全了; 2. 本地绑定不错的DNS服务,如8.8.8.8,不过似乎不稳定了? 3. 这次攻击在IE下估计无效; 4. Firefox+NoScript一直是一个绝佳的组合;
猥琐的方式在持续,希望大家重视:)
相关资源:
1. 史上最大规模“54DNS劫持”已得到有效遏制
http://www.itbear.com.cn/ZiXun/2013-05/81995.html
2. Http Authentication Url and csrf = Router Hacking !!!
http://hi.baidu.com/kpstfbahmmalqre/item/008121262c7802112b0f1c89
3. @ftofficer_张聪 在微博上推荐的Blended Threats and JavaScript: A Plan for Permanent Network Compromise 值得一看:
http://media.blackhat.com/bh-us-12/Briefings/Purviance/BH_US_12_Purviance_Blended_Threats_WP.pdf
http://l4.yunpan.cn/lk/Q5PA6rGSUPUmI
4. CSRF-苏醒的巨人
http://vdisk.weibo.com/s/meqNz
5. JavaScript安全从浏览器到服务端
http://vdisk.weibo.com/s/mernF