personal firewall 攻擊手法之研究. member d9363904 鄭聖倫 d9546376 王鈺勝 d9481075...

31
Personal Firewall 攻攻攻攻攻攻攻

Post on 21-Dec-2015

232 views

Category:

Documents


6 download

TRANSCRIPT

Page 1: Personal Firewall 攻擊手法之研究. Member D9363904 鄭聖倫 D9546376 王鈺勝 D9481075 劉鼎政

Personal Firewall

攻擊手法之研究

Page 2: Personal Firewall 攻擊手法之研究. Member D9363904 鄭聖倫 D9546376 王鈺勝 D9481075 劉鼎政

Member

D9363904 鄭聖倫 D9546376 王鈺勝 D9481075 劉鼎政

Page 3: Personal Firewall 攻擊手法之研究. Member D9363904 鄭聖倫 D9546376 王鈺勝 D9481075 劉鼎政

Leak on Personal Firewall

Firewall Software Firewall

Computer PC Windows

主要前提: Outbound connection 惡意軟體已經透過某些方法進入電腦

Page 4: Personal Firewall 攻擊手法之研究. Member D9363904 鄭聖倫 D9546376 王鈺勝 D9481075 劉鼎政

主要攻擊技巧

Substitution Launcher Default rule using Direct Network Interface reaching DLL injection Process injection Timing Attack Recursive request

Page 5: Personal Firewall 攻擊手法之研究. Member D9363904 鄭聖倫 D9546376 王鈺勝 D9481075 劉鼎政

Substitution

通過 Firewall 的基本方法之一,就是偽裝成Firewall 信認的程式

方法 將執行檔名稱變更成 Firewall 信認的程式名稱 路徑也更改成一樣的路徑

Firewall 若沒有類似 md5 checksum 的機制,將會簡單地 pass through

Malwares W32.Welchia.Worm , The Beast

Page 6: Personal Firewall 攻擊手法之研究. Member D9363904 鄭聖倫 D9546376 王鈺勝 D9481075 劉鼎政

Launcher

概念: 以 Firewall 信認的 application 做為跳板

方法: 例 1 : malware -> cmd -> explorer -> IE 例 2 :使用 windows 的工作排程器

如例 1 的狀況, IE 是由 explorer 所開啟的,而不是 malware ,使得此種方法難以偵測

Malwares W32.Vivael@MM

Page 7: Personal Firewall 攻擊手法之研究. Member D9363904 鄭聖倫 D9546376 王鈺勝 D9481075 劉鼎政

Default rule using

一般 Firewall 都有其內定預設的 Rules 若 Firewall 預設讓某些 port 能夠隨意的通過,

將會增加危險 DNS , DHCP

方法:以 DNS port 來傳 data

Page 8: Personal Firewall 攻擊手法之研究. Member D9363904 鄭聖倫 D9546376 王鈺勝 D9481075 劉鼎政

Direct Network Interface reaching

一般 Firewall 只處理到 Winsock 這一層級 著名的 WinPCap 可直接與 NDIS 進行

access 只「照顧」到 winsock 這一層的 Firewall ,對

此種方法完全無法偵測

Page 9: Personal Firewall 攻擊手法之研究. Member D9363904 鄭聖倫 D9546376 王鈺勝 D9481075 劉鼎政
Page 10: Personal Firewall 攻擊手法之研究. Member D9363904 鄭聖倫 D9546376 王鈺勝 D9481075 劉鼎政

DLL injection

DLL – Direct Link Library , windows 下的產物

若一個合法的 process ( 例如: explorer) ,載入了我們撰寫的 DLL 檔, Firewall 也會將它視為是被信認的

方法: Explorer 會載入的 DLL 都存在 Registry 中 更改 Registry->explorer 重開啟 -> 自動載入 DLL

此種方法通常是「木馬」屠電腦的標準方法之一,不過仍然難以防備 ( 都是 OS 的錯 )

Page 11: Personal Firewall 攻擊手法之研究. Member D9363904 鄭聖倫 D9546376 王鈺勝 D9481075 劉鼎政

Process injection

Program -> process -> thread 方法 A

在被信認的 process 中新增一個 thread ,然 後植入我們需要的程式碼

不同於 DLL injection , DLL injection 載入的是foreign code ,仍然可以被某些工具分析出來

方法 B 直接把一個現成的 thread 改成我們要的內容

