科技: 人物 企业 技术 IT业 TMT
科普: 自然 科学 科幻 宇宙 科学家
通信: 历史 技术 手机 词典 3G馆
索引: 分类 推荐 专题 热点 排行榜
互联网: 广告 营销 政务 游戏 google
新媒体: 社交 博客 学者 人物 传播学
新思想: 网站 新书 新知 新词 思想家
图书馆: 文化 商业 管理 经济 期刊
网络文化: 社会 红人 黑客 治理 亚文化
创业百科: VC 词典 指南 案例 创业史
前沿科技: 清洁 绿色 纳米 生物 环保
知识产权: 盗版 共享 学人 法规 著作
用户名: 密码: 注册 忘记密码?
    创建新词条
科技百科
  • 人气指数: 4489 次
  • 编辑次数: 2 次 历史版本
  • 更新时间: 2009-12-19
高兴
高兴
发短消息
高兴
高兴
发短消息
相关词条
探访中国黑客圈
探访中国黑客圈
匿名者
匿名者
DEF CON大会
DEF CON大会
2012全球越狱大会
2012全球越狱大会
斯诺登受困莫斯科
斯诺登受困莫斯科
斯诺登B计划
斯诺登B计划
TAO组织
TAO组织
Pwn2Own黑客大赛
Pwn2Own黑客大赛
手机解锁合法化
手机解锁合法化
黑客入侵布什家族
黑客入侵布什家族
推荐词条
希拉里二度竞选
希拉里二度竞选
《互联网百科系列》
《互联网百科系列》
《黑客百科》
《黑客百科》
《网络舆情百科》
《网络舆情百科》
《网络治理百科》
《网络治理百科》
《硅谷百科》
《硅谷百科》
2017年特斯拉
2017年特斯拉
MIT黑客全纪录
MIT黑客全纪录
桑达尔·皮查伊
桑达尔·皮查伊
阿里双十一成交额
阿里双十一成交额
最新词条

热门标签

微博侠 数字营销2011年度总结 政务微博元年 2011微博十大事件 美国十大创业孵化器 盘点美国导师型创业孵化器 盘点导师型创业孵化器 TechStars 智能电视大战前夜 竞争型国企 公益型国企 2011央视经济年度人物 Rhianna Pratchett 莱恩娜·普莱契 Zynga与Facebook关系 Zynga盈利危机 2010年手机社交游戏行业分析报告 游戏奖励 主流手机游戏公司运营表现 主流手机游戏公司运营对比数据 创建游戏原型 正反馈现象 易用性设计增强游戏体验 易用性设计 《The Sims Social》社交亮 心理生理学与游戏 Kixeye Storm8 Storm8公司 女性玩家营销策略 休闲游戏的创新性 游戏运营的数据分析 社交游戏分析学常见术语 游戏运营数据解析 iPad风行美国校园 iPad终结传统教科书 游戏平衡性 成长类型及情感元素 鸿蒙国际 云骗钱 2011年政务微博报告 《2011年政务微博报告》 方正产业图谱 方正改制考 通信企业属公益型国企 善用玩家作弊行为 手机游戏传播 每用户平均收入 ARPU值 ARPU 游戏授权三面观 游戏设计所运用的化学原理 iOS应用人性化界面设计原则 硬核游戏 硬核社交游戏 生物测量法研究玩家 全球移动用户 用户研究三部曲 Tagged转型故事 Tagged Instagram火爆的3大原因 全球第四大社交网络Badoo Badoo 2011年最迅猛的20大创业公司 病毒式传播功能支持的游戏设计 病毒式传播功能 美国社交游戏虚拟商品收益 Flipboard改变阅读 盘点10大最难iPhone游戏 移动应用设计7大主流趋势 成功的设计文件十个要点 游戏设计文件 应用内置付费功能 内置付费功能 IAP功能 IAP IAP模式 游戏易用性测试 生理心理游戏评估 游戏化游戏 全美社交游戏规模 美国社交游戏市场 全球平板电脑出货量 Facebook虚拟商品收益 Facebook全球广告营收 Facebook广告营收 失败游戏设计的数宗罪名 休闲游戏设计要点 玩游戏可提高认知能力 玩游戏与认知能力 全球游戏广告 独立开发者提高工作效率的100个要点 Facebook亚洲用户 免费游戏的10种创收模式 人类大脑可下载 2012年最值得期待的20位硅谷企业家 做空中概股的幕后黑手 做空中概股幕后黑手 苹果2013营收 Playfish社交游戏架构

2008年美国骇客年会 发表评论(0) 编辑词条

目录

美国骇客年会 Black Hat 2008 观察编辑本段回目录

2008.08.25  

编者按:全球瞩目的信息安全会议Black Hat USA 2008上周在美国拉斯维加斯开幕,众多的安全厂商和独立安全研究人员都在会上发表了自己最新的研究成果。作为亲身经历的Wayne,将自己的所见、所闻、所想与大家分享。

会场就在我住的旅馆的对面,但是还是很早起床,因为每天都很忙,除了听一些 talk 还有很多人要碰。今天天气很好,有太阳时才发现我房间看出去的view还不错:

到了会场,今年一样布置得很漂亮:

注册之后,我先去找负责媒体的 Dirk 跟 Nico。不是要拿免费的 pass,我已经付全额了,但是我要拍照,需要先跟他们 check 过,确定今年大会的规则。尤其是之后的 DEFCON,需要更加小心。结果很顺利,规则都没变,大会还给了我一个 press 的名牌,让我可以大方的拍照……great!感谢你们,Dirk and Nico!

