概要
威脅分析現(xiàn)在已經(jīng)成為日常工作的一部分。基于ELK這種大數(shù)據(jù)工具已經(jīng)成為日志分析的一個(gè)很流行的選擇方案,開源免費(fèi)部署方便,對日志的檢索及匯聚提供很好的用戶體驗(yàn)。之前糖果實(shí)驗(yàn)室就介紹過基于Graylog這種類ELK工具的整體日志處理方案。在經(jīng)過生產(chǎn)實(shí)踐后的體會總結(jié),發(fā)現(xiàn)了這種日志處理方案的好處,也發(fā)現(xiàn)了不足。隨著后續(xù)系統(tǒng)不斷接入新的安全日志數(shù)據(jù),更多校的日志分析需求來講,系統(tǒng)變的會越加復(fù)雜。針對復(fù)雜的策略查詢,有時(shí)我們基于ES和REST API的日志數(shù)據(jù)提供方式,在處理復(fù)雜查詢開發(fā)時(shí),開發(fā)效率會隨著規(guī)模變大而變慢,我們需求一種更高抽象級別,和業(yè)務(wù)數(shù)據(jù)的直接關(guān)聯(lián)的業(yè)務(wù)性語言,類似于SQL或是DSL一樣的操作指令,讓安全策略實(shí)現(xiàn)的落地成本降低。
ELK模式回顧
為從上層部署更好說明問題,我們用卡通一點(diǎn)的方式來描述系統(tǒng)結(jié)構(gòu),不涉及到更多的負(fù)載均衡和線路保障這種細(xì)節(jié)點(diǎn)。我們先回憶一下基于類似Graylog的日志分析方案。日志的數(shù)據(jù)的被封裝抽象成Stream流的概念,引用Pipeline管道,把日志從邏輯上進(jìn)行更高一級的抽象,這樣我們不對直接面對文件和索引這些概念,有了Stream、Input、Output、Pipeline、這種概念的模式設(shè)計(jì),可以更好的把原生的日志數(shù)據(jù)更好的歸類和業(yè)務(wù)靠近。
從日志的收集、到數(shù)據(jù)的格式化、到ES存儲、到REST API數(shù)據(jù)對外提供查詢、到自動化查詢、到數(shù)據(jù)的可視化是我們一般的使用套路,我們在這條思路上耕耘了有一段時(shí)間,更多的文章可以參考糖果實(shí)驗(yàn)室之前的文章,這里就是高度的概括一下這種系統(tǒng)的結(jié)構(gòu)。
戰(zhàn)斗民族的武器ClickHouse
我們再介紹一下基于ClickHouse的數(shù)據(jù)采集分析方案。其實(shí)從數(shù)據(jù)的收集、處理、查詢、展示,對用戶來說體驗(yàn)上大多數(shù)也有幾分類似,不同的一點(diǎn)是ClickHouse提供SQL方式的查詢。本身Graylog這種也內(nèi)含了MongoDB和Kafka等部件,而ClickHouse不是一種集成的解決處理方案。 相對簡化的介紹一下。從系統(tǒng)部署構(gòu)成來看,很相似。
方案間的差異性
ClickHouse和ES是兩種不同的數(shù)據(jù)檢索引擎。ClickHouse提供了基于SQL的查詢功能, ClickHouse對SQL支持和性能如何,在后期我們會給出相關(guān)的數(shù)據(jù)。像Graylog這種整體解決方案,提供了自己的數(shù)據(jù)查詢DSL,但這種DSL是獨(dú)立于Graylog本身的系統(tǒng),而SQL具有更強(qiáng)的通用性。ES也支持ES SQL,但這點(diǎn)上就是誰用誰知道了。這兩種方案核心的區(qū)別在于ES和ClickHouse不同的數(shù)據(jù)檢索方案,安全業(yè)務(wù)會針對不同的數(shù)據(jù)產(chǎn)生不同的安全審計(jì)需求。對于數(shù)據(jù)收集和數(shù)據(jù)的展示的都是類似,當(dāng)然ES也有ES SQL,但這不是SQL之間區(qū)別,而是兩種生態(tài)和設(shè)計(jì)的不同。
我們可以類似使用MySQL的方式來使用ClickHouse的表, 被監(jiān)控服務(wù)器將自身的數(shù)據(jù)通過特定的工具推送Kafka上,ClickHouse端去取得推送的數(shù)據(jù),然后將數(shù)據(jù)存到二維數(shù)據(jù)結(jié)構(gòu)的表中,之后我們就可以使用SQL語名去實(shí)現(xiàn)日志安全自動審計(jì)。Graylog這種類ELK的服務(wù)我們已經(jīng)在生產(chǎn)中使用了,基于REST API為核心的設(shè)計(jì)很方便前端和移動端的審計(jì)應(yīng)用擴(kuò)展?;谕{數(shù)據(jù)分析,我們基于ClickHouse實(shí)驗(yàn)出新的解決方案,重要針對的是復(fù)雜的數(shù)據(jù)檢索和業(yè)務(wù)數(shù)據(jù)碰撞。有了SQL這種高抽象實(shí)現(xiàn),減少純代碼對DSL操作依賴,代碼寫的少了,安全策略都被翻譯成SQL語句,但同時(shí)底層的引擎又不一樣。
方案間的共性
對于使用者來說,這兩個(gè)方案總體思路上還把日志和“流”和“管道”聯(lián)系在一起,邏輯上的日志數(shù)據(jù)流向,無論采用什么樣的工具和存儲,日志數(shù)據(jù)聚合模式都類似,只是協(xié)議上,是采用syslog協(xié)議,還是JSON協(xié)議,還是兩者都支持,基于數(shù)據(jù)匯聚的角度來說,兩種方案都可以達(dá)到目標(biāo)。但對安全策略實(shí)現(xiàn),那種方案更快,更方便,后續(xù)我們還會有新實(shí)驗(yàn)內(nèi)存和數(shù)據(jù)實(shí)現(xiàn)。大的共性,就是數(shù)據(jù)收集到外放數(shù)據(jù)的模式類似。
上面的圖大大的簡化了實(shí)際生產(chǎn)中的服務(wù)物理部署,用單點(diǎn)代替集群。簡化到最后,就可以相對清晰的看到日志數(shù)據(jù)的流向。從訪問者在請求服務(wù)者時(shí)產(chǎn)生的數(shù)據(jù),到數(shù)據(jù)推送到Kafka隊(duì)列,再由Kafka消費(fèi)者消費(fèi)數(shù)據(jù)給ClickHouse存儲,然后提供Openresty為基礎(chǔ)的API網(wǎng)關(guān),再提供給API使用者作用。
基于Graylog、ELK的API網(wǎng)關(guān)是基于ES的數(shù)據(jù)檢索,網(wǎng)關(guān)會把安全策略轉(zhuǎn)換成查詢, 而基于ClickHouse的API網(wǎng)關(guān),采用的就是基于ClickHouse的SQL查詢?yōu)榛A(chǔ)的安全策略落地執(zhí)行。我們在設(shè)計(jì)系統(tǒng)時(shí),讓安全策略和系統(tǒng)不依賴,或者說通用的安全策略不考慮實(shí)現(xiàn)的方案到底是ELK還是ClickHouse, 只要是安全分析策略,用一種腳本或是類似DSL的語言可能解析和執(zhí)行即可。
總結(jié)
ClickHouse是戰(zhàn)斗民族的產(chǎn)品,CloudFlare公司已經(jīng)用于生產(chǎn)分析中,也將繼續(xù)探索這些產(chǎn)品的新動向和實(shí)踐。將流量分析和日志分析統(tǒng)計(jì)結(jié)合起來分析威脅,發(fā)現(xiàn)威脅。一些系統(tǒng)形式都是手段,系統(tǒng)可以實(shí)現(xiàn)安全人員的策略并行之有效的解決安全問題,是實(shí)踐要達(dá)成的目標(biāo)。我們可以基于ClickHouse開發(fā)更高級抽象的DSL描述安全的人員的安全策略與其它系統(tǒng)聯(lián)動,完成威脅的分析與防護(hù)。后續(xù)會介紹一些相關(guān)的設(shè)計(jì)和工具及代碼。
文章名稱:ClickHouse與威脅日志分析-創(chuàng)新互聯(lián)
URL標(biāo)題:http://chinadenli.net/article38/dcpisp.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供企業(yè)建站、動態(tài)網(wǎng)站、虛擬主機(jī)、移動網(wǎng)站建設(shè)、靜態(tài)網(wǎng)站、網(wǎng)頁設(shè)計(jì)公司
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容