主機安全,顧名思義就是保護主機的環(huán)境安全的產(chǎn)品。這是一種古老的安全產(chǎn)品,在安全界與“防火墻”“DDoS高防”合稱“老三樣”,是居家旅行、保護主機的必備良藥。
主機安全產(chǎn)品種類繁多、名目不一,但一般常見的就兩種:一種,叫HIDS,全稱為Host-based Intrusion Detection System,即基于主機型入侵檢測系統(tǒng),通過在主機里安裝插件來測探各種信息以判斷是否有異?;蛘吖舭l(fā)生,這是最通用的一種主機安全產(chǎn)品;還有一種,叫NIDS,全稱為Network Intrusion Detection System,即網(wǎng)絡入侵檢測系統(tǒng),通過測探進入主機的網(wǎng)絡流量來判斷有沒有發(fā)生攻擊,但這種方式需要消耗的資源比較多,市面上較為少見。
對云上的用戶來說,云主機安全產(chǎn)品都是前一種,即HIDS,比如華為云也發(fā)布了一款主機安全產(chǎn)品叫“企業(yè)主機安全服務”,就是典型的HIDS,那下面咱們就來說說HIDS的原理,懂得了原理,就容易懂得一切,所謂一通百通。
一、什么是云上的HIDS?
形象地說,云主機是個房子,而HIDS是一個體系,它首先把一個攝像頭(專業(yè)術語叫Agent或者代理)裝在房子里,然后啟動攝像頭在云主機系統(tǒng)里東看看西看看,比如看看系統(tǒng)日志啊、看看系統(tǒng)文件啊、看看進程啊、看看系統(tǒng)配置啊,看誰在系統(tǒng)里搞事情、有沒有留下什么蛛絲馬跡,一旦發(fā)現(xiàn)有人搞事情,HIDS就會上報給遠端的服務器并發(fā)出告警。
二、HIDS的組成是怎么樣的?
上面說到的攝像頭,只是HIDS組件的一個部分,產(chǎn)品架構簡圖如下:
可見,主要由3大部分組成,包括Agent、管理控制臺、運營平臺。其中:
1、主機安全Agent組件:相當于主機里的攝像頭,作用是檢測系統(tǒng)文件變更、檢測服務器狀態(tài)、上傳日志、下發(fā)操作指令等。
2、管理控制臺:用以給管理人員、運維人員執(zhí)行防御策略管理、資源管理、命令下發(fā)等。
3、運營平臺:實戰(zhàn)中大規(guī)模的主機安全產(chǎn)品,比這復雜得多,主要是要考慮管理海量云主機帶來的資源開銷和性能損耗,所以真正的主機安全產(chǎn)品,還需要在Agent和管理控制臺之間搭建:
·用于加快數(shù)據(jù)分發(fā)效率的負載均衡;
·用于存儲防御策略和日志的數(shù)據(jù)庫集群;
·用于后臺安全事件運維運營的數(shù)據(jù)整合服務器集群;
·用于實時分析數(shù)據(jù)得出可能攻擊的分析集群等等。
比如一款開源HIDS的典型架構是這樣的(如不懂技術可忽略):
這樣才能做到實時的分析系統(tǒng)狀態(tài)并及時下發(fā)防御策略,并且便于日常維護和運營。
大家有沒有發(fā)現(xiàn),HIDS是一款很典型的“云安全”產(chǎn)品:它的Agent放在每個云主機上,但大部分功能都在各種集群里,這樣就使得用戶花費的計算資源等開銷會變得很小,因為功能都在“云”上,也就是在遠端的各種服務器集群上實現(xiàn)了大部分功能。
這里也請大家注意,這是目前互聯(lián)網(wǎng)最常用的架構,而并非是安全產(chǎn)品所獨有,比如大家日常用的百度APP,功能可能差別很大,但是其原理也是以一個很小的Agent(應用)裝在手機上,大部分功能都在遠端的“云”上完成了。
三、如何判斷一款主機安全產(chǎn)品是不是好產(chǎn)品?
從各大互聯(lián)網(wǎng)廠商對一款好的主機安全產(chǎn)品的定義可以作為參考。為什么拿互聯(lián)網(wǎng)廠商做例子?因為他們的主機是海量的,特別需要主機安全類的產(chǎn)品,而只有少量主機的話,很難遇到復雜的攻防場景。比如美團發(fā)布的一篇文章介紹了他們的實踐,他們對主機安全產(chǎn)品的需求是這樣的(如果對技術不感冒,可以忽略,我后面會總結):
·滿足50W-100W服務器量級的IDC規(guī)模。
·部署在高并發(fā)服務器生產(chǎn)環(huán)境,要求Agent低性能低損耗。
·廣泛的部署兼容性。
·偏向應用層和用戶態(tài)入侵檢測(可以和內(nèi)核態(tài)檢測部分解耦)。
·針對利用主機Agent排查漏洞的最急需場景提供基本的能力,可以實現(xiàn)海量環(huán)境下快速查找系統(tǒng)漏洞。
·Agent跟Server的配置下發(fā)通道安全。
配置信息讀取寫入需要鑒權。
·配置變更歷史記錄。
·Agent插件具備自更新功能。
歸納起來,主要是:
·Agent對系統(tǒng)資源需求少,系統(tǒng)負載占用小,也就是別一個Agent裝到主機里,導致主機卡頓了,對應的指標就是Agent的CPU占用率,一般5%以內(nèi)都算不錯的。
·有豐富的API和強大的聯(lián)動能力,也就是方便安全數(shù)據(jù)查看分析匯總,方便運維運營。
·支持規(guī)則引擎,能夠靈活的進行防御規(guī)則配置和下發(fā),也就是方便管理員隨時添加、更新防護策略,保障能精準地發(fā)現(xiàn)安全攻擊。
·分布式、高可用,也就是不能隨隨便便掛了,要好好的活著給大家防護好。