Black Hat 今年第12年,人非常的多,而且听众的技术都有一定的水準,年龄层与产业皆涵盖得很广,今年一共有8个track一起举行,分别是:Root Kits、0-day、App Sec(应用程式安全)、Bots & Malware(恶意程式)、Deep Knowledge、The Network (网路安全)、Over the Air(无线网路安全)以及 Reverse Engineering (逆向工程)。

一去就忙着跟一大堆人打招唿,看来所有认识的厂商都到了,明年阿码也应该要展,但是我们一年真的展太多了。还好我早到,跟所有人打完招唿就差点错过了开场跟 keynote。

大会照往例,由大会主席 Jeff 开场。看起来还是这么年轻,而且开场简洁,很好!

第一天的 keynote 由 London School of Economics (LSE)的 Ian Angel教授开场,题目是“Complexity in Computer Security--A Risky Business”,没有特别讲什么新的,但是把当前资安的挑战用很好笑的方式讲得很清楚:

他的看法是,目前资安没有解决方案,只有事件发生的可能与造成的影响(there are no solutions, only contingencies),所以我们就应该:尽人事听天命,然后保持愉快的心情(Start the day with a smile and get it over with)。您觉得呢?

这里是他在现场接受采访的视频下载地址:http://www.youtube.com/watch?v=x5dXfi4xIhY&eurl=http://armorize-cht.blogspot.com/2008/08/black-hat-2008.html

听完 keynote 我们前往 Jared DeMott的逆向工程 talk,题目是:“AppSec A-Z”。Jared 是“Fuzzing for Software Security Testing and Quality Assurance”一书的作者之一,并创办了 VDA Labs。Jared 写了几个免费的工具,包含 Win32 DLL injection 用的 pyfault,以及叁个 fuzzing 用的工具 EFS/GPF、cmdline、以及ikefuzz。Jared 也是2007年l@stplace二次拿下 DEFCON CTF 冠军时的一员。

我是觉得,虽然题目是逆向工程,其实整个演讲就是之前五月他讲的「Onion, not parfait: Today's security check-up and malware for the rest of us」的衍伸,这些新的逆向技巧主要针对目前 Web 上的各种恶意程式之分析所用。看来 Web 成为散播 malware 主要管道后,由于这些 malware 加壳的方式都很特别,逼出了很多这样的研究。

介绍的技巧先不说,因为我要写这么多天的观察,没办法谈细节,但是我觉得 Jared 一开始的介绍很有系统性,把恶意程式的分析分成动态与静态两种,然后循序渐进分门别类的介绍。我觉得这是讲师该有的责任-如何讲一场让大家都听得懂得演讲,而不是自己讲爽的就好,而别人只感觉「似乎很屌」但是实际上却听不懂。就技术而言,这次听来听去我都觉得这些讲师用的技巧没有Birdman 在 HackAlert 中用的技巧好,Birdman 的技巧都是快、準、狠,简单又一针见血,可能是长期被对岸训练出来的缘故吧!

