溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點(diǎn)擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

網(wǎng)絡(luò)流量分析引擎QNSM及其應(yīng)用是怎樣的

發(fā)布時間:2022-01-05 09:24:23 來源:億速云 閱讀:235 作者:柒染 欄目:云計算

本篇文章給大家分享的是有關(guān)網(wǎng)絡(luò)流量分析引擎QNSM及其應(yīng)用是怎樣的,小編覺得挺實(shí)用的,因此分享給大家學(xué)習(xí),希望大家閱讀完這篇文章后可以有所收獲,話不多說,跟著小編一起來看看吧。

導(dǎo)讀

一定業(yè)務(wù)規(guī)模的互聯(lián)網(wǎng)公司的基礎(chǔ)設(shè)施的網(wǎng)絡(luò)邊界通常都呈現(xiàn)一定程度的復(fù)雜多分區(qū)的情況,如何進(jìn)行有效的安全防護(hù)和控制會成為安全體系建設(shè)的重點(diǎn)和難點(diǎn)。

互聯(lián)網(wǎng)企業(yè)邊界復(fù)雜性

網(wǎng)絡(luò)流量分析引擎QNSM及其應(yīng)用是怎樣的

上圖是典型的中大型互聯(lián)網(wǎng)公司的網(wǎng)絡(luò)架構(gòu),通常分為:

辦公網(wǎng)絡(luò),可能還有如右下角的眾多小的分支機(jī)構(gòu),甚至還有辦公機(jī)房

核心數(shù)據(jù)中心, 這些數(shù)據(jù)中心機(jī)房可能分布在全國多個地方,并通過專線實(shí)現(xiàn)互連,在這個基礎(chǔ)上構(gòu)建了自己的私有云。

CDN網(wǎng)絡(luò),這些CDN節(jié)點(diǎn)和核心機(jī)房也存在一定的互連。

如果使用公有云基礎(chǔ)服務(wù),呈現(xiàn)混合云的模式,這些基礎(chǔ)服務(wù)與核心數(shù)據(jù)中心存在互連。

上述大量的分區(qū)都可能通過不同的方式接入到互聯(lián)網(wǎng)。

最后,BYOD和各種無線熱點(diǎn)以及手機(jī)無線熱點(diǎn)等出現(xiàn),導(dǎo)致呈現(xiàn)了大量碎片化的所謂新邊界。

對企業(yè)安全防御而言,帶來了各種新的挑戰(zhàn):

安全防御變得碎片化和多層次化,大邊界內(nèi)部還可能出現(xiàn)更多的小邊界。

單個邊界可能流量會非常大,特別是互聯(lián)網(wǎng)互聯(lián)的邊界,100Gps以上成為常態(tài),如果在這些邊界進(jìn)行流量檢測,要求流量檢測要具備高性能和很好的水平擴(kuò)展能力,隨時應(yīng)對邊界流量的擴(kuò)展。

企業(yè)面臨的內(nèi)外威脅依舊很嚴(yán)峻,流量型攻擊,漏洞型攻擊,邊界突破滲透,內(nèi)部人員的泄露、破壞和控制都是普遍存在。

安全防御的體系也在逐步演化,從單純的邊界防御、結(jié)合多層次內(nèi)部防御的縱深防御、以及立足于零信任或者假設(shè)失陷的下緊扣角色和權(quán)限的安全模型都在推動我們安全防御在不斷的升級迭代來應(yīng)對日益嚴(yán)峻的威脅。安全防御體系的演化不代表邊界消失了,邊界防御依舊是基礎(chǔ)和重要一環(huán),有效地流量分析和控制成為了新的安全防御體系重要的數(shù)據(jù)源和關(guān)節(jié)可編排的控制點(diǎn)。

因此,我們自研了旁路流量分析引擎QNSM(iQiYi Network SecurityMonitoring),通過對業(yè)務(wù)流量和旁路流量的協(xié)同分析,并集成多種可調(diào)度的防護(hù)能力,協(xié)同應(yīng)對多種類型和多種層次的攻擊,并且安全運(yùn)營體系打通,從接入、預(yù)案、響應(yīng)、聯(lián)動、防御、溯源逐步形成閉環(huán)。

QNSM簡介

