未來安全趨勢 基於軟體定義網的移動防禦

2021-09-11 11:23:58 字數 4738 閱讀 3609

小飛 · 2015/02/25 9:52

如今的企業內網,大多是都是建立在靜態體系上的,所以那些內網攻擊框架,工具,也是為靜態網路度身定做。如nmap,蠕蟲病毒,ddos,cain等。那麼如果讓我們的防禦體系轉向,化靜為動,會為內網安全帶來什麼呢?

軟體定義網路(sdn)是由美國史丹福大學clean slate研究組提出的一種新型網路架構。簡而言之就是,利用sdn技術將控制邏輯(控制器)從網路交換裝置中「分離」了出來。當控制器是可程式設計的時候,我們就能通過控制器給網路裝置的flow table(流表)進行修改,讓路由裝置靈活地達到我們的需求。

而本文說的是基於sdn的mtd技術,這個mtd是moving target defence(移動防禦技術)的縮寫。翻譯過來就是基於軟體定義網路的移動防禦技術

移動目標防禦技術是近年來美國科學技術委員會提出的網路空間「改變遊戲規則」的革命性技術之一。今天我要介紹的就是將mtd通過sdn網路來實現。

現在大部分內網掃瞄工具,如nmap,x-scan的掃瞄機制都大同小異,所以,我們今天就以著名的nmap為例,講解對抗nmap資訊收集的最新保護策略和技術展望。

移動防禦技術(mtd)是相對於傳統的靜態網路提出的新型防禦策略,它的目的在於混淆網路環境,讓內網情況「亦真亦假」 最後達到阻止,拖延內網中惡意流成員攻擊的目的。

我們來看看乙個攻擊者(小a)是如何一步步走向mtd布下的迷魂陣吧。

下面分成了三個部分,分別用主機存活性的隨機(a),軟體版本資訊的隨機(b),ip位址的隨機(c)來保護這個sdn控制下的內網

在大多數內網滲透過程中,攻擊的第一步就是研究攻擊面,試圖找出弱點和漏洞,這種踩點就包括識別存在已知漏洞的服務,或是掃瞄整個網段來找出同乙個內網中的存活主機(用來傳播蠕蟲),用基於sdn的移動防禦技術可以阻止這種踩點掃瞄讓攻擊成果顯著減少。

大多是網路掃瞄工具都是通過icmp,tcp或udp掃瞄來完成。icmp包的作用用來確認目標是否可連線可到達。tcp,udp埠掃瞄能用來識別目標上執行著哪些服務。

這些掃瞄行為的應答(tcp rst,silent drop 或icmp 不可達)也可能透露哪些服務被傳輸裝置允許(過濾),另外ip包裡面的ttl區段也被黑客用來識別靶機和目的地之間的節點距離。

於是,小a做好內網**之後 執行了nmap -sp 192.168.1.0/24

基於sdn的路由裝置能用來對抗這種網路掃瞄。 本文中,針對目標的非法通訊是能夠根據過濾規則被sdn裝置發現並丟棄的,然後sdn設施還能生成不同的響應來迷惑攻擊者,只有當通訊是符合預編譯好的過濾策略的時候,才能暢通無阻地經過路由器,要不然,充斥的將是來自sdn的欺騙。

接下來的偽**向我們解釋了sdn網路交換裝置是怎樣攔截,**tcp包

#!bash

require: probabilities prsa < pra < prpa < prr < 1 hash table action buffer ← null

while (new tcp packet p is received) do

if (p is illegitimate traffic) then

if (p.dest port not in action buffer) then

r ← random real number ∈ [0, 1]

store r in action buffer

else

r ← as in action buffer

end if

switch (r)

case r < prsa:

respond with tcp syn-ack

case r < pra:

respond with tcp ack

case r < prpa:

respond with tcp push-ack with random payload

case r < prr:

respond with tcp rst packet

default:

drop silently

end switch

end if

end while

複製**

從**裡面能看出,針對每乙個非法的tcp連線請求,響應資訊是由sdn路由器直接響應的,而並沒有到達目標。 這樣一來,返回的埠開閉狀況,主機存活狀況其實完全是隨機的,無疑起到迷惑攻擊者的作用(試想小a向乙個根本沒有開啟1433的主機進行mssql弱口令碰撞的場景)

為了能夠在內網裡面能夠利用乙個已公布的軟體漏洞,小a最開始要做的事情無疑是識別目標機上有哪些缺陷服務以及他們的版本(當然如果小a掌握了通殺的0day那就另當別論)。舉個例子,小a如果想攻擊乙個執行這apache tomcat 2.x的伺服器,他就會發起乙個http get請求到這個伺服器的web埠,然後根據伺服器的響應,他就能判斷伺服器是不是跑著有漏洞的apache元件啦。 於是,他執行了nmap -a 192.168.1.x

那麼在這種情況下,一旦伺服器的元件版本不可判斷,攻擊面就會變寬,隨之而來的結果就是增加攻擊成本和攻擊事件,讓攻擊更容易被(ips)發現。

不同的服務會有不同的技術來傳送自己的版本資訊,比如http伺服器就會在http header的http 200 ok響應中加入自己的httpd守護程序版本。運用基於sdn的mtd技術,我們能讓sdn裝置防止真實版本資訊的洩露,並且替換其成乙個虛假的version資訊傳送給攻擊者

下面是一段對抗os fingerprinting(nmap)掃瞄的mtd偽**

#!bash

while (new tcp packet p destined to target is received)do

if (p is illegitimate traffic) then

