複製鏈接
請複製以下鏈接發送給好友

主機入侵防禦系統

鎖定
Host Intrusion Prevent System 主機入侵防禦系統,簡稱HIPS。
中文名
主機入侵防禦系統
外文名
Host-based Intrusion Prevention System HIPS
簡    稱
HIPS

主機入侵防禦系統簡介

HIPS是一種能監控你電腦中文件的運行和文件運用了其他的文件以及文件對註冊表的修改,並向你報告請求允許的軟件。如果你阻止了,那麼它將無法運行或者更改。比如你雙擊了一個病毒程序,HIPS軟件跳出來報告而你阻止了,那麼病毒還是沒有運行的。引用一句話:“病毒天天變種天天出新,使得殺軟可能跟不上病毒的腳步,而HIPS能解決這些問題”。 HIPS是以後系統安全發展的一種趨勢,只要你有足夠的專業水平,你可以只用HIPS而不需殺毒軟件。但是HIPS並不能稱為防火牆,最多隻能叫做系統防火牆,它不能阻止網絡上其他計算機對你計算機的攻擊行為。
因為病毒天天變種天天出新,使得殺軟可能跟不上病毒的腳步,而HIPS能解決這些問題。
我們個人用的HIPS可以分為3D: AD(Application Defend)--應用程序防禦體系、RD(Registry Defend)註冊表防禦體系、FD(File Defend)文件防禦體系。它通過可定製的規則對本地的運行程序、註冊表的讀寫操作、以及文件讀寫操作進行判斷並允許或禁止。

主機入侵防禦系統防範保護措施

主機入侵防禦系統堆棧溢出防範

這種類型的攻擊赫赫有名,頻頻出現在CERTSANS、CSI等國際網絡安全組織的最具威脅的攻擊類型名單內。據統計,通過緩衝區溢出進行的攻擊佔所有系統攻擊總數的80%以上。這是一種滲透到系統中的攻擊技術,其基本理是當來自某個程序的輸入數據超出程序緩衝區能夠處理的長度時會產生溢出,結果不受程序員的控制。當入侵者巧妙地安排代碼後,被攻擊的服務器還可能執行入侵者指定的程序代碼,從而導致攻擊者甚至可以獲得系統中超級用户的權限。比如80年代的Morris"蠕蟲"事件導致了當時Internet上1/3的計算機癱瘓,這種入侵方式就是採用了UNIX的Finger服務的一個緩存區溢出的漏洞;2001年的紅色代碼病毒在短短几個小時內傳遍了全球,造成了數十億美元的損失,也是採用了Windows服務器平台上的IIS服務的一個緩存區溢出漏洞。2003年的SQL Slammer蠕蟲、2004年的震盪波等同樣也是利用了這種漏洞。為什麼這種攻擊這麼多呢?主要原因在於(單不僅限於)目前廣泛用於系統編程的語言-- C語言本身的某些函數就存在着一些漏洞,造成了這種漏洞的廣泛存在和難以徹底清查。
目前對這種攻擊方式的防範方式主要有以下幾種:第一,對存在溢出漏洞的程序打補丁。這是最常見的防範方式,需要依靠程序的廠商提供相應的補丁程序才能生效。但是隨着網絡攻擊的頻度不斷加快,一個漏洞從被發現到運用在大規模的攻擊中的時間大大縮短。往往程序廠商還沒有發佈相應的補丁程序,攻擊就已經發生了。所以這種方式是非常被動的,無法防範新出現的漏洞入侵。第二,通過操作系統的設置使得緩衝區不可執行,從而阻止攻擊者植入攻擊代碼。這種方式的主要問題在於首先可能和現有的應用程序存在衝突,其次對溢出攻擊的防範不全面。因為有些攻擊不需要進行攻擊代碼的植入過程。第三,採用專用的防範溢出的編譯器對程序進行編譯檢查。這是一個比較完整的保護措施,但是卻需要付出非常高昂的時間和費用的代價。
所有上述的辦法都無法在現實的業務系統中順利使用。主機入侵防禦系統則提供了另一種切實可行、易於實施的防止"堆棧溢出攻擊"的方法。主機入侵防禦系統中具有一種STOP (STack Overflow Protection,堆棧溢出保護)技術,可以阻止這種入侵,防止用户或程序獲得超級用户權限。
所有的緩衝區漏洞挖掘程序都基於以下一個假設,即:程序在每次運行時有問題的參數壓入棧內的數據地址空間偏移量是一定的(或者相差較小)。如果在程序運行時由操作系統定義並且分配一個隨機化的偏移給該應用程序,那麼則專為此有缺陷的程序設計的溢出程序在溢出時就會返回一個錯誤的ret地址,而不能跳轉到惡意構造的shellcode下。雖然大部分的緩衝區溢出程序也能提供可調整的offset變量,但由於每次有缺陷的程序運行時都將擁有一個隨機化的偏移,因此通過上次不成功的溢出猜測所得到的地址空間和內容並不能來指導修正下次調整的offset。主機入侵防禦系統提供了STOP技術在不改變操作系統內核下同級工作,能幫助定義並且分配一個隨機化的偏移量,在不修改的系統內核的情況動態實現上述功能。
通過這種防範措施,用户不僅僅能夠對所有已知和未知堆棧溢出類型的攻擊進行高強度防範,而且還不需要修改任何現有的操作系統和應用程序,保證原有系統的持續運行,保護了投資。

