殭屍主機
殭屍主機
殭屍主機是指感染殭屍程序病毒,從而被黑客程序控制的計算機設備。該計算機設備可以是終端設備,也可以是雲端設備。其可以隨時按照黑客的命令與控制(C&C, command and control)指令展開拒絕服務(DoS)攻擊或發送垃圾信息。通常,一部被侵佔的電腦只是殭屍網路裡面眾多中的一個,會被用來去運行一連串的或遠端控制的惡意程序。一般電腦的擁有者都沒有察覺到自己的系統已經被“殭屍化”,就彷彿是沒有自主意識的殭屍一般。
殭屍主機的感染過程可分傳播、命令與控制( C&C )、發動攻擊三個階段。正常主機在感染殭屍程序后,會主動與 Botnet的命令與控制伺服器( C&C Server )進行通信,被 Botnet 的主控者操控進行攻擊行為。因此,命令與控制是整個工作過程中的核心部分。
( 1 )傳播階段把殭屍程序通過自動掃描大規模網段或是利用系統漏洞和弱口令等手法進行傳播,並在悄無聲息地感染網路中的計算機。被感染的殭屍主機會主動加入殭屍網路。
( 2 )命令與控制階段命令與控制通道是攻擊者和殭屍主機之間的通信渠道。攻擊者會通過命令與控制通道對殭屍主機進行操控,它命令殭屍主機執行預先定義好的指令,讓殭屍主機執行惡意行為。
( 3 )發動攻擊階段殭屍主機只是單純監聽命令與控制通道,只要監聽到命令,會立即執行大規模的破壞操作。如掃描網路、散播惡意軟體、安裝惡意軟體、竊取用戶機密信息等,即使這樣,殭屍主機的攻擊活動是不容易被主機用戶本身所察覺。
如圖感染過程:
感染過程
②垃圾郵件寄送人
③垃圾電郵發送軟體
④感染的電腦
⑤病毒或木馬
⑥郵件伺服器
⑦使用者
⑧網站訪問流
殭屍程序被被攻擊者秘密植入正常主機就變成殭屍主機即Bot 機,它通過主動連接到 Botnet 的命令與控制伺服器( C&CServer ),才能加入相應的殭屍網路,它從 C&C 伺服器讀取控制命令,按照指令執行相應的動作。因此, Bot 發現或找到 C&C Server是整個 Botnet 活動的核心部分,也是決定 Botnet 能夠正常運作的關鍵。如何準確地識別殭屍主機,並切斷 bot 主機和控制伺服器之間的聯繫,是防禦殭屍網路的首要任務,這對發現新的殭屍網路具有非常重要的意義。
Bot 發現 C&C Server 機制的方式有多種,從殭屍網路的發展歷程來看,殭屍主機的識別檢測有以下幾種方法:
( 1 )基於固定 IP 地址或域名的 Bot 識別這種方式是多數殭屍網路採用的方式。利用預先定義好的固定 IP 地址或者域名去找到控制伺服器。殭屍網路通過分佈廣泛的多個靜態 IP 地址或域名,結合內建的更新機制和域名或 IP 地址的跨越管理問題,使得這樣的殭屍網路具有很好的抗關停能力。可以通過主機的通信過程和網路流量的異常操縱作為行為特徵檢測法來對感染殭屍程序的 Bot 主機進行識別。如埠掃描、周期性交互等異常行為。
( 2 )基於隨機掃描的 Bot 識別這種方式是殭屍網路幾乎不採用的方式,因為過於盲目地隨機發送數據包來尋找 C&C Server ,所以極容易被識別。只有Sinit 殭屍網路採用了這種機制。這種方式可以通過大量的網路通信流量檢測來識別 Bot 主機。
( 3 )基於 P2P 動態發現機制的 Bot 識別基於 P2P 協議的殭屍主機在每個階段表現出來的特徵行為是完全不一樣的。初始階段,殭屍主機會隨機向網路中的節點請求連接,由於連接不成功導致出現大量ICMP 報文錯誤、ARP 協議報文且連接成功率低。發獃階段,感染殭屍程序的主機在同一時間點行為特徵基本一致,導致殭屍主機與大量連接節點發生大小相似的通信量。攻擊階段,殭屍主機產生大量 SMTP 數據包或產生大量 TCP SYN 的數據包,並對指定目標發送 DDoS 攻擊。這種環境下,我們可以分析 P2P 殭屍網路中節點和信息交換產生的流量和行為相似性的特點,通過分析網路流量、網路圖來識別 Bot 主機。
( 4 )基於 Domain-flux 的 Bot 識別由於不同的域名生成演演算法,其所生成的域名集合會表現出不同的字元特徵。為了在某段時間能夠定位到同一命令與控制伺服器,殭屍網路會修改或替換域名生成演演算法,並利用如時間、網路社區的熱門話題等作為種子,來保證各 C&C Serve 在某一時間,某一域名被請求解析。而殭屍主機首先會通過某種域名演演算法產生大量偽隨機域名,然後 Bot 逐個比對偽隨機域名,直到與真正的C&C Server 取得通信為止。這樣的方式能有效逃避追蹤和檢測,從而保護 C&C Server 地址信息,具有抗關停能力。Domain-Flux 是利用域名的檢測來完成 Bot 主機的識別,如偽隨機域名流量的長度、域名活躍時間分佈、域名字元分佈情況進行分析,檢測到 Bot 主機。
( 5 )基於 Fast-flux 的 Bot 識別Fast-Flux 是近些年出現的殭屍網路最常用的通信技術,它是一種利用 DNS 實現的動態代理技術。基本原理是通過一些具有公共 IP 地址的殭屍主機作為代理( flux-agent )主機,形成一個動態的代理網路。把 C&C Server 的域名解析為代理主機的 IP 地址,然後隱藏在 flux-agent 背後進行操控。這種 Bot 主機識別可以對數據流特徵分析檢測,利用殭屍網路產生與正常通信流量不同的數據流量特徵進行識別。如通信周期性、 Arp 請求速率異常等。
由於雲計算平台提供彈性計算、彈性存儲、雲網路等基礎設施產品 , 以及資料庫、應用服務與中間件、大規模計算與分析等平台服務產品 , 具有靈活快捷、低成本等優勢而快速發展 , 同時也面臨諸多安全問題:雲主機淪為肉雞、網路緩慢、服務不可用、遭受勒索軟體勒索等。隨著黑客技術有朝著大眾化方向發展的趨勢, 能夠掌握攻擊他人系統技術的人越來越多 , 如果主機系統或應用上存在漏洞或安裝了有問題的應用程序 , 被利用入侵后 , 主機可能就會淪為肉雞 , 被黑客任意操控。當控制者和肉雞之間所形成的一個可一對多控制的分散式網路, 又稱為殭屍網路。
外部入侵:通過利用系統或應用層面的脆弱性 , 如弱口令、系統漏洞、應用漏洞 , 黑客通常使用一些已知的漏洞對網際網路發起大規模的探測和攻擊 , 對存在脆弱性的系統進行入侵 , 當攻擊者成功獲取到系統許可權時 , 即可任意操控 , 其中包括上傳後門程序或病毒木馬。
感染病毒:對於主機用戶而言 , 感染上“殭屍病毒 " 有很多種途徑 , 不安全的網站連接(網頁掛馬)、下載並安裝了有問題的軟體應用、郵件附件、 ftp 下載、 U 盤傳播等等 , 一旦這種有毒的軟體進入到主機 , 遠端攻擊者就可以發號施令 , 對主機進行操控。
針對肉雞或殭屍主機 , 從感染的方式和過程上分析 , 檢測防護手段大致可以分為事前檢測及預防(感染病毒前), 事中防禦(發生入侵或接收到病毒), 事後溯源(已感染病毒) 3 個階段。
事前檢測及預防:
• 關閉不必要埠:計算機要與外界進行通信 , 必須通過一些埠。黑客想要成功入侵控制某台電腦 , 肯定是通過某些埠進行攻擊的。
• 卸載不必要程序:為了方便遠程管理 , 伺服器會安裝遠程管理的軟體 , 如: Pcanywhere、 Radmin、VNC 等 , 但遠程管理軟體在方便遠程管理的同時 , 也給人們帶來了巨大的安全隱患。
• 定期安全檢查及加固:黑客成功入侵 , 一般是利用了某些安全漏洞 , 所以必須定期對伺服器做安全檢查 , 如:埠掃描、弱口令檢查、合規配置檢查、系統漏洞掃描、 Web 漏洞掃描、滲透測試等。
事中防禦:
• 入侵檢測防護設備:入侵檢測 / 防護系統是指對計算機系統或網路進行實時監控 , 一旦發現異常情況後進行告警或阻斷。
• 下一代防火牆:下一代防火牆 , 是可以全面應對應用層威脅的高性能防火牆。通過深入洞察網路流量中的用戶、應用和內容 , 並藉助全新的高性能單路徑異構并行處理引擎 ,NGFW 能夠提供有效的應用層一體化安全防護。
• Web 應用防火牆WAF:Web 應用防火牆是通過執行一系列針對 HTTP/HTTPS 的安全策略來專門為 Web 應用提供保護的一種安全防護技術手段。
• 防惡意代碼軟體或安全 Agent:伺服器安全是系統的最後一道防線 , 要建立縱深防禦體系 , 伺服器安全是必不可少的一環 , 伺服器安通過安裝在伺服器上的插件和雲端防護中心的聯動 , 精準捕獲伺服器上各種安全事件 , 對入侵和異常行為進行實時監控告警與攔截 , 是防止黑客入侵 , 提升系統安全的一個重要保障。
事後溯源:
• 網路流量惡意代碼檢測系統:網路流量惡意代碼檢測系統部署在 IP 網路中 , 用於對網路惡意流量進行發現和檢測 , 能夠根據預先配置的策略 , 如惡意流量特徵和基於雲安全計算平台支撐的特徵對惡意流量進行檢測 , 從而發現蠕蟲、木馬、殭屍網路和部分攻擊的系統。
• 抗 DDOS 防護設備:DDOS (Distributed Denial of Service)分散式拒絕服務攻擊指通過很多“殭屍主機 " 向受害主機發送大量看似合法的網路包 , 從而造成網路阻塞或伺服器資源耗盡而導致拒絕服務 , 分散式拒絕服務攻擊一旦被實施 , 攻擊網路包就會猶如洪水般湧向受害主機 , 從而把合法用戶的網路包淹沒 , 導致合法用戶無法正常訪問伺服器的網路資源 , 常見的 DDOS 攻擊手段有 SYN Flood、 ACK、Flood、UDP Flood、 ICMP Flood、 TCP Flood、 Connec-tions Flood、 Script Flood、 Proxy Flood 等。
殭屍主機廣泛用於傳發垃圾電郵,在2005年,估計有50至80%的垃圾電郵是由殭屍主機傳送。這樣發垃圾電郵的人就可以逃避偵查,甚至可以減少通訊費用,因為用的是“殭屍主機擁有人”的流量,“殭屍主機的擁有人”才要付款。這種垃圾電郵也極大促進了木馬的傳播,因為木馬不能藉助自我複製傳播,只能藉助垃圾電郵傳播,但是蠕蟲卻可以由其他方式傳播。
同理,殭屍主機可用作點擊欺騙,就是點擊那些按點擊次數付費的網路廣告。其他則被用來充作釣魚或者錢騾招募網站的宿主。
殭屍主機可以用來進行分散式拒絕服務攻擊,就是同時利用大量計算機有組織地衝擊目標網站。大量網際網路用戶同時向網站伺服器發出請求,以使網站崩潰,阻止正常用戶訪問。有一個變種稱為分散式服務惡化,是對網站的溫和反覆衝擊,由殭屍主機脈衝式進行,目的是使受害網站變慢而非崩潰。這種策略之所以有效,是因為集中的衝擊可以迅速檢測、應對,但脈衝式衝擊所產生的網站速度減慢能數月甚至數年不被發現。