听到一半自己看完投影片的 PDF 档,觉得差不多了,闪人,看看还有谁可以听的,同时间的还有 Billy Rios 跟 Nitesh Dhanjani(作者:Network Security Tools (O'Reilly)、HackNotes :Linux and Unix Security (McGraw-Hill))的演讲,但是他们的演讲我最近在其他的会中都听过了,所以跳过,来看看 NMAP 的 Fyodor Vaskovich 好了!

Fyodor 的讲场挤到连站的位子都没有。Fyodor 这次讲的是 internet scanning,也就是大规模透过 internet 的网路层扫瞄。我记得 web 的威胁还没有起来时,讲到 internet security 或 web security,一定会提到 NMAP,NMAP 似乎也是每个骇客(还有网管)必学的第一套工具,也是电影裡的常客。我想很多人选这场也是为了亲自见 Fyodor 一面吧?

Fyodor 开场时说的话让我印象深刻:“Internet scanning 非常难,还有许多的挑战,但我想这也许是好的,至少这让我站在台上给演讲,不然我得去学那个叫什么 "XSS" 的鬼东东了!”

Fyodor 说这次 Internet scanning 的计划,最困扰他的是,常常 ISP 会把他的家的网路停掉:

ISP:“先生,我们把你的网路停掉了,因为根据你的流量分析,你中了木马,你的木马正在做很多不法的事情,你已经成为僵尸网路(botnet)的一员了!”

Fyodor:“把我的我网路还给我,那些流量都是我刻意产生的,我有目的的……”

ISP:“可是这些流量是违法的!”

Fyodor:“我是 NMAP 的作者,我在研究并发展更强大的版本……”

ISP:“喔,你就是 "那个" Fyodor?请受小弟一拜...NMAP 会有新版?太帅了,您辛苦了!”

根据这次 Fyodor 大规模扫瞄计画的结果,port 80 仍然是最常见的开放 port,其他依序是:80 (http), 25 (smtp), 22 (ssh), 443 (https), 21 (ftp), 113 (auth), 23 (telnet), 53 (domain), 554 (rtsp), 3389 (ms-term-server)。

Fyodor 讲了很多加速 NMAP 的技巧以,例如 stateful firewalls 适合用 SYN 来 scan,而 stateless firewalls 适合用 ACK 来 scan等等,也介绍了 NMAP 的新功能,例如可以设定最大与最小流量,scripting engine,还有会画 network map 的新图形介面 Zenmap,以及可以比对两次扫瞄差别的 Ndiff 等。

Fyodor 的投影片可以到这裡下载:http://insecure.org/presentations/BHDC08/

接下来决定去 Dan kaminsky的演讲“Black Ops 2008 -- Its The End Of The Cache As We Know It”,因为这次他公开的 DNS 弱点太红了,预计会大爆满。

这个 DNS cache poisoning 的弱点 Dan 在七月初就已经公开:

资安之眼, US CERT TA08-190B / VU#800113, CVE-2008-1447

其实自从 Dan 七月初公开此 DNS 弱点到现在,一方面由于资讯不足(一方面要留到 Black Hat 才公布,一方面也让厂商有足够时间初修补程式),造成很多声音说此漏洞早就有很多研究员发现了,但是另一方面,却也很快被其他人猜出整个漏洞的细节,而后很快地就有人写出了攻击程式(例如:MILW0RM:6122、MILW0RM:6123、MILW0RM:6130)。Dan 则在七月24日 Black Hat 的会前会上公布了漏洞的细节。在这裡註册后可以看到当时的录影。

来到 Dan 的演讲,果然感受到美国这些大型会议的特色:好的讲师,大家挤到连站的位子都没有;坏的讲师,一开讲五分鐘之后,你会发现大家一窝峰往外衝,底下右边是某讲师的演讲,左边是 Dan 的:

先不论这个演讲能听到些什么(细节之前都公布了),但是 Dan 的确是一个很好的演讲者,他的演讲生动有趣,我是从头笑到尾。很多人说都没听到新的东西,也很多人说,Dan 不需要解释这么多 DNS 漏洞的影响,因为 man-in-the-middle 后什么安全当然都别谈了,但是我是觉得,讲这些就忘了:好笑,有趣,一直是这个会议的精神之一。不论 Dan 发现的漏洞是否其实简单,其实很多人有提到过了,他的演讲非常生动,绝对让大家对此漏洞以及整个 DNS 架构的不安全性印象深刻,以及他一个人真的推动了所有厂商对此漏洞的重视并出修补程式,这些我觉得都是我很欣赏他的原因。

看看右图,Dan 讲得手足舞蹈的,左图,Dan 的演讲真是老少咸宜,大家都来看他的风采 :)

这个漏洞的特色之一,是影响了大多数的厂商。Dan 公布后,主要的 DNS 上修补程式的速度多快呢?可以按这裡下载 avi 档:http://www.doxdns1.com/yellow-7days-with-percentage.avi,这裡有对于此 DNS 漏洞的详细图解。

以下是 Dan 在会议中接受的访问的视频地址:http://www.youtube.com/watch?v=R-SSVxsH7vw&eurl=http://armorize-cht.blogspot.com/2008/08/black-hat-2008.html

听完了 Dan 的,接下来去找 PDP(Petko D. Petkov)(个人网站,大会介绍),题目是:「Client-side Security」。PDP 讲的就跟我们做得有关了,所以虽然今年他在很多地方讲的我都听过了,但是还是来捧场啦!PDP 本来就很多 fans,去年公开 Gmail 的 CSRF 漏洞并示範给 ZDNet 确认后(资安之眼),其研究更受到大家的注意。

PDP 的这个演讲跟他之前的演讲差不多,讲了很多浏览器的外挂(plugins)产生的漏洞,其中包含了Adobe PDF(PDP、资安之眼),Apple Quicktime(PDP、资安之眼),SecondLife(PDP),Flash UPnP(PDP-1、PDP-2、资安之眼),Skype(PDP、资安之眼-1、资安之眼-2)等。

最后 PDP 提到了第四代 rootkit 的观念,认为以后 rootkit 会存在于浏览器上。我自己则是认为,浏览器的外挂安全问题,还会存在好一阵子,加上在浏览器上执行的恶意程式,基本上都是以 script 的形式存在,而非执行档,而 script 的变形非常方便以及容易(我之后会介绍一场 DEFCON 有趣的演讲),这样的情况会彻底击败以样本(signatures / patterns)为基础的防御技术,如多数的防毒软体。

PDP 这次演讲的投影片可以在这裡下载:http://lab.gnucitizen.org/presentations/Client-side_Security_-_Slides_-_BH.pdf?attredirects=0

听完 PDP,去看好朋友 RSnake (ha.ckers,sla.ckers,SecTheory,大会介绍)的演讲。

看到 RSnake 让我想到这次 Kuon 没有来有点可惜。他只要有碰到这些讲师都会有问不完的问题……

(上:Kuon 于 OWASP-WASC US 2007)

RSnake 这次花了很多时间讲他跟 Google 之间不是那么顺利的互动。我想,弱点揭露(vulnerability disclosure 一直是资安研究人员最困扰的议题之一,听 RSnake 在台上讲,我想到我自己很多不是很愉快的经验。我们做源码检测,手上有很多美国大厂的 0-day。如果已经是我们的客户,那沟通方式很简单,但是如果还不是我们的客户,有时候就复杂了。通常对方第一个动作就是传一份保密合约(NDA)过来让我们签,而这些保密合约,我给我们公司律师检阅后,从来没有一次是律师跟我说可以签的。基本上签了之后,我们丧失任何在公开场合讨论此漏洞的权力(即使在修改了之后),对方也不会有任何承诺何时会修正或公开时会不会提及是我们发现的。每次这种会议不论是台上的讲师或台下的私人聚会,弱点揭露永远是热门的话题。这次 DEFCON,MIT 学生被法院禁止讲捷运 RFID 卡的破解方式,RSnake 还有很多其他讲师也在演讲中对弱点揭露提出看法,我也有很多自己的经验,所以我会另外写一篇探讨。

基本上,RSnake 发现 gmodules.com 这个网域有 XSS 漏洞,但是 Google 却觉得此非 google.com 网域,即使有 XSS 漏洞,骇客也不会因此而能偷到 google.com 的 cookie,所以没有修復的必要。

呵呵,问题是,XSS 漏洞不只是可以偷 cookie 而已,也可以用来 phishing或挂马。gmodules.com 这个网域有 XSS,如果这不重要的话,那我想 gmail.com 是否一样呢?如果攻击者像是利用 SEO Posioning 那样的利用 GModules.com XSS 来挂马,那么 Google 会怎么看待这样的问题?

这让我想到去 Black Hat / DEFCON 之前,我受邀到国防部为叁军的资安人员讲一场演讲,同时受邀的有叡扬资讯的某先生。这位先生一开场就介绍资安之眼的「TW 网站沦陷资料库」:各位如果有 XSS 的话,会被登入在这个资料库中喔!千万别让自己的网站上了这个资料库... 这位先生,您不知道贵公司也已经上了这个资料库吗?随后这位先生大力建议,网站不要被攻的方法,就是尽量裡头不要摆东西,骇客攻进来发现没有东西可以拿,也没有资料库,就不会对你的网站有兴趣了...这位先生,您没有听过什么叫 botnet (僵尸网路)吗?骇客攻机器只是为了拿资料,我还第一次听到...那天我在台下真的是听不下去了!

回到主题,RSnake 这个 talk 我很喜欢,因为我最近开发阿码外传,选择用 Blogger,也发现很多这样子的问题。Blogger 之前非 google,上面推荐了摆在很多第叁方的 widget,这些 widget 目前仍大量被使用。Blogger 被 Google 买了之后,大家相信 Google 也因此相信 Blogger,但是这些摆在第叁方的 script 安全吗?

接下来 RSnake 就介绍了他做的许多可以摆在 gmodules.com 下的恶意的 Google gadget,包含会扫瞄网路的,会偷资料的...等等。这部分技术上没什么难度主要是,但是听起来蛮有趣的 :)

最后,RSnake 介绍了gmodules.com 的proxy cache 弱点,可以在上面放恶意程式,而这种恶意程式,他取名做 「GMalware」。

最后一场,我跳过了美国机敏单位与骇客大拜拜的「Meet the Feds」,因为反正DEFCON也有,而去了Paul Royal 的演讲:「Alternative Medicine: The Malware Analyst's Blue Pill」。Paul Royal 是 Georgia Tech Dr. Wenke Lee 的学生,主攻 binary 分析,目前是 Damballa 的首席研究员。

Paul Royal 在他演讲的简介裡,把现在恶意程式设计与侦测的挑战讲得很清楚:对于动态侦测,恶意程式有各种方法侦测 sandbox,对于静态侦测,恶意程式有各种不同加壳技术,所以恶意程式设计与侦测,就是一场永无止境的赛跑。Paul 介绍如何利用中央处理器对虚拟化(virtualization)的硬体支援(例如 Intel 的 VT),以建构出一个 KVM 式的 sandbox,使得恶意程式无法侦测出,其已经被置入 sandbox 执行,并正在被分析。Royal 有当场解释 source code,并秀出此研究的雏形(prototype):Azure,与之前其他研究的雏形:Renovo 和 Saffron。

Paul 用了 15 套加壳程式来比较这叁个技术的差别:Armadillo, Aspack, Asprotect, FSG, MEW, Molebox, Morphine, Obsidium, PECompact, Themida, Themida VM, UPX, UPX S, WinUPack, Yoda’s Prot,其中 Azure 侦测到所有的恶意程式,而 Renovo 只侦测到 13 隻,Saffron 只侦测到 10 隻。我想叫 Birdman 跑一下我们的 Archon Analyzer (HackAlert的引擎)比比看……顺便跑一下趋势跟赛门好了。

最后,我发现今年 Black Hat 也有绵羊墙了!绵羊墙(wall of sheep)(CNET 报导:中文、英文)一直是 DEFCON 有趣的特色之一,而今年也来到了 Black Hat。绵羊墙团队约有十位核心成员,他们全天候监控大会的网路封包,抓到与会者的机密资料,如帐号密码或信用卡号码等,就贴到绵羊墙上去恭喜他。


(我来不及问绵羊墙可不可以照,上面这张不是我照的,是 wired 的 blog 上的)

绵羊墙团队不使用任何解密工具,所以墙上的绵羊都是自己使用了明码的通讯(没有加密的 FTP、POP、SMTP...)而光荣上榜的。CNET 这次有访问绵羊墙的团队:

有趣的是,今年在 Black Hat 有叁位法国的记者(我有媒体牌所以我在媒体室有碰到他们),没有先告知大会工作人员,就自行 sniff 媒体室裡的有线网路封包,抓到其他媒体记者的帐号密码后,通知绵羊墙的工作人员,将这些「媒体绵羊」希望加入榜单。老兄... 你没听说 Black Hat 这些工作人员的风格吗?这是他们的会,怎么会让你们来撒野?

主要是,美国联邦法律规定,被监听者需要知道自己被监听,而 Black Hat 大家都知道无线网路是被监听,被扫瞄,充满 0day 攻击的。可是记者室裡的网路,大会是宣称安全的,因为许多记者不是技术出身,不能要求他们懂得如何设定安全的连线(这样喔?)...

整个报导在这裡(照片也是这裡来的)。最后这叁位记者被大会驱逐,并且也被禁止参加 DEFCON 以及未来所有的 Black Hat / DEFCON。

tgdaily 的记者 Humphrey Cheung 有趁乱拍下了这叁位记者当时秀的画面,除了 eWeek 之外,CNET 也在榜上

(这张是 Humphrey 照的,故事在这裡,另外 CNET 也有两篇报导:CNET 报导-1、CNET 报导-2)

对了,这裡有被偷帐号密码的 eWeek 记者 Brian Prince 的自白:eWeek 在 Black Hat 如何被骇的(How eWEEK Got Hacked at Black Hat)。

疑似也被偷了帐号的 CNET 记者 Elinor Mills 女士也写了一篇可爱的自白:“与我同桌的记者锁定要骇我(Targeted for hacking by reporters at my table)”。报导中她说:“我报导了各资安会议十四年了,觉得很幸运一直没有被骇,一直到这星期四...事情是这样的……”McAfee 的资深 VP 对我说:在这行够久的人,一定都在某个时间有被骇过。这让我好过一些,但是我无法抹去被侵犯(violate)的感觉,就好像一阵风把我的裙子吹了起来,让我的内在暴露给一群陌生人看到一样,也许这是在这行必须接受的风险,但是从现在开始我都会穿保险裤的(overalls)。」

我对这件事有很深的看法,我会再写 blog。基本上,就像锁匠一样,骇客最重要的是纪律。我们会开锁,不代表我们可以去吓别人;骇客的功夫我都很尊敬,但是行为不约束的我只有不屑。这些改天再写吧!

我看会来后大家最好换一下帐号吧...应该说最好换一台电脑吧,用什么扫毒软体确定?阿码的 Archon 吗?不用了啦!应该都中了,直接 format 吧!不过现在很多都会跑到 bios 裡面去,我看换一台比较快啦!

大会结束后我去了一个私底下约的聚会,内容就不能公开啦!只能说现在 rootkit 都已经军规化了,真恐怖!

说真的如果不是要来 Black Hat / DEFCON,我是绝对不会想到这边来的。我去过不少城市,但是了解我的人应该都知道,这边除了骇客年会,还真没有东西可以吸引我。

今天的 keynote 是美国政府资安界的当红新人炸子鸡 Rod Beckstrom,大家都来看他的风采。Rod 是我们营运长 Matt 的 Stanford MBA 学长,也是一位有名的创业家,他之前以 twiki 作者的身份,创办了 TWIKI.NET。今年叁月20日,他正式接受美国国土安全部(DHS、Department of Homeland Security)的邀请,担任底下一个新成立的单位:「国家资安中心(National Cyber Security Center、NCSC)」的首席。NCSC 是一个新的跨部门单位,负责协调各资安部门之间情报的交换。

NCSC 的成立以及这项任命,是源自于布希于今年一月签同的一项机密的指引,主要用以扩大情报界对于目前日益严重的针对美国的网路攻击之掌握度,因为之前美国情报单位对于资安攻击的掌握过渡零散,缺乏一个中央协调的组织。Rod Beckstrom 其实并没有资安背景,但是他有创业家的经验,对业界很熟,成功创办 TWIKI.NET 帮助企业用 wiki 观念协调资讯交换,以及着有很畅销的「The Starfish and the Spider」一书,提出新的分散式企业管理概念,这些都是美国国土安全部(DHS)看中他的原因。

Rod 讲了很多美国政府的历史与政府在资安方面的历史,基本上我觉得就是帮政府建立形象啦,表示美国政府从电报的年代就很懂资安与情报的重要。我对美国政府的历史没有兴趣,我对骇客的历史比较有兴趣,但是我觉得 Rod 的加入对布希政府在形象上一定是一大加分,因为 Rod 感觉很有业界经验,不会让外界觉得政府都闭门造车。

Rod 讲了他认为目前资安难做的原因,我非常的认同。他说,有些球类,进攻难,防守易,例如足球,所以分数都不高(几比几);有些球类,则是进攻容易,防守难,例如篮球,所以分数都很高(可以破百)。资安比较像篮球;事实上在资安里面,防守比攻击要难太多太多了,这也就是资安难做的原因。

这个我完全认同。是的,要有好的防守,必须很懂得敌人,很懂得敌人所用的攻击方法。所以重要的骇客年会我们都会派人参加。但是这只是基本功而已。懂得攻击之后,要设计防守,又更加困难。为什么?因为攻击成本低,防守成本高!就拿防毒软体来说,其实测不到,不是防毒厂商没有样本,可是防毒软体不能佔用系统太多资源,所以样本不能无限制的长大,必须有所选择,在尽量不影响到系统效能的前提下,达到最高的侦测率。

又像如果打生物战,那么一样,设计病毒,只需能感染让人致死就好,可是设计解药,不但要杀死病毒,还要保存人体不被破坏。不论在网路空间或实际生活中,攻击总比防守简单太多,这是资安难做的原因。再加上攻击处于主动,何时攻击可以自行选择,但是防守处于被动,何时被攻击无法预期,所以无时无刻都需要检查与防範,而这些无时无刻都需要做的检查与防範,都是成本的增加,这也是资安难做的原因。

另外 Rod 探讨了一些我们在业界常探讨的资安的投资报酬率问题。感觉他有观念,但是毕竟他之前不在资安产业,探讨的东西都还太浅了些。以下是两张投影片,基本上是说,如果 x 轴是资安的投资,y 轴是因为资安投资而减低的损失,那么需要找到投资报酬率最高的点。但是 Rod 你说用一条 45 度的线跟曲线取交点,是这样吗?我高中毕业很久了,博班资格考也没考微积分,但是我怎么直觉觉得,要分析要看此曲线斜率,所以要做一下一次微分后分析...

听完之后去帮 Jeremiah 捧场,听他同事 Arian Evans(大会)讲“Encoded, Layered, and Trancoded Syntax Attacks: Threading the Needle past Web Application Security Controls”

这个题目就不翻译了,基本上整个演讲在说一件事:Web 上的攻击,如果加上各种不同的编码方式,那么穿透率几乎可以达 100%,没有任何 Web 防火墙可以阻挡。这是指 Web 防火墙设定成利用黑名单的情况下,如果花时间设白名单的话,一样可以阻挡,可是一般稍微有规模的站,我看到大部分都是用黑名单方式,因为设白名单是很繁琐的事情,需要找到好的厂商才行。

讲到这里,其实我深深觉得资安业,找对公司比找对产品重要多了。不论是源码检测或 Web 防火墙,如果卖方只是想塞产品给您,那么买了再好的,牌子在大的产品也没有用,一样会失败,最后还是会发生资安事件。如果找对好的 partner,有心服务客户,长期经营,技术能量也够,那即使用免费的开放源码 ModSecurity 做 Web 防火墙,一样能设定到让您高枕无忧。其实对方有没有心做服务,还是只想塞产品,还有对方的技术团队有没有实力,通常很快就能看出来。

这张明天要去卖 Arian 了,拍得太好了 :)