主機入侵防禦系統信息篡改保護

信息篡改破壞了信息的完整性,是入侵者攻擊目的的一種。信息篡改主要有兩種形式:信息傳輸中的篡改和信息存儲時的篡改。信息傳輸中的篡改主要發生在在線的交易過程中對交易信息的篡改,將導致交易雙方的嚴重經濟損失;網絡設備控制信息的篡改,可能導致網絡工作異常、甚至導致信息傳輸途徑的更改以至於失密。這種攻擊行為的防範主要依靠信息交換雙方對信息的加密和數字簽名以及強驗證方式來實現。信息存儲時的篡改是最為常見的攻擊方式,往往表現在對關鍵業務服務器上數據的更改,導致業務無法正常運行;對一些關鍵文件的篡改,比如針對網站主頁的篡改,會導致被攻擊者形象的損失和潛在的經濟損失。比如一家在線交易單位如果網頁被篡改,其後果可能會導致大量客户的流失,即使入侵行為沒有危及到關鍵的交易數據。另外一種最具威脅的攻擊手段是對可執行程序的篡改。入侵者通過對系統原有的可執行文件的篡改能夠達到很多破壞目的。比如通過非法修改證券交易系統或者銀行業務系統的程序以獲取暴利;通過篡改某些關鍵應用程序導致系統無法正常運行。但是最常見的篡改目的是:通過篡改一些管理員或者用户經常使用的應用程序,使其在運行的時候除了執行正常的操作之外,同時運行一個入侵者放置的木馬程序。這樣,對管理員或者用户來説好像系統運行一切正常,但是卻在不知不覺中運行了木馬程序,導致後門洞開。這種入侵的後果是非常嚴重的,將可能導致嚴重的信息泄密。
主機入侵防禦系統的解決方法就是從根本入手,大大細化了對資源的控制粒度。不管是UNIX還是Windows服務器操作系統,對文件和目錄的安全許可權限都是非常有限的。但是通過主機入侵防禦系統就能夠使文件和目錄的許可控制大大增強。許可類型除了讀、寫、執行外,還額外添加了刪除、重命名、模式更改、屬主更改、時間更新、ACL更改、創建、更改目錄等8項許可,為管理員提供了充分的授權空間,能夠按照最貼切的方式對各個賬户進行資源的授權,防止授權過大造成的內部安全隱患。同時,同樣一個賬户採用不同的應用程序訪問資源也有可能獲得不同級別的訪問許可,這給某些行業的特殊需求提供了極大的便利。
有了文件許可的細化控制能夠極大地減少由於授權原因造成的信息篡改事件。但是為了徹底杜絕對關鍵信息的篡改,主機入侵防禦系統還提供了數字簽名的功能,能夠對普通文件、數據文件以及可執行文件特別是入侵者攻擊的首要目標--UNIX中的suid和sgid類型的程序進行完整性校驗。如果普通文件和數據文件發生了意外更改,主機入侵防禦系統將會報警;如果可執行文件發生了意外更改,主機入侵防禦系統將會自動拒絕這個可執行文件的執行,並且同時報警。這樣,即使非法入侵者對目標文件進行了篡改,其目的也很難得逞。當然,如果實現利用主機入侵防禦系統的文件保護功能對這些關鍵的文件進行了保護,入侵者是無法達到非法篡改的目的的。