Firewall 要在 injection 的階段就阻擋下來

Page 12: Personal Firewall 攻擊手法之研究. Member D9363904 鄭聖倫 D9546376 王鈺勝 D9481075 劉鼎政

Timing Attack

Firewall 偵察到可疑的行為 凍結 -> 詢問 user 要怎麼辦

上述過程需要得到可疑程式的 pid 方法:

傳送資料的過程,藉由快速地轉換不同的 pid 來達到目的

Page 13: Personal Firewall 攻擊手法之研究. Member D9363904 鄭聖倫 D9546376 王鈺勝 D9481075 劉鼎政

實例探討 1

第一個 leak test : http://grc.com/lt/leaktest.htm

由 Steve Gibson 所撰寫,使用的方法就是最簡單的 Substitution 。

單純地將 program name 和 path 修改 他將程式命名為  LeakTest.exe 後來大家延用了此名字

除了 Windows 內建的 Firewall 外,現在已經甚少有 Firewall 偵測不到此種方法

Page 14: Personal Firewall 攻擊手法之研究. Member D9363904 鄭聖倫 D9546376 王鈺勝 D9481075 劉鼎政

實例探討 2

Tooleaky : http://tooleaky.zensoft.com/ Launcher 的一種 原理 & 步驟:

(1) 從 Registry 得到 IE 的執行路徑 (2) 於背景執行 IE ,給予 URL 參數 (3) 由 IE 傳送資料,若 IE 是被 Firewall 信認的 App ,

就能夠自由進行連線

Page 15: Personal Firewall 攻擊手法之研究. Member D9363904 鄭聖倫 D9546376 王鈺勝 D9481075 劉鼎政

實例探討 3

Firehore : http://keir.net/firehole.html Launcher + DLL injection 開啟 IE ,並在 IE 內部載入 DLL 檔 目前絕大部分的 Firewall 都有能力阻擋此類型的

攻擊

Page 16: Personal Firewall 攻擊手法之研究. Member D9363904 鄭聖倫 D9546376 王鈺勝 D9481075 劉鼎政

實例探討 4

Yalta : Default rule using 試圖透一切可能的 port 來傳送資料 (53,21,…) 若 Firewall 預設某一個 port 可以自由傳送資料,

此一方法就可能成功 目前大部分的 personal firewall 都有較全面的防護

設定,此種方法可用度降低

Page 17: Personal Firewall 攻擊手法之研究. Member D9363904 鄭聖倫 D9546376 王鈺勝 D9481075 劉鼎政

實例探討 5

outbound : http://www.hackbusters.net/ob.html

Direct Network interface reaching 使用 WinPCap 的 library 將發送出去的封包偽裝成「 established

connection 」

以前的 personal firewall幾乎無法阻擋此種攻擊,目前有幾款軟體已經開始能夠阻絕此種方法

Page 18: Personal Firewall 攻擊手法之研究. Member D9363904 鄭聖倫 D9546376 王鈺勝 D9481075 劉鼎政

實例探討 6

pcAudit : http://www.pcinternetpatrol.com/ DLL injection 和前述的手法相類似

Page 19: Personal Firewall 攻擊手法之研究. Member D9363904 鄭聖倫 D9546376 王鈺勝 D9481075 劉鼎政

實例探討 7

AWFT : http://www.atelierweb.com/awft/ 全名為 Atelier Web Firewall Tester 包含六項測試,以 10 分評估Web 防火牆效能 透過各種方法掩飾,避開防火牆的偵測以完成與

外部的連線

Page 20: Personal Firewall 攻擊手法之研究. Member D9363904 鄭聖倫 D9546376 王鈺勝 D9481075 劉鼎政

實例探討 8

THERMITE : [email protected] 把自己的 code 植入目標 process(針對 IE瀏覽

器 ) ,並建立具惡意行為的 thread 其行為是竊取瀏覽器的資訊內容 (包含瀏覽的資料

內容 ) 如果測試顯示 success ,則該換防火牆了 >”<

Page 21: Personal Firewall 攻擊手法之研究. Member D9363904 鄭聖倫 D9546376 王鈺勝 D9481075 劉鼎政

實例探討 9

COPYCAT : http://mc.webm.ru/ 把自己的 code 植入網頁瀏覽器以避開防火牆的偵

測。 其行為是更改瀏覽器 thread 的內容,藉此嘗試存