投影片一拿出来就开始讲今年初进行到现在的大规模 SQL Injection 加网页挂马攻击(阿码新闻稿,PC World(IDG),ITHome)。Arian 拿当初 Neil Carpenter 蒐集到的攻击字串做例子:

2008-03-08 13:37:13 /dir1/archive.asp id=z%27%20ANd%20char(124)%2Buser%2Bchar(124)=0%20and%20%27%25%27=%27

这是一行 web server 的 log。在这个例子里,%XX(例如 %27、%20、%2B)是 URL encoding 的一部份,会被 web server decode,decode 完变成:

2008-03-08 13:37:13 /dir1/archive.asp id=z' ANd char(124)+user+char(124)=0 and '%'='

然后整个 SQL injection 字串,会被 SQL server 解码成:

id=z ANd |user|=0 and '%'='

不要说多层编码,即使只用一层的 URL 编码,就可以因为 UTF-8,而使同一个字串几乎有无限种编码可能。譬如一个简单的:

GET / indexA.html HTTP/1.1

就可以被编码成:

GET /index%41.html HTTP/1.1
GET /index%2541.html HTTP/1.1 (double percent)
GET /index%%34%31.html HTTP/1.1 (double nibble)
GET /index%%341.html HTTP/1.1 (first nibble)
GET /index%4%31.html HTTP/1.1 (second nibble)

