搜尋此網誌

2008年7月8日 星期二

SyScan '08 現場報導 (中)

第一天精彩的六場演講分別如下


1. Adam Laurie - Hacking RFID Without A Soldering Iron
Adam Laurie是Apache SSL的作者之一,不過這次他講的跟SSL沒有任何關係,是RFID(含Smartcard)的安全。首先他放了一段他在飯店破解飯店房間保險箱的影片,成功的吸引了大家的注意力。之前破解RFID的方式,很多都是利用一些"特殊的裝置"去破解。儘管這樣的方式的確成功破解了RFID,但是RFID的廠商硬說因為不是複製出"一模一樣"RFID裝置,所以還是可以被發現而不算真正破解。當然,在有些時候,RFID裝置的外觀的確也是判斷的條件之一。但是在以設備為主的自動化環境下,外觀其實並不是一個檢查的項目。儘管如此,Adam硬是利用自製的破解工具,將RFID複製到另一個一模一樣的裝置上,連外觀都無法判斷。另外他也談到ePassport的安全問題。展示部分則是繼操作了他自製的破解工具與程式,成功將RFID複製到另一個裝置。另外一個展示則是讀出ePassport的資料,並加以修改。雖然ePassport有經過加密,但是因為CA也寫在ePassport內,如果沒有檢查CA的有效性,還是有可能遭受竄改而不知。本來Adam還想展至讀取晶片卡內的資料,不過現場取得的晶片卡,似乎不太合作。Adam稱他的破解工具可以在數十公分的距離內讀到RFID裝置的資料,讀到之後要做甚麼?應該不用我說了。

2. Fyodor Yarochkin - Cooperative Offensive Computing / Abusing XMPP infrastructure
Fyodor是snort與xprobe的作者之一。因為Fyodor工作之一是進行滲透測試,所以他也順道開發了一個這樣協同式攻擊的工具。簡單來說,這樣的協同式攻擊跟一般單機攻擊不一樣的地方在於這些散布各處的攻擊點(Fyodor稱之為drone)之間怎麼溝通與做資訊的交換。所以Fyodor利用了XMPP這個協定,再加上Jabber這個伺服器,達到難以被追蹤的目的。而其使用的Jabber伺服器,可以自建,當然也可以找網路上開放(有意或無意)的伺服器。想當然爾,我個人猜測應該是不太可能自建(在自己的機器)。而這些蒐集到的資訊,可以透過特定語法加以查詢。其後端使用的技術是Knowledge Machine,而前端就是使用支援Jabber協定的界面(例如GTALK?)。當然,他應該也可以透過這樣的方式去執行特定的動作,以期獲取更多的資訊或...。另外他也成功將Jabber伺服器的服務隱藏起來,目的為何請自己想。最後,Fyodor因為看到Adam的議題,順道做了一個RFID的小展示,不過就跟原先的主題沒有任何關係了。老實說,Fyodor的口音很重,整場聽下來幾乎是邊看投影片邊想像。不過神奇的事情發生在他回答聽眾問題的時候,他忽然冒出了幾句的中文。雖然中文也有些口音,不過至少比英文聽得懂。那...為什麼他不直接用中文講呢?是怕其他外國講師聽不懂嗎?

3. Petr Matousek - Subverting Windows Embedded CE 6 Kernel
Petr Matousek是主辦單位之一COSEINC的成員,之前則是29A的成員。介紹了Windows Embedded CE 5與CE 6 Kernel的破解(Subverting)方式。主要是透過User-Mode或Kernel-Mode的hooking,以達到rootkit的功效。並實際呈現與展示隱藏檔案、機碼、網路埠、程序與載入模組的程式碼與範例。另外也提出了幾個找出rootkit的做法,其中一個他稱之為Virgin Verifier,意思應該是要找出系統是不是原裝的,還是已經被rootkit"玷汙"過了。Virgin Verifier利用比對API Set hooks與process handles找出可能的修改/隱藏行為。另外的做法包含了透過比對SD-Card上的原始資料與API輸出結果找出被隱藏的檔案。還有就是機碼與檔案的監視程式,這個就像是Win32平台上SysInternals的RegMon與FileMon。Petr同時也做了相關的展示。