全流量分析是非常重要的, 可以用來進(jìn)行資產(chǎn)發(fā)現(xiàn)、網(wǎng)絡(luò)監(jiān)控和可視化,對安全而言,通過對網(wǎng)絡(luò)流量的分析,對流量構(gòu)建基線建模,從流量中可以發(fā)現(xiàn)異常、風(fēng)險以及檢測攻擊,從流量中也可以實(shí)現(xiàn)數(shù)據(jù)內(nèi)容提取,發(fā)現(xiàn)潛在的敏感數(shù)據(jù)流動或者泄露,還可以進(jìn)行ACL策略校對,并將網(wǎng)絡(luò)流量產(chǎn)出的數(shù)據(jù)特征通過機(jī)器學(xué)習(xí)和專家分析,可以挖掘更多的信息以及進(jìn)行取證溯源和事件回查。

網(wǎng)絡(luò)流量分析引擎QNSM及其應(yīng)用是怎樣的

如上圖所示,QNSM是作為服務(wù)軟件運(yùn)行在普通多核X86服務(wù)器上,每一個服務(wù)器可以有多塊萬兆網(wǎng)卡,并且通過分光或者交換端口鏡像的方式獲得要分析的網(wǎng)絡(luò)流量,如果流量比較大,可以進(jìn)一步通過分流器進(jìn)行分流,將流量分散到不同的服務(wù)器上進(jìn)行分析,進(jìn)而QNSM利用DPDK實(shí)現(xiàn)了多個多核處理器和多個多隊(duì)列網(wǎng)卡實(shí)現(xiàn)了高速包處理,其高性能來自于:

零拷貝(Zero-copy)

預(yù)取、批量收包來減少cache miss和提高吞吐

Share Nothing的設(shè)計模式實(shí)現(xiàn)無鎖、無CPU切換

充分利用網(wǎng)卡的RSS特性,收包隊(duì)列和CPU核綁定

基礎(chǔ)庫

QNSM在DPDK的基礎(chǔ)上封裝構(gòu)建了各種基礎(chǔ)庫為構(gòu)建上層流水線提供了基礎(chǔ)能力,包括:

PORT:對網(wǎng)卡隊(duì)列和核心之間ring隊(duì)列的邏輯封裝,是實(shí)現(xiàn)并行處理和線性擴(kuò)展的基礎(chǔ)。

MSG:封裝了支持回調(diào)的CPU核心之間的傳遞的通信消息,這些消息可以是策略消息也可以是數(shù)據(jù)消息,這種無阻塞的核間消息支持一對一和一對多通信,實(shí)現(xiàn)數(shù)據(jù)和控制平面分開,數(shù)據(jù)集的輸出和包處理分開。

ACL:是支持回調(diào)的五元組的策略描述,例如要指定滿足怎么樣的策略的包要聚合、處理、dump等操作。

TBL:是對DPDKrte_hash表的封裝,是數(shù)據(jù)集的存儲,提供CURD操作接口,實(shí)現(xiàn)基于mempool的表項(xiàng)資源分配。

SCHED:是對工作線程的封裝,支持自定義的包處理,策略執(zhí)行,自定義計算邏輯,消息分發(fā)和定時回調(diào)等。

流水線

QNSM構(gòu)建了不同的流水線組件來滿足不同場景的安全應(yīng)用,為了支持更多的安全應(yīng)用場景,我們可以在基礎(chǔ)庫的基礎(chǔ)上構(gòu)建更多的流水線組件,進(jìn)而實(shí)現(xiàn)網(wǎng)絡(luò)流量多樣的處理能力。

SESSM:負(fù)責(zé)包解析,flow數(shù)據(jù)聚合和復(fù)制轉(zhuǎn)發(fā),處理策略消息等。

SIP_AGG:是對源IP進(jìn)行特征聚合和輸出,在攻擊時通過響應(yīng)策略消息打開。

VIP_AGG:實(shí)現(xiàn)目標(biāo)VIP(需要保護(hù)的業(yè)務(wù)IP)的自學(xué)習(xí),以及基于目標(biāo)VIP的進(jìn)行特征提取和向EDGE輸出。

DUMP:保存數(shù)據(jù)包為PCAP文件供后續(xù)的事件回溯,在攻擊時通過響應(yīng)策略消息打開。

EDGE:負(fù)責(zé)將上游組件發(fā)送的多維數(shù)據(jù)輸出到外部Kafka供進(jìn)一步分析。

DETECT:集成Suricata庫,支持IDPS的檢測。

基于QNSM現(xiàn)有的流水線組件,我們已經(jīng)將其應(yīng)用在DDoS攻擊檢測,IDPS檢測防護(hù),流量監(jiān)控以及網(wǎng)絡(luò)DLP等多種場景,并支撐了各種上層安全產(chǎn)品的開發(fā)。大家可以根據(jù)自己不同安全應(yīng)用的需要,設(shè)計和插入自開發(fā)的組件。