然后如果再利用 2-byte or 3-byte UTF-8 编码的话,变化又更多了。

但是这整个演讲的内容其实对我来说一点都不新,这些编码来穿透 Web 防火墙的方式大概四五年前很多书还有 paper 都已经介绍得很完整了。整理起来,整个演讲的重点就两个:

一、由于 UTF-8,攻击字串几乎有无限种编码方式。

二、攻击可以分层的编码,像上述例子,一层给 web server 解,一层给 SQL server 解。或穿插 URI % encoding 或 UTF-8 encoding、HTML decimal entity encoding、SQL server encoding(char())等混合使用。

听完后去听好友 Billy Hoffman的演讲:“击败 javascript 分析工具(Circumventing Automated JavaScript Analysis Tools)”。Billy着有「Ajax Security」,上次在 RSA 2008 办签名会,我一口气签了很多本回来送朋友,让他高兴得不得了。既然是 Billy,当然要照帅一些啰!有没有注意到左下方 Billy 的笔电?併购后笔电也该 HP 啰!

今年讲网站挂马的演讲真是多,其实这个题目去年就很红了,今年年初再加上两点,使得这个议题红到不行:

一、年初的大规模自动 SQL Injection 加 网页挂马(阿码新闻稿,PC World(IDG),ITHome)