4. Matt Conover - Buffered Code Execution: Detecting Program Behavior & Malicious Drivers

Matt目前是Symantec Research Labs的Principal Software Engineer,他這次演講的目的是怎麼觀察到惡意程式的行為。觀測的目的當然是為了知己知彼,但是要知彼可不是一件容易的事情,因為要讓對方不知道你的存在,甚至有些對方會試著去找出你是否存在,以避免被觀察。傳統上可以透過單步除錯的方式加以觀察,另外還有就是API或System call的hooking。而這些方法當然有它的不足之處,所以Matt就開發了利用模擬出真實環境的作法,來觀察惡意程式的行為。而比較特別之處,就是Matt的解決方法(他們稱之為BCE)並不是去模擬所有(或該惡意程式會使用到的)原先系統應該有的行為,而是只模擬必要之部分,而不必要之部分則再交由原先的系統執行。所以除了可以大幅提升執行的效率,更可以避免需要模擬過多行為的窘境。因為系統的行為很複雜,尤其是在一些特殊狀況下要無誤地的處理更是需要好好設計,這也是他講解內容中一個很重要的部分,不過那個對我而言就太偏實作方面了。而目前他們的挑戰是如何處理有關Callback的問題。

5. Rich Smith - PhlashDance: Fuzzing your way to expensive bricks
Rich目前是HP實驗室的Offensive Technologies & Threats (RiOTT)研究計畫的主導人。這個標題其實讓人有點看不懂,PhlashDance應該是一個新創的名詞。我用Google Trends找尋,甚至還沒有足夠的資料可以顯示。基本上他講的是一種稱之為Permanent Denial of Service (PDoS, 永久性阻斷攻擊)的攻擊手法之一。傳統的DoS/DDoS,不管問題的嚴重性,都可以透過重開、隔離等方式回復原先的服務。而PDoS手法則是讓系統在遭受攻擊後必須透過置換硬體或重新設定硬體的方式才可以加以回復至原先的狀態,而Bricking指的正是服務無法透過重開而回復這件事。而其討論的方法,其實就是利用攻擊韌體的方式,來達到破壞設備的目的。韌體因為很多原因,所以是一個容易遭受攻擊的目標(當然目前這樣的攻擊還是不多)。原因包含這些設備通常在網路的最前線(包含防火牆本身)、安全稽核沒有包含韌體(事實上根據我接觸有關資訊安全相關認證與稽核的經驗,都沒有提到韌體這個名詞)、韌體從業人員資訊安全概念薄弱(連軟體從業人員都薄弱了,更遑論韌體從業人員)、與設備的多樣性等等。而為了達成遠端攻擊的目的,最簡單就是利用大多數設備所具備的韌體更新功能。解決之道就是把遠端更新韌體的功能加以關閉,並對韌體的檔案進行加密或雜湊值的保護等方式。而PhlashDanac就是一個自動化的工具,可以找出設備的韌體檔案本身是否有風險存在。以台灣硬體製造的能力與數量,這個議題對台灣這些製造商應該是很重要的。因為不管設備上應用系統的安全機制有多強,如果連自己都保護不了也是白搭。

6. Jack Yu - 反恐與國家資訊基礎建設保護
Jack Yu目前是阿瑪科技的人員,而這也是當天唯一一場中文的演講。一開始講的東西有些鬆散,介紹了一些資訊安全上的威脅(DDoS、DNS Poisoning、SQL Injection、SEO Poisoing與Rerouting等)。後面則介紹了CIIP(國家資訊基礎建設保護)的目的與一些作法(透過演習)。基本上,這樣演習的目的主要還是為了能夠更加了解可能發生的問題與因應之道,所以著重在監控、分析與應變的能力上,而不光是事前的偵測與防堵。而其保護的目標則包含了服務、頻寬、Routing、實體設備與線路與監控的資料。相較於世界各國,台灣政府對這些事情做了多少?

沒有留言:

張貼留言

About