控制層

Master是整個引擎的主控,通過Kafka接收從管理平臺接收策略消息,并下發(fā)到流水線組件實(shí)現(xiàn)對流水線的配置和處理控制。

安全應(yīng)用

上圖展示了在愛奇藝如何應(yīng)用QNSM來滿足各種安全需求,愛奇藝的QNSM服務(wù)節(jié)點(diǎn)分布在各個網(wǎng)絡(luò)分區(qū)的邊界上,并通過邊控中心來進(jìn)行管理和維護(hù)。邊控中心(Aegis)是愛奇藝網(wǎng)絡(luò)安全防護(hù)的核心服務(wù),它有如下功能:

管理配置所有的QNSM集群,通過Kafka 和QNSM的進(jìn)行控制交互

通過IDPS網(wǎng)關(guān)實(shí)現(xiàn)管理和配置QNSM集成的IDPS(Suricata)

作為愛奇藝WAF的統(tǒng)一服務(wù)后臺,這里不做重點(diǎn)介紹

愛奇藝內(nèi)部的安全大數(shù)據(jù)分析引擎結(jié)合威脅情報等外源數(shù)據(jù),對從QNSM集群EDGE組件輸出到Kafka的數(shù)據(jù)進(jìn)行分析處理,產(chǎn)出的網(wǎng)絡(luò)攻擊事件會發(fā)送邊控中心,邊控中心會根據(jù)策略進(jìn)一步和態(tài)勢感知系統(tǒng)對接,進(jìn)而和安全運(yùn)營系統(tǒng)對接實(shí)現(xiàn)閉環(huán)運(yùn)營。