二、网路挂马所使用的 javascript 语言,其编码与变形太过容易(除了大家熟悉的 MPack 自动化犯罪工具包,现在线上的 javascript 编码/变形服务也到处都是:看这里和这里。)

Billy 在他的摘要里就直接提到:“拜 MPack 所赐,大部分恶意 javascript 都编码过
(Obfuscated JavaScript payloads are the norm thanks to malware frameworks like MPACK.)”

的确,根据“IBM X-Force 2008 年终趋势报告(IBM X-Force 2008 Mid-Year Trend Statistics)”,2007年后半年,网页挂马中 javascript 编码变形以达 100%:“A year later,
in the second half of 2007, Web browser attack obfuscation approached 100
percent.”

在这个 talk 中,Billy 讲了恶意程式变形技术与侦测技术间永无止境的斗智游戏。这是我很期待的一个 talk,因为跟我们 HackAlert 非常相关。

Billy 今年的研究延续去年 Ben Feinstein跟 Daniel Peck 讲的 Caffeine Monkey 。

OKOK,继续之前,我们先来看看这些人到底在讲什么。

现在的大规模自动网站挂马,ITHome)都是利用 SQL Injection 漏洞在网页里安插恶意的 javascript。这些 javascript 都经过变形(或称编码)。利用 MPack,甚至可以动态变形,也就是说,每一个访客所下载到的网页,里头的 javascript 都经过不同的变形。

变形的 javascript 到底长什么样子?我们就拿我之前写的“神秘 Web 攻击绑架剪贴簿”来看好了,其中用的一段範例 javascript:

function IE_ClipBoard()
{
if (window.clipboardData) {
    window.clipboardData.setData("Text","Hello from Wayne!");
}
}

1、好,现在我们用 malwareguru 上的线上编码工具 Vanishing Point Packer(网页、malwareguru 上提供的线上 demo),把上面这一段 javascript 贴进去,按「pack」,塬本的 javascript 就变成了以下这段了:

eval(function(p,a,c,k,e,d){e=function(c){return c};if(!''.replace(/^/,String)){while(c--){d[c]=k[c]||c}k=[function(e){return d[e]}];e=function(){return'\\w+'};c=1};while(c--){if(k[c]){p=p.replace(new RegExp('\\b'+e(c)+'\\b','g'),k[c])}}return p}

('4 3(){2(1.0){1.0.5("8","7 6 9!")}}',10,10,'clipboardData|window|if|IE_ClipBoard|function|setData|from|Hello|Text|Wayne'.split('|'),0,{}))