主機入侵防禦系統木馬後門防範

特洛伊木馬(以下簡稱木馬),英文叫做"Trojan horse",其名稱取自古希臘的特洛伊木馬攻城故事,相信大家都已經耳熟能詳了。正是這種古老的攻城方式卻成為了現在令人色變的網絡入侵方式。
首先,主機入侵防禦系統具有的程序訪問控制列表(PACL)功能使得同樣一個用户訪問同樣的資源的時候,如果採用不同的應用程序訪問,將會得到不同的權限。也就是説,對於一些重要的資源,我們可以採用主機入侵防禦系統這種功能限定不同應用程序的訪問權限,只允許已知的合法的應用程序訪問這些資源。這樣,即使入侵者在被攻擊的服務器上運行了木馬程序,但是木馬程序需要竊取關鍵信息的時候必須要經過主機入侵防禦系統的安全驗證。由於PACL中沒有定義木馬程序的訪問權限,按照默認權限是不能夠訪問的,由此就起到了對木馬信息竊取的防範。
另外,計算機一旦連結上了網絡就融入了一個整體,需要對整體的安全性負責任。通過上文的分析我們已經發現,木馬不僅僅會竊取本地信息,更嚴重的是入侵者能夠通過本地計算機對網絡中的其它計算機發起入侵,如DDoS攻擊行為。美國G0vernment法律規定由於某台計算機的安全問題直接導致的其它聯網計算機的入侵事件,這台具有安全問題的計算機的所有人是需要負責任的。目前其它國家也正在陸續出台相關的規定。所以,在網絡上僅僅採取明哲保身的自保策略是不夠的。為了避免被植入木馬的服務器成為入侵者的跳板和傀儡,主機入侵防禦系統還具備了網絡訪問控制的作用。網絡訪問控制規則不僅僅能夠定義哪些人能夠在什麼時間從哪裏訪問本機的哪些服務,而且更為重要的是,它還能夠定義從本機能夠發出什麼類型的網絡連接。這樣,凡是不符合規則的連結將不能夠從本機發出。舉例來説,在紅色代碼氾濫的時候,許多運行IIS服務的服務器感染病毒後會在網絡中進行大範圍的掃描,發現TCP 80端口開放的潛在受攻擊者。但是Web服務器的這種行為明顯地是非常異常的行為。所以通過在主機入侵防禦系統中定義外出連結的類型,能夠從根本上避免由木馬發起的外部攻擊行為,特別是避免成為DDoS攻擊的傀儡。

主機入侵防禦系統進程中止保護

在很多關鍵業務環境中,肯定都會有幾種比較重要的服務在運行。比如一個電子商務交易Web站點,服務器上的HTTP服務或者守護進程就是非常關鍵的。而在後台的支撐環境中運行的數據庫服務器上,數據庫的守護進程就是這台服務器的靈魂。同樣地,對於一個剛剛興起的收費郵箱服務提供商來説,如果後台郵件服務器上的SMTP服務忽然停頓,勢必會更加難以招徠用户。所以,信息化的社會的基石就是在關鍵服務器上運行的種種服務。一旦服務中止,上層的應用就會沒有了根基。而在操作系統中,這些關鍵服務是以後台進程的方式存在。
目前,受到攻擊最多的服務就是HTTP、SMTP以及數據庫進程,當然也有其它的關鍵服務進程。入侵者對於這些進程的中止方式一般有兩種:一種是利用這些服務本身存在的某些漏洞進行入侵,而另外一種則是首先獲得操作系統中能夠中止進程的權限,一般是超級用户的權限,然後再中止進程。
進程的安全性完全依賴於操作系統提供的安全級別。一般來説,進行進程中止的防止主要是採用Watchdog的技術。所謂Watchdog就是看門狗的意思,其主要功能是對進程進行看護,防止進程的意外中止。如果由於某些意外因素,進程非正常中斷,Watchdog能夠在很短時間內快速重新啓動被看護的進程。
主機入侵防禦系統就具備了這種Watchdog的功能。事實上,主機入侵防禦系統本身提供的服務就是基於三個進程的。主機入侵防禦系統要對操作系統進行安全保護,需要首先進行自身的保護,防止自己進程的意外中止。在實際運行當中,這三個進程出了各自完成自己的職能外,還存在一種互相看守的關係。就是進程一是進程二的Watchdog,而進程二又是進程三的Watchdog,進程三則是進程一的Watchdog。這樣,如果其中一個進程意外中止了,總有一個進程會將其重新啓動。即使在非常情況之下兩個進程同時意外中斷,剩下的一個進程依然能夠將另一個進程啓動,然後啓動最後一個進程。所以,主機入侵防禦系統的這種安全機制是非常嚴密的,不僅僅用來保護自己,而且還能夠很好地應用於對關鍵服務進程的安全防護。

