720 likes | 1.1k Views
Module 13 : Botnet 介紹 與架設實習. 學習目的. 這個模組首先透過介紹 Botnet 定義與原理讓同學對於 Botnet 有初步的認識,簡介常見的 Botnet ,並說明其原理最後,透過實作的方式讓同學實際操作,更加了解 Botent 的原理跟其可能的危害 本模組共有四個小節包括 (1)Botnet 簡介 (2)Botnet 種類分析 (3)Botnet 實務 (4)Botnet 專案實作 共需三個鐘點. Module 13 : Botnet 介紹與架設實習. Module 13 -1 : Botnet 簡介 (*)
E N D
學習目的 • 這個模組首先透過介紹Botnet定義與原理讓同學對於Botnet有初步的認識,簡介常見的Botnet,並說明其原理最後,透過實作的方式讓同學實際操作,更加了解Botent的原理跟其可能的危害 • 本模組共有四個小節包括 (1)Botnet簡介 (2)Botnet種類分析 (3)Botnet實務 (4)Botnet專案實作 共需三個鐘點
Module 13:Botnet介紹與架設實習 • Module13-1:Botnet簡介(*) • Module13-2:Botnet種類分析(*) • Module 13-3:Botnet的實務(**) • Module 13-4:Botnet的專案實作(**) * 初級(basic):基礎性教材內容 **中級(moderate):教師依據學生的吸收情況,選擇性介紹本節的內容 ***高級(advanced):適用於深入研究的內容
Botnet介紹 • 殭屍網路(BotNet) 是指受感染之主機猶如殭屍般任由控制者操控,駭客藉由網路聊天(Internet Relay Chat, IRC) 等遠端控制受感染的主機(意即殭屍電腦, zombies),可發動網路攻擊 • 包括帳號密碼及鍵盤側錄(keystroke logging)竊取私密資料、網路釣魚(Phishing)、散布垃圾郵件(SPAM)、發動分散式阻斷式服務(DDoS),恐嚇受駭網站等犯罪行為 • 根據的C&C架構分類 • IRC-based • Peer to Peer (P2P)botnets • HTTP-based
Botnet定義 • 僵屍網路是指駭客利用自己編寫的分散式阻斷服務攻擊程序將數萬個淪陷的機器,組織成一個個控制節點,用來發送偽造資訊或垃圾封包,使得被攻擊端網路癱瘓 • 病毒通常會隨著e-mail、即時通訊軟體或電腦系統漏洞,侵入電腦,再藏身於任何一個程式裡
Botnet起源 • 1989年,GregLindahl在IRC撰寫,這是第一個IRCBot • 當初的Bot只是一個方便管理系統的工具,並未有任何惡意的行為,但現在Bot已經成為網路安全一項隱患,成為駭客賺錢工具之一
Botnet危害 • 安裝廣告軟體 • 散佈垃圾郵件 • 非法使用智慧財產 • 破解密碼 • 點擊詐欺 • DDoS攻擊
Botnet Configure • Botnet功能模組可以分為主要模組(primary function)和輔助功能模組(auxiliary function) C&C module Primary function Propagation modules Bot DDOS Auxiliary function host control Others
Botnet Configure (續) • 主要模組(primary function): • 實現僵屍網路定義特性的命令與控制模組(C&C module)和實現網路傳撥特性的傳播模組(propagation module) • 輔助功能模組(auxiliary function): • 執行命令達到DDOS、資訊的竊取與控制受害者主機或其它反偵測等功能
Botnet種類分析 • 依其傳輸協定,我們可以分為 • IRC Botnet • HTTP Botnet • P2P Botnet
IRC Botnet • IRC為Botnet最常使用的傳輸協定 • IRC協定是網路聊天室的協定 • Client-Server架構
P2P Network • P2P網路結構分類如下圖:
集中式P2P網路 • 中央索引伺服器,用來記錄資源的索引資訊及回應用戶對資源的查詢 • 一但伺服器發生錯誤,就無法運作 • Napster
非結構化P2P網路 • 沒有中央索引伺服器 • 採大量查詢 • 網路規模愈大,效率愈低 • Gnutella
P2P Botnet • 如果採用peer to peer協定,可以形成隨機拓樸,不必擔心C&C servercrash,也更隱蔽且更具強韌性 • 因為沒有中控的server,以至於無法同時將命令傳給所有Bots,所以無法達到進行DDoS攻擊時效性的要求
HTTP Botnet • 利用HTTP協定發佈命令與控制 • 透過架設的網頁伺服器或利用社群網站發佈命令 • HTTP Botnet走80PORT,防火牆不易阻止
HTTP Botnet架構 (續) botmaster Internet Web server Command & Control (C&C) bot DDoS attack SPAM Identity theft victim
HTTP Botnet控制流程 • Botmaster透過Internet連接至Web Command & Control(C&C)server botmaster Internet Web server Command & Control (C&C)
HTTP Botnet控制流程 (續) • Bots向Web Command&Control server查詢是否有來自Botmaster的指令,並作更新 botmaster Internet Web server Command & Control (C&C) bot
HTTP Botnet控制流程 (續) botmaster • Bots根據Botmaster指令依序作出回應,如: • 發送垃圾郵件 • 進行DDoS攻擊 Internet Web server Command & Control (C&C) bot DDoS attack SPAM victim
殭屍網路控制命令 • 殭屍網路控制命令方式,存在下列兩種模式: • 主動連線至Connection to C&C Server • Bot開啟後門,被動接受來至C&C之控制指令
主動連線至Connection to C&C Server • Bot會去檢查是否有連上網路 BOT Internet ?
主動連線至Connection to C&C Server (續) • 如果有,則連上WEBC&C server BOT Yes!! Report to C&C Server Packet GET /botnet/getcommand.php?getcmd=1&uid=pcname&port=2121 HTTP/1.0\r\n User-Agent: USERAGENT \r\nHost: 192.168.11.130 \r\n\r\n Web server Command & Control (C&C)
主動連線至Connection to C&C Server (續) • 反之,則先休息1 min再作檢查 BOT No!! Sleep 1 min Then check again
主動連線至Connection to C&C Server (續) • 從WEBC&Cserver得到來自Botmaster下達的指令 BOT ‧Update Bot ‧Insert Bot Get Command: ‧Update new version ‧DDOS attack Web server Command & Control (C&C)
主動連線至Connection to C&C Server (續) • Bot每15分鐘向WEBC&Cserver作查詢是否有新的命令 BOT Sleep 15 mins Web server Command & Control (C&C)
Bot開啟後門,被動接受來至C&C之控制指令 • Bot會開啟後門並隨時注意是否有Botmaster連線資訊 BOT Listen !! Backdoor ‧Port 2121
Bot開啟後門,被動接受來至C&C之控制指令 (續) • Botmaster與Bot連結,利用port2121作命令傳輸 BOT Backdoor ‧Setting Connection ‧Port 2121 Web server Command & Control (C&C)
Bot開啟後門,被動接受來至C&C之控制指令 (續) • Bot對連線作驗證,判別是否來自WEBC&Cserver BOT Receive !! Backdoor ‧Verify AUTH Web server Command & Control (C&C)
Bot開啟後門,被動接受來至C&C之控制指令 (續) • 接受Botmaster下達的命令 BOT Backdoor ‧Send Commands Web server Command & Control (C&C)
結論 • 殭屍網路一開始是幫助使用者遠端控制主機的一個補助工具,但是由於黑客為了獲取利益所以竄改原程式,變成惡意程式 • 殭屍網路是透過感染許多的受害主機,偷取其機密資料並監控使用者,或是透過受害主機,藉由它們龐大的運算資源,攻擊大型網站 • 採用不同的網路協定,會有本質上不同的殭屍網路,但是其攻擊目的大多類似
說明 • 殭屍網路(BotNet)是指受感染之主機猶如殭屍般任由控制者操控,駭客藉由網路(Http或IRC)等遠端控制受感染的主機,可發動網路攻擊 • 包括帳號密碼及鍵盤側錄(keystroke logging)竊取私密資料、網路釣魚(Phishing)、散布垃圾郵件(SPAM)、發動分散式阻斷式服務(DDoS),恐嚇受駭網站等犯罪行為
說明 (續) • 架設實作(一):HTTP Bot架設步驟 • 架設實作(二):BotNet攻擊過程演練實作
模擬情境圖 1.安裝Control Panel 4.執行惡意程式 感染成為Bot 5.連結C&C Server回報與執行命令 6.連結Control Panel 2.製作惡意程式 3.社交散佈惡意程式
實驗環境介紹 • 以Testbed建立一實驗,相關拓樸及設定如下圖 • Botmaster • OS: • zeusbot • IP:10.1.1.3 • 安裝軟體: • Firefox瀏覽器 • CCserver • OS: • zeusbot • IP:10.1.1.2 • 安裝軟體: • Zeus control panel • Victim • OS: • WINXP- SP3 –CH-pc3000 • IP:10.1.2.3 • 安裝軟體: • 惡意程式
實驗環境介紹(續) 建立完成的實驗拓樸
架設實作(一) HTTP Bot架設步驟
Zeus Botnet簡介 • Zeus是前十大最具傷害性的殭屍網路,其最主要的威脅在於紀錄網頁的使用者登入資訊與盜取網路銀行的帳密等 • (2010年前十大殭屍網路排行: 1. Stuxnet 2. Rustock 3. Koobface 4. Lethic 5. Grumbot 6. Pushdo 7. Bredolab 8.Zeus 9. Mariposa 10. Waledac) • Zeus的控制模式是藉由HTTPprotocol,當受害主機執行惡意程式後,主機將遭受感染成為bot,並且與殭屍網路控制者藉由C&C Server取得聯繫 • Zeus可以記錄下大多數經由HTTPport80的各式網頁登入資訊與銀行帳密資料
Zeus環境建置 • 於CCServer上 • 安裝AppServ(請參考M12) • 將MySQL密碼設為security
安裝ZeuSControl Panel • 將C:\zeus\Zeus 2.0.8.9\zeus資料夾放入C:\AppServ\www中
Zeus環境建置 • 於Botmaster主機上使用Firefox連結 http://10.1.1.2/zeus/install,彈出 control panel 安裝頁面 • 利用此頁面設定control panel資訊 • 點擊Install執行安裝 • Control panel 安裝完成 security security secret key
Zeus環境建置 • 安裝完成
Zeus環境建置(Builder) 3.修改config file並儲存 (紅線處修改為Web Server路徑) 2.點擊Edit config,彈出config file PS.此部份僅列出過程 相關檔案已放置於C:\zeus\zeus 2.0.8.9\zeus\底下 • 1.開啟ZeuS builder編譯器 • 4.點擊build config按鈕, • 編譯及產生configuration file • 5.點擊build loader按鈕, • 編譯及產生惡意程式檔
Botmaster連結Control Panel • 連結http://10.1.1.2/zeus/cp.php • 輸入帳密,登入control panel