2、网路上随便 Google 「javascript obfuscator」或「javascript packer」,可以找到一堆线上的服务,每一个变形出来都不太一样。举几个例子:4、中国的「网?免? 孤程?雪」线上服务:

t="97,108,101,114,116,40,39,72,101,108,108,111,32,102,114,111,109,32,87,

97,121,110,101,32,111,102,32,65,114,109,111,114,105,122,101,33,39,41,59"
t=eval("String.fromCharCode("+t+")");

5、嗯嗯,图很熟悉吧?各位 IT 应该都不陌生...是的,这种编码方式很受到前一波挂马骇客的喜爱,很多网站挂马都长得很像图 5...所以我们把这个「网?免? 孤程?雪」站的话面贴出来一下好了:

6、编码还可以分很多层,可以用不同的编码器编过几层。看到这些,我们想一想,现在很多 gateway 产品,都号称他们可以及时侦测与阻挡恶意网页...现在网路频宽都很大,在这么大的频宽下,一个 gateway 装置要 buffer 住所有的 HTTP response,然后即时的执行 javascript 解码,然后识别恶意程式...您相信吗?

看着5的图,您也许会想,编码过的 javascript 都有一些特徵,例如都是一堆的数字,侦测这些特徵,不就可以侦测到恶意的 javascript 了吗?问题是这会有很多的误判。因为塬本这些 javascript 编码器,都不是拿来做网站挂马的,而是用来保护 javascript 的智慧财产权的。Javascript 必须要在浏览器上执行,所以不论你花多少时间写 javascript,最后谁都可以拿到你的程式,因为 javascript 不会编译成执行档,而是直接以程式码的方式传到浏览器上,再由浏览器执行。所以为了要保护 javascript 程式不要轻易的被有心人研究,许许多多的程式设计师,都会将自己的 javascript 利用上述这些编码器编码或变形。也就是说,编码过的 javascript 不见得都是恶意的,很多大型网站上,拥有非常多编码过的 javascript,大部分商售的 javascript,也都经过编码变形。究竟有多少 javascript 编码器?很多,连 Yahoo! 都提供 Yahoo! 的 javascript 编码器,也介绍其他好用的编码器。

好吧,那到底该如何侦测呢?HackAlert用的是实际的浏览器环境,所以没有问题,不论什么样的 javascript 变形方式,或者此 javascript 攻击什么样的未知的 0day 弱点,反正只要试图攻击,就一定测得到。可是这样的技术要对 windows 环境以及各 browser 的构造很熟才行。

这次在 Black Hat / DEFCON,在会后的一些 meeting 中,我发现一个很有趣的现象,就是在侦测网站挂马方面,“使用者”(大银行,大企业,军方,情报单位)的功力,有时反而比厂商甚至讲师更强。探讨下来,因为网站挂马太严重了,可是厂商都没有好的解决方案,号称可以测到的,其实都是用静态分析或黑名单方式,没有办法即时,辨识率也偏低,所以这一年下来,“使用者”只好 DIY,自己利用 Caffeine Monkey(paper、投影片、程式码)或 spidermonkey 来侦测(SANS最近也玩了一下),但是就如同 SANS 的 Daniel Wesemann 说的:”But SpiderMonkey is only a JavaScript engine - it doesn't emulate the browser and doesn't even have a "document" or "location" object...“。Caffeine Monkey就是建构在Spidermonkey 之上。SpiderMonkey 是 Mozilla 的 javascript 执行器,但是不是一个浏览器,还缺很多环境,Caffeine Monkey 一方面设法补足,一方面增加了一些自动侦测的技巧。

Billy 今年的 talk,则是针对诸多以 SpiderMonkey 为基础的侦测方式做破解,列了一打以上的破解方式,不过基本上可以粗分为两类:

一、侦测抓网页的是否是真的人还是要侦测的机器人(执行 SpiderMonkey 之类的)

二、直接用一些方法,让以SpiderMonkey 为基础的的自动侦测失效。

对于(一),Billy 列了很多的方法,包含了 HTTP/browser fingerprinting、DOM testing and encrypting、Doman and Network testing、Execution environment testing、cross plugin communication testing 等等。Billy 的演讲是针对 SpiderMonkey 和 Caffeine Monkey 设计的,所以这次讲的方法对以这些为基础的技术或产品真的很有效。以这些为基础的产品很多吗?非常多,因为这些是开放源码的程式,现在很多公司都是看到客户有需要了,不做研究,不花功夫,拿一些开放源码的程式整合一下,就把产品推出了。有的时候从客户那边听到这些业务的语言,我真的不敢相信,怎么大家都这么敢虎!客户又不是笨蛋,你说你功能都有,其实是那一些开放源码堆起来的,客户难道就不会测试吗?我接触的客户技术水準都越来越高,这些说话不打草稿的业务,应该会越来越吃亏。

Billy 讲的方法,基本上对 HackAlert 都无效,因为 HackAlert 后端基本上就是一套跟使用者一模一样的环境,是我们自己开发的,不是拿开放源码的程式凑的。

对于(二),则分两方面。一方面,因为 SpiderMonkey 毕竟不是整个浏览器环境,所以很容易可以用一些方法侦测出,执行的环境是「人」在用的浏览器,还是侦测用的环境。如果次侦测用的环境,那就不发动攻击,环境也就测不出来了。另一方面则是利用 SpiderMonkey 环境跟真正浏览器环境的不同,把 javascript 设计成,在 SpiderMonkey 环境下无法成功执行,那么 SpiderMonkey 就测不到了。

一样,对 SpiderMonkey 很有效,对 HackAlert 则无效。