主機入侵防禦系統超級權限分割

超級用户的存在為管理者帶來了極大的方便,登錄一次,就能夠完成所有的管理工作,執行所有的命令,進行所有的系統維護。但是,同時正是因為有了超級用户無所不能的超級權限,也造成了很多的麻煩。
首先拋開入侵者的攻擊不談,僅僅管理員在執行正常的操作時,超級權限就帶來了不少的問題。一旦使用超級用户登錄,管理員在作各種操作的時候必須慎之又慎。系統中的很多動作是不可逆的,一旦管理員因為人為失誤做出不當的操作,往往會造成不可挽回的損失。特別在關鍵的業務服務器系統上經常會出現這種類似的損失慘重的失誤,我們經常能夠在媒體上看到相關的一些報道。據統計,管理員的人為失誤是對整個網絡系統最大的安全威脅之一。實際上有一些操作是遠遠不需要超級用户的權限就能夠完成的,但是絕大多數的人還是會選擇採用超級用户的賬户進行登錄,究其原因,恐怕最根本的就是為了圖方便,從而釀成大錯。
其次,在操作系統中設置超級用户有其不合理的一面。一般來説,管理員的職責是維護系統的正常運行,建立和維護各種賬户,對資源的訪問權限進行分配等等,他們一般不應該具有讀取甚至修改、刪除某些存放在服務器上的機密信息的權利。但是在現實中,具有超級用户的權限者就能夠任意地對這些數據進行處理,即使經過加密的數據他們也能夠輕而易舉地破壞甚至刪除。這是不合乎正常的安全策略的,需要通過某種措施進行控制。
最後,在入侵者的世界裏,恐怕再沒有獲取一個新的重要系統的超級用户的身份更加美好的事情了。幾乎所有的攻擊手段的終極目標就是要獲得被攻擊系統的完全控制權,而這一切基本上同於獲得系統的超級用户的賬户名稱和密碼。口令破解、堆棧溢出、網絡竊聽…等等,目的無不於此。一旦獲得超級用户的權限,入侵者不僅僅能夠完成上面所説的一系列行為,而且還能夠任意地切換到其他人的身份,甚至不需要任何密碼驗證;能夠隨意地抹去對自己動作的一切審計記錄,讓審計人員無據可查。當然,超級用户的存在同樣也使網絡安全人員陷入了一種尷尬的境地。不管採用的防火牆是如何的牢不可破、IDS是如何地明察秋毫、加密算法是如何的先進,只要入侵者獲得了超級用户的權限,這一切都形同虛設。
為了對於上述的種種情況,主機入侵防禦系統在操作系統的層次對超級用户的特權進行了再分配,並且將所有的用户都同等對待,使得系統中不再有超級用户的概念存在。經過分權後,每一個管理員自能夠在自己的職責範圍內工作,而不具備其它的特權。比如安全管理員能夠對資源進行許可的分配,但是不能夠隨意刪除日誌;安全審計員的職責就是分析日誌,發現所有用户的可疑行為,但是卻不具備其它所有的系統權利。這樣就好像給一個保險箱加了三把鎖一樣,僅僅拿到一把鑰匙是沒有辦法獲得保險箱裏面的東西的。為了用户能夠按照自己的意願進行分權,主機入侵防禦系統還提供了權限分配(task delegation)的接口,以供更加細化的配置,讓普通的用户具有某些超級用户才能夠執行的權利。經過權力分配和細化後,可以大幅度避免管理員的人為誤操作,並且防止入侵者一旦獲得一個賬户的所有權後就能夠橫行無阻的狀況發生。
為了更加細緻準確地跟蹤系統上的活動,主機入侵防禦系統提供了根據原始登錄ID進行審計的功能。也就是説不論登錄者後來通過su切換到哪一個登錄ID號,在日誌中始終以其原始的登錄ID進行活動的跟蹤和記錄,而且入侵者即使獲得了root的口令也無法對日誌進行破壞。另外,主機入侵防禦系統將ID的使用權限也作為一種資源進行管理,也就是説如果一個賬號需要su到另外一個賬號,必須經過主機入侵防禦系統的授權,否則就不能成功。哪怕是root用户想要su到其它賬户也是如此。這樣就大大降低了通過切換 ID實現的假冒攻擊行為。
主機入侵防禦系統基於穩固的安全體系和全新的安全設計理念,具有穩固的運行特性和強大的安全性,為各種 UNIX平台以及Windows服務器平台提供了極大的安全保障,並且同大型機的安全機制兼容。該系統是對關鍵服務器資源進行重點保護的重要安全工具,正在越來越受到用户的重視。
當然,主機入侵防禦系統提供的保護措施主要是集中在對服務器資源和行為的保護,不能替代所有的安全產品。防火牆防病毒、網絡入侵檢測系統、VPN等都是對主機入侵防禦系統的有益補充。只有將關鍵服務器的保護和整體的網絡架構保護合理地結合在一起,才能夠為我們的網絡空間提供最為完善的保障。針對當前的病毒、蠕蟲、入侵等種種威脅構成的混合型威脅,主機入侵防禦系統無疑會給我們的關鍵資源提供更加主動的防禦方式。