取 internet 的資源。 如果不幸測試成功,將會在 C槽看到 exploited.txt

檔案。

Page 22: Personal Firewall 攻擊手法之研究. Member D9363904 鄭聖倫 D9546376 王鈺勝 D9481075 劉鼎政

實例探討 10

MBTEST : [email protected] 類似 OutBound 跳過 winsock ,直接透過 NIC 進行存取

其測試軟體連結失效 >”<

Page 23: Personal Firewall 攻擊手法之研究. Member D9363904 鄭聖倫 D9546376 王鈺勝 D9481075 劉鼎政

實例探討 11

WB : http://www.firewallleaktester.com包含四種測試 其行為是藉由不同的方法喚起(系統預設)瀏覽

器程式,存取其所指定的網路資源。 First :藉由 explorer.exe 執行 iexplore.exe 上網 Second :直接開啟 IE Third : First 的變形,先執行 cmd.exe Fourth : Third 的變形,先執行 AT.exe

Page 24: Personal Firewall 攻擊手法之研究. Member D9363904 鄭聖倫 D9546376 王鈺勝 D9481075 劉鼎政

實例探討 12

PCAudit2 : http://www.pcinternetpatrol.com 植入自己的 code 給系統信任的軟體,使之視為其

DLL 檔 如果防火牆第一次有跳出提示訊息,則測試第二次,如果第二次沒有繼續跳出警示則防火牆不安全

Page 25: Personal Firewall 攻擊手法之研究. Member D9363904 鄭聖倫 D9546376 王鈺勝 D9481075 劉鼎政

實例探討 13

GHOST:- Launcher + Timing Attack

- 一般防火牆會使用 windows API回收 parent PID and

name

- 為了防止被防火牆偵測到, Ghost 會藉由 shut down and

restart 它自己來改變 PID 並繼續傳送資料

Page 26: Personal Firewall 攻擊手法之研究. Member D9363904 鄭聖倫 D9546376 王鈺勝 D9481075 劉鼎政

實例探討 14

DNStester:- recursive request

- Windows 提供一種服務 "DNS client" 來執行和處理所有 DNS請求- 設計一個特別的 DNS請求來傳送資料給遠端電腦而且不 會被防火牆發現

- 防火牆一定會被穿透 , 除非關閉 windows 的 DNS client服 務

Page 27: Personal Firewall 攻擊手法之研究. Member D9363904 鄭聖倫 D9546376 王鈺勝 D9481075 劉鼎政

實例探討 15

Surfer: Launcher首先 Surfer 建立一個隱藏桌面並塞入 IE 裡 ,但他

沒有 url 之後再開啟一個 Surfer引入它自己 , 並把第 1 個

給關掉 隨後它會使用 DDE protocol 當 IE 執行時 DDE 就可以被使用

Page 28: Personal Firewall 攻擊手法之研究. Member D9363904 鄭聖倫 D9546376 王鈺勝 D9481075 劉鼎政

實例探討 16

Breakout:

- Launcher + Windows messaging

- Breakout 會建立一個網頁並指向目標的 url

- 然後它能執行 Active Desktop 並將網頁設 成你的背景桌面

Page 29: Personal Firewall 攻擊手法之研究. Member D9363904 鄭聖倫 D9546376 王鈺勝 D9481075 劉鼎政

實例探討 17

Jumper: Launcher + DLL injection + Registry injection 它會寫入 AppInit DLLs 這個登入檔 , 然後殺掉

explorer.exe Windows 會自動 reloaded ,然而此時的

explorer.exe 已經被 loads jumper 的 DLL

Page 30: Personal Firewall 攻擊手法之研究. Member D9363904 鄭聖倫 D9546376 王鈺勝 D9481075 劉鼎政

實例探討 18

CPIL(Comodo Parent Injection Leak) DLL injection 會找出 explorer.exe且更改它的 memory 透過預設的瀏覽器來傳送資料給遠端電腦

需要安裝 HIPS 軟體來監視可疑的程式碼入侵

Page 31: Personal Firewall 攻擊手法之研究. Member D9363904 鄭聖倫 D9546376 王鈺勝 D9481075 劉鼎政

實例探討 19

PCFlank: Windows messaging PCFlank利用 OLE 自動化應用程式控制 , 檢查你

的防火牆如何處理當一個程式企圖管理另一個程式的行為 .