但是看这两种攻击,其实用一句 Billy 最后讲的话就可以总结了:”现在我碰到的网站挂马越来越多是用 vbscript 而非 javascript。SpiderMonkey 和 Caffeine Monkey 都只支援 javascript,所以一旦恶意程式用 vbscript,所有这些侦测方法都完蛋了。“

写到这边,如果您回去看 图 6,左上角的第二个和第叁个按钮:”VB 网页加密“、”VBS 脚本加密“,也就说明了一切--在必要的情况下,骇客用 vbscript。

于是 Billy 在演讲中强调又强调,目前没有开放源码的 vbscript parser,造成他研究的瓶颈。我会后跟他说,vbscript 虽然是很烂的语言,但是文法还是能表示出来,我们约花一个月时间就做出 vbscript 的 parser 了。所有语言里面,vbscript 的语法最模拟两可,最难用 lalr 表示出来,但是解译不只需要 parser,还需要处理如 scoping 等等,几乎等于需要一个 compiler,所以即使他弄出了 parser,后面的功夫还很大。他问我们为何这么快可以完成 vbscript parser。问题是...我们本来就是源码检测的公司,parser 跟 grammar 对于源码检测或 compiler 的公司来说,是基本功。我们原本做 vbscript parser,是为了 CodeSecure 对 ASP 语言的支援,不是要侦测恶意程式。

至于我们的 vbscript parser,是否会用在 HackAlert 中,辅助侦测网站挂马呢?目前看起来没有必要。不论是 javascript 或 vbscript,这些都是 interpreted 语言,不是 compiled 语言。Interpreted 语言,动态可以产生新程式,语法也较不严谨,太多状态需 runtime 时才能决定,非常不利于静态分析技术。HackAlert 目前动态侦测方面,完全模拟使用者环境,侦测率很高,不需要再靠其他方式。

最后 Billy 你说我们的 vbscript grammar 可否开放源码,这我们得思考看看了。

这里可以看到 Daniel Peck (Caffeine Monkey 作者之一)
blog 对于 Billy 这场演讲的看法。

Billy 的演讲一向都很受欢迎,如果您想要听,他有一场 2007 年底在 Google Toolkit Conference 上讲的 Ajax Security:

Ok,我必须承认,在 Billy 演讲的中间,我落跑了 20 分鐘... 我去听了 Justin Clarke 的短演讲:「SQL Injection 蠕虫:为了兴趣也为了利益(SQL Injection Worms for Fun and Profit)」。看这就知道今年网页挂马热到什么程度了,竟然同一时间有两个演讲,逼不得已只好跟 Billy 请个假了!

Justin Clarke 是 Network Security Tools (O'Reilly)的作者,也是 SQL Brute 工具的作者。

Justin 主要就是讲今年年初开始的大规模 SQL injection 加网站挂马攻击,但是我发现,我们对这些攻击的掌握度似乎更快。基本上他所有讲的,我们在之前都公开过了:阿码新闻稿,PC World(IDG),ITHome

整理重点:大规模攻击,SQL Injection 指令设计得很好,针对微软的平台,利用 Google (?q=)找寻攻击点,SQL Injection 的目的是为了要挂马...等等。这边重点是,虽然 HackAlert 可以侦测挂马,但是为何会被入侵挂马?都是因为有 SQL Injection 漏洞,故需把程式改好,才是彻底解决之道。今天听到现在已经第叁场讲大规模 SQL 加挂马了,大家的 SQL 漏洞快修修吧!

听完又回去捧场 Jeremiah 了,这回他带同事一起讲:”Get Rich or Die Trying - ‘Making Money on The Web, The Black Hat Way’“。

Jeremiah 这次讲的,跟我上次安排他来台北(他blog的游记1、游记2,值得看)讲的”商业逻辑错误(Business Logic Flaws)(他的 blog、paper)“其实是一样的,只是多花了一些时间整理出更有去的内容:怎样可以利用这些逻辑错误来赚钱(其实也就是会造成什么损失啦!)。但是所介绍的逻辑错误本身,跟在台北讲的那场差不多。他带着年轻的同事 Trey 一起讲,感觉是要训练后辈,而 Trey 以这么轻的年纪,这么满的一间,台风算很好了,应该没让 Jeremiah 失望啦!

最后去了 Matthieu Suiche 的演讲:”Windows Hibernation File for Fun and Profit“。Matthieu 是专门分析 Windows 休眠档工具 Sandman 的作者。

他对于这次演讲的 blog 在这里,投影片在这里:PDF、PPTX,demo 环境在这里。其实内容跟我们在台北办的 SySCAN Taipei 2008 里 PK 讲的「犯罪现场: Windows 记忆体内容撷取与鑑识」差不多,基本上就是 demo 从分析记忆体或休眠档,可以取出非常多的资讯。PK 那场讲得非常好,我很感谢他。PK 的许多内容应该都是参考 Matthieu Suiche的,因为 Matthieu 是这方面的先驱,修眠档的资安问题方面研究,他算是祖师,他的 Sandman也是现在这方面最领先的工具之一。

好啦!终于写完啦!感谢各位花时间看完。这些资安会议多跑几个,攻击的趋势,技术的进步,产业的趋势就都很容易掌握了。没有时间去的就看我的 blog 啰。另外我们在台湾办的会议,品质也都很好,有空可以多来。

作者 Wayne 为阿码科技 CEO


→如果您认为本词条还有待完善,请 编辑词条

词条内容仅供参考,如果您需要解决具体问题
(尤其在法律、医学等领域),建议您咨询相关领域专业人士。
0

标签: 美国骇客年会 Black Hat USA 2008

收藏到: Favorites  

同义词: Black Hat USA 2008,Black Hat 2008

关于本词条的评论 (共0条)发表评论>>

对词条发表评论

评论长度最大为200个字符。