主機入侵防禦系統與傳統區別

主機入侵防禦系統區別

所謂hips(主機入侵防禦體系),也就是現在大家所説的系統防火牆,它有別於傳統意義上的網絡防火牆nips.
二者雖然都是防火牆,但是在功能上其實還是有很大差別的:傳統的nips網絡防火牆説白了就是隻有在你使用網絡的時候能夠用上,通過特定的tcp/ip協議來限定用户訪問某一ip地址,或者也可以限制互聯網用户訪問個人用户和服務器終端,在不聯網的情況下是沒有什麼用處的;而hips系統防火牆就是限制諸如a進程調用b進程,或者禁止更改或者添加註冊表文件--打個比方説,也就是當某進程或者程序試圖偷偷運行的時候總是會調用系統的一些其他的資源,這個行為就會被hips檢測到然後彈出警告詢問用户是否允許運行,用户根據自己的經驗來判斷該行為是否正確安全,是則放行允許運行,否就不使之運行,一般來説,在用户擁有足夠進程相關方面知識的情況下,裝上一個hips軟件能非常有效的防止木馬或者病毒的偷偷運行,這樣對於個人用户來説,中毒插馬的可能性就基本上很低很低了.但是,只是裝上個hips也不是最安全的,畢竟--用户穿上的只是個全透明防彈衣也還是會被某些別有用心的人偷窺去用户的個人隱私的,所以,選用一款功能強大而小巧的防火牆也是很重要的--起碼有防止DDOS攻擊和防arp欺騙攻擊功能(對內網用户尤為重要)!

主機入侵防禦系統對比

上面是對hips和防火牆作個區別,因為殺軟和這兩類軟件差別比較大,就不拿到這裏來説了,下面我具體介紹一下hips以及常見的幾款hips安全軟件,希望對各位有所裨益!
我們個人用的HIPS可以分為3D:
AD(Application Defend)應用程序防禦體系
RD(Registry Defend)註冊表防禦體系
FD(File Defend)文件防禦體系
它通過可定製的規則對本地的運行程序、註冊表的讀寫操作、以及文件讀寫操作進行判斷並允許或禁止。
常用的HIPS軟件有:
SNS(Safe'n'Sec Personal)--AD+FD+RD,
SSM(System Safety Monitor),
PG(ProcessGuard和Port Explorer)--AD+RD,
GSS(Ghost Security Suite)--AD+RD,
SS(SafeSystem 2006)--FD.
EQSecure(國產的E盾)--AD+FD+RD