if (p has tcp syn set) then

s ← random 32-bit number

respond with tcp syn-ack and s as the seq#

else

generate random payload and respond

end if

end if

end while

複製**

除此之外,還需要提及的是,tcp,udp 和icmp的包也總會洩露對攻擊產生幫助作用的資訊。雖然現代作業系統已經有產生隨機響應的機制,但tcp 序列號以及針對某些包的tcp icmp udp響應還是能被識別出目標執行的是什麼作業系統。比如說乙個linux的系統的隨機tcp序列碼的生成方式是和其他是系統不一樣的。上面這段偽**就描述了sdn的控制器是如何給非法的通訊生成隨機tcp響應和載荷。

其實從上文並不難發現,隨機化是移動防禦技術乙個主要策略和手段,這是由於如果目標的ip在一直變化。或者說目標和攻擊者之間的網路策略一直在發生改變,那麼攻擊難度實際上是顯著上公升的。所以,我們完全可以把這種隨機化上公升到ip位址這個層面來看,在這個層面上進行了mtd保護的網路,是可以很好抵禦蠕蟲攻擊和ddos攻擊的。

本文的重點也是在於基於openflow的隨機主機變換(openflow random host mutation)下面就簡稱of-rhm。

of-rhm機制說明白一點就是讓後端主機的ip看起來是隨機變化的,這個隨機包括了位址隨機和變換間隔隨機兩個方面。在這樣的網路中,那些假定了內王的ip在一段有效時間(比如乙個月)內是靜態的攻擊程式(絕大多數蠕蟲病毒,ddos攻擊)都會失去作用。

我們來看看sdn實現ip隨機的業務邏輯是怎樣的

of-rhm需要兩個客觀條件:

一,ip變換對於後端主機應該是透明的,也就是說,of-rhm應該讓後端的真實ip(rip)保持不變,但是主機之間的聯絡使用的應該是存活期很短的虛擬ip(vip),vip在一段間隔時間內就應該變化一次。 由於由vip->rip的轉換是在sdn控制器所操縱的流表內進行的,而流表是完全有能力建立這種對應關係,所以完全不用擔心內網主機之間不能通訊這個問題。

二,這種ip變換應具有高不可**性以及頻率,讓攻擊者在摸清網路環境之前就發生一次變換,使攻擊者始終處於迷惑狀態。

說了 這麼多其實並不夠具體,我們用**法來看看內網中主機通訊到底是如何進行的。

根據研究,有兩種主機通訊辦法

一:通過name進行通訊

**很清楚,這裡我簡單解釋下。這裡的dns伺服器是有nox控制器實時更新的,保證v--r的轉換

二,通過rip進行通訊

通過rip通訊需要某些主機(認證主機)具有指定的幾台的rip(真實ip)所以,這種主機之間的通訊一定程度上其實是偽隨機的,不過,大可不必擔心的,nox 控制器裡的認證過程完全能夠規避風險,比如mysql伺服器和web之間的認證關係是儲存在nox 控制器裡的,所以這裡web伺服器就是認證主機了,然而,它就不能通過rip訪問到具有員工資訊的oracle伺服器

相信你們能從上面的偽**中看到,其實這些策略中相當重要的一環就是判斷策略,來判斷哪些是非法訪問,哪些是能被伺服器放行無阻的。其實判斷策略可以有很多種。 比如,可以基於acl(預設訪問名單)step c 隨機主機變換中的通過rip通訊就是這種;也可以是啟發式的,通過行為判斷(類似ips)觸發隨機機制。

總而言之,用sdn構建出的網路是靈活的,目前華為等大廠商也逐漸在高階路線上考慮sdn路由器(儘管sdn路由器動輒上千,但是對於大型企業來說,安全和功能強大顯然更加重要)

傳統的靜態網路已經走過從arpnet到internet走過了屬於它的幾十年,在絕大多數攻擊模式都是針對靜態內網的今天,擁有創新思維,化靜為動地去思考如何保護內網顯得尤為重要和關鍵。雖然sdn和mtd又都是走在前面的美國人所提出的,但從跟上腳步,也不失一種智慧型,中國人的智慧型。(我們不都是這麼幹的嗎)

未來安全問題的挑戰

2010中國計算機網路安全年會定於2010年9月12日 9月15日在北京國家會議中心召開,以 對話 合作 聯動 共築網路安全 作為主題,本次會議旨在更好地介紹我國在網路安全方面的 努力及成果,切實推動網路安全國際交流與合作。在本次大會上組織了 2010中國計算機網路安全年會高峰論壇 參加論壇的主要有...

從華為進軍安防解讀未來安防行業發展趨勢

國際上通常將安防分為資訊安防和實體安防兩類。而實體安防,又包括技防 物防 人防這幾類。安防市場得益於平安城市 雪亮工程等國家大型專案,帶動了整體安防市場的快速增長,在過去幾年均維持了較高的增長率。然而,受到下游需求和經濟放緩等因素影響,加上行業智慧型視覺化專案 消費生活領域市場還在培育期,整體的增長...

趨勢科技雲安全軟體 2019 年軟體開發趨勢

大多數時候,為了順利開展和維繫你的業務,需要提供一些必要的軟體,以幫助你能夠獲得詳細且真實的運營資料並儲存較長時間。不同的企業有不同的軟體需求。例如,如果你正在經營一家酒店,酒店管理軟體對你來說是至關重要的。同樣,如果想以有效的方式管理客戶資料,那麼就必須擁有不錯的客戶管理軟體 crm 1 掃瞄器和...