邊控中心可以按事件驅(qū)動QNSM dump網(wǎng)絡(luò)流量成PCAP文件,并ETL進(jìn)Moloch (https://github.com/aol/molocha largescale, open source, indexed packet capture and search system)建立包索引,方便對事件進(jìn)行包級別的分析和溯源。

我們將會在后續(xù)的分享文章中具體介紹邊控中心的架構(gòu)和設(shè)計,這里不再贅述。下面,簡單介紹我們是如何利用QNSM來滿足我們DDoS攻擊檢測和擴(kuò)展支持IDPS能力的需求。

DDoS攻擊檢測

業(yè)務(wù)接入邊控中心,會提供要保護(hù)的VIP(Virtual IP),此外QNSM也會主動發(fā)現(xiàn)流量中的目標(biāo)VIP并且和CMDB進(jìn)行比對發(fā)現(xiàn)屬于待保護(hù)的VIP。DDoS攻擊檢測方法主要是要基于受保護(hù)的VIP為目標(biāo)的流量進(jìn)行聚合特征數(shù)據(jù)供安全大數(shù)據(jù)分析引擎進(jìn)行判斷以實(shí)現(xiàn)DDoS檢測。整體的檢測思路是構(gòu)建目標(biāo)VIP以及所在機(jī)房的流量基線,計算流量特征,并進(jìn)行多維異常檢測識別攻擊,常見的流量基線是包括VIP和本機(jī)房的成分基線以及機(jī)房流量基線和流量上邊界,通過當(dāng)前流量與基線進(jìn)行實(shí)時計算,構(gòu)建表示當(dāng)前流量與基線的偏離的多維指標(biāo)特征,并利用解釋性強(qiáng)的模型來進(jìn)行檢測判斷(例如評分卡模型等),并且會采取邊控中心運(yùn)營對事件的正負(fù)反饋來進(jìn)一步修正基線和訓(xùn)練模型。

通過前面的多維異常檢測識別出流量攻擊以后,邊控中心收到攻擊事件和報警后會立即采取如下行動:

邊控中心通過Kafka向Master組件下發(fā)各種策略消息管理和指導(dǎo)流水線的工作,包括dump數(shù)據(jù)包取證,攻擊源IP發(fā)現(xiàn),攻擊源端口提取,反射攻擊協(xié)議DFI等策略消息。

Master組件根據(jù)策略喚醒SIP_AGG組件,DUMP組件,其中SIP_AGG組件基于源IP聚合特征數(shù)據(jù)(可用于協(xié)助發(fā)現(xiàn)后續(xù)攻擊來源IP), DUMP組件會進(jìn)行dump數(shù)據(jù)包,dump出的PCAP文件投遞到Moloch進(jìn)一步索引和進(jìn)行專家分析。

VIP_AGG組件基于VIP+SPORT聚合特征數(shù)據(jù),SESSM組件也會針對被攻擊VIP 做協(xié)議DFI識別,以協(xié)助識別是否存在某類協(xié)議的反射攻擊。

QNSM通過EDGE組件,聚合數(shù)據(jù)進(jìn)入到Kafka,可以作為安全大數(shù)據(jù)分析的數(shù)據(jù)源,并且和其他不同的安全服務(wù)進(jìn)行聯(lián)動。

DDoS攻擊結(jié)束,邊控中心通過Kafka向Master組件下發(fā)策略關(guān)閉消息管理和指導(dǎo)流水線中的重度組件工作。

在檢測出VIP的入口流量存在攻擊的情況下,通常需要進(jìn)一步判斷該攻擊是否為反射攻擊,我們會利用QNSM產(chǎn)出的VIP+SPORT聚合特征數(shù)據(jù)以及 SESSM組件的DFI協(xié)議識別特征數(shù)據(jù),在安全大數(shù)據(jù)引擎計算不同的源端口的流量占比分布和包占比分布等特征進(jìn)而計算熵值,熵值越小,風(fēng)險越高(占比越高,風(fēng)險越高, 流量和包占比如果全部集中在一個端口,熵將會是0),我們會結(jié)合多維度特征構(gòu)建評分卡模型,最終給出是否是某一類協(xié)議的反射攻擊的判定。

攻擊確定以后,會根據(jù)應(yīng)急預(yù)案進(jìn)行流量牽引,愛奇藝構(gòu)建了私有的流量清洗中心,并結(jié)合云清洗和運(yùn)營商的近源清洗形成了三位一體的清洗能力。

IDPS能力集成

Suricata是一種基于網(wǎng)絡(luò)流量的IDPS引擎,它有廣泛的規(guī)則集來監(jiān)控網(wǎng)絡(luò)流量,并在發(fā)生入侵事件時觸發(fā)警報, QNSM使用庫文件的方式將Suricata集成,并通過IDPS網(wǎng)關(guān)接收邊控中心下發(fā)更新Suricata相關(guān)檢測規(guī)則,從SESSM組件復(fù)制轉(zhuǎn)發(fā)過來的包會通過Detect組件調(diào)用Suricata進(jìn)行處理,實(shí)現(xiàn)實(shí)時檢測和觸發(fā)事件和告警,并通過Kafka將事件和告警輸出到安全大數(shù)據(jù)分析引擎進(jìn)行進(jìn)一步分析處理。通過對Suricata的集成,QNSM可以兼容大量開源和自定義的IDPS規(guī)則集,并且規(guī)則管理方式保持完全一致。

利用Suricata的DFI能力,QNSM也快速擴(kuò)展支持從流量中識別各類數(shù)據(jù)庫,緩存等云服務(wù)訪問流量的能力,并且支持從流量中提取文件信息(包括文件名,文件大小,文件類型,MD5等),通過Kafka輸出到安全大數(shù)據(jù)分析引擎,最終實(shí)現(xiàn)向DLP平臺(綠盾)輸出數(shù)據(jù)泄露和違規(guī)訪問事件。

目前支持了愛奇藝內(nèi)部常見的HTTP, MySQL,Redis,CouchBase, Memcached,MongoDB,Elasticsearch,Kafka,VNC,RSYNC等多種協(xié)議和相關(guān)工具的識別,支持對HTTP,SMTP,F(xiàn)TP文件傳輸通道的監(jiān)控。

開源

目前QNSM 已經(jīng)應(yīng)用到愛奇藝包括DDOS攻擊檢測檢測、IDPS、網(wǎng)絡(luò)DLP等多種安全檢測場景,累計部署22+集群共計130+分析節(jié)點(diǎn),總分析帶寬容量達(dá)到1TBps。

我們需要大家和我們一起改進(jìn)QNSM,讓它變得更強(qiáng)大,非常歡迎更多的合作和貢獻(xiàn),覆蓋更多的甚至不限于安全應(yīng)用的場景。

以上就是網(wǎng)絡(luò)流量分析引擎QNSM及其應(yīng)用是怎樣的,小編相信有部分知識點(diǎn)可能是我們?nèi)粘9ぷ鲿姷交蛴玫降?。希望你能通過這篇文章學(xué)到更多知識。更多詳情敬請關(guān)注億速云行業(yè)資訊頻道。

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI