本發(fā)明涉及網(wǎng)絡安全技術(shù),具體涉及一種基于云平臺的統(tǒng)一安全防御系統(tǒng)。
背景技術(shù):
隨著信息科學的高度發(fā)展,互聯(lián)網(wǎng)技術(shù)已經(jīng)融入到大眾生活的方方面面,互聯(lián)網(wǎng)使人們在娛樂、商務及溝通的方式上產(chǎn)生了重大變革,但也帶來了一些問題,網(wǎng)絡安全問題是首要問題,直接影響互聯(lián)網(wǎng)業(yè)務的運行和用戶的使用,用戶數(shù)據(jù)的泄露還可能導致重大安全事件。
當前互聯(lián)網(wǎng)產(chǎn)品開發(fā)過程中,為了解決網(wǎng)絡安全問題,通常采用引入安全組件對用戶請求、用戶數(shù)據(jù)、返回數(shù)據(jù)進行加密解密、編碼解碼、入侵檢測及異常檢測等策略,采取將安全組件引入業(yè)務邏輯代碼的方法實現(xiàn)。這種方法導致產(chǎn)品業(yè)務邏輯代碼與安全組件代碼間耦合度過高,迭代速度慢,升級及部署不易,溝通成本大等問題。同時,由于多個開發(fā)小組業(yè)務水平不一,可能導致某些安全組件引入的遺漏,造成安全事件,給系統(tǒng)運行及用戶使用造成嚴重隱患。
傳統(tǒng)的安全組件在網(wǎng)絡方面通常對異常流量,異常連接等安全問題進行檢測,在業(yè)務方面,通常檢測異常登錄,用戶身份認證枚舉爆破,跨站腳本攻擊,跨域請求偽造,數(shù)據(jù)庫注入等。這樣的方式可以檢測部分安全問題,但也存在一定缺陷,例如,缺少對返回數(shù)據(jù)的檢測(返回數(shù)據(jù)是否滿足業(yè)務經(jīng)常返回數(shù)據(jù)的特征),任意文件下載(由于附件或代碼執(zhí)行等多種問題導致)等,這遺留了一部分安全隱患。
因此,傳統(tǒng)技術(shù)中的網(wǎng)絡安全方案還存在的如下缺陷:
1、安全組件與業(yè)務代碼耦合度過高,一旦安全組件需要更改,必須影響到業(yè)務開發(fā)團隊,導致迭代速度慢,開發(fā)成本增大。
2、現(xiàn)有的安全組件只能解決部分安全問題,缺少對基于特定應用的請求數(shù)據(jù)和返回數(shù)據(jù)的特征分析,可能檢測不到某些安全問題,造成安全事件。
3、發(fā)生安全事件后,如果需要開發(fā)新的安全組件,將影響所有的現(xiàn)有業(yè)務,所有現(xiàn)有業(yè)務代碼必須升級,導致對安全事件的響應速度慢。
4、檢測出0day漏洞的可能性極低,無法及時告警和防止數(shù)據(jù)泄露。
技術(shù)實現(xiàn)要素:
本發(fā)明所要解決的技術(shù)問題是:提出一種基于云平臺的統(tǒng)一安全防御系統(tǒng),以解決傳統(tǒng)網(wǎng)絡安全方案中業(yè)務代碼與安全組件耦合度高、安全組件解決的安全問題不完備、對于安全事件響應速度慢以及無法發(fā)現(xiàn)新安全事件等問題。
本發(fā)明解決上述技術(shù)問題所采用的方案是:
一種基于云平臺的統(tǒng)一安全防御系統(tǒng),包括:
流量分析集群,用于接收網(wǎng)絡流量數(shù)據(jù),從中分析異常連接及異常流量,對異常情況進行日志記錄和告警,將無異常的流量轉(zhuǎn)發(fā)給請求接收集群;
請求接收集群,用于提取所需訪問的應用id并讀取配置文件,根據(jù)配置文件完成對客戶端發(fā)送的加密數(shù)據(jù)的解密,以及對編碼數(shù)據(jù)的解碼,然后綜合應用id、用戶請求和用戶數(shù)據(jù)構(gòu)造一個或多個服務請求發(fā)送給安全組件集群;并對安全組件集群返回的響應數(shù)據(jù)進行相關(guān)組合;
安全組件集群,用于判斷用戶請求的服務是否安全,判斷用戶發(fā)送的數(shù)據(jù)是否安全;檢測是否帶有會話信息和用戶身份信息;檢測告警可能存在的跨域請求偽造;基于用戶常用行為模式分析判斷是否存在異常連接信息;對服務返回的信息進行檢測、告警可能存在的安全問題;所述安全組件集群將安全的服務請求轉(zhuǎn)發(fā)給應用服務組件,并接受應用服務組件返回的數(shù)據(jù);
應用服務組件集群,以微服務構(gòu)架軟件的方式存在,為用戶提供應用服務。
作為進一步優(yōu)化,所述流量分析集群接收網(wǎng)絡流量數(shù)據(jù),從中分析異常連接及異常流量,包括:流量分析集群在接收到網(wǎng)絡流量數(shù)據(jù)后,首先根據(jù)首先根據(jù)歷史黑白名單判斷是否為異常流量,并做相關(guān)處理;
然后,流量分析集群分析在傳輸層對于不同協(xié)議的流量特征,并提取成向量,再和表示正常訪問的特征向量求相似性,當相似性大于某動態(tài)閾值時,判斷為正常流量并轉(zhuǎn)發(fā)到請求接收集群,否則,判斷為異常流量,記入安全日志及告警系統(tǒng),并更新黑名單。
作為進一步優(yōu)化,所述流量分析集群分析在傳輸層對于不同協(xié)議的流量特征,并提取成向量,包括:
以[源ip,源端口,目的ip,目的端口,協(xié)議]表示身份信息,分析一段時間內(nèi)syn包數(shù)、fin包數(shù)、連接成功數(shù)、連接失敗數(shù)、零窗口、小窗口次數(shù)、半開連接次數(shù)等,用向量表示這些特征為:
所述求相似性為求兩個向量的歐式距離相似性或者兩個向量的余弦相似性,其中求兩個向量的余弦相似性表示為:
當
作為進一步優(yōu)化,所述安全組件集群判斷用戶發(fā)送的數(shù)據(jù)是否安全包括檢測其中可能存在的具有數(shù)據(jù)庫注入、跨站腳本攻擊等數(shù)據(jù)。
作為進一步優(yōu)化,所述安全組件集群基于用戶常用行為模式分析判斷是否存在異常連接信息,包括:安全組件集群分析用戶常用行為模式,并將于用戶常用行為模式不符的行為通過數(shù)值算法轉(zhuǎn)換為相關(guān)異常累加值,當異常累加值超過一定閾值后,告警可能存在的異常連接信息。
作為進一步優(yōu)化,所述安全組件集群對服務返回的信息進行檢測、告警可能存在的安全問題,包括:安全組件集群對服務返回的數(shù)據(jù)進行特征提取,告警其中可能存在的數(shù)據(jù)庫注入、跨站腳本攻擊、任意文件下載等安全問題,可提前進行安全響應和/或發(fā)現(xiàn)oday漏洞。
作為進一步優(yōu)化,所述流量分析集群在對異常情況進行日志記錄的同時,還在可視化系統(tǒng)中進行顯示。
本發(fā)明的有益效果是:
1、將異常流量、異常連接檢測、業(yè)務安全檢測集成到一套系統(tǒng)中,不僅可以發(fā)現(xiàn)常見的已知漏洞,還能根據(jù)流量特征、用戶行為特征、數(shù)據(jù)特征等發(fā)現(xiàn)部分0day漏洞,提前進行安全預警。
2、所有業(yè)務使用統(tǒng)一安全防御系統(tǒng),可以避免由于開發(fā)團隊遺漏引入相關(guān)安全組件而導致的安全事件。
3、安全組件與業(yè)務代碼耦合度低,便于迭代,更新,部署。當新安全事件發(fā)生時,只需開發(fā)新安全組件或更新現(xiàn)有安全組件,基本不影響業(yè)務代碼。
附圖說明
圖1為本發(fā)明實施例中基于云平臺的統(tǒng)一安全防御系統(tǒng)構(gòu)架圖;
圖2為異常流量及異常連接檢測示意圖;
圖3為業(yè)務安全檢測示意圖。
具體實施方式
本發(fā)明旨在提出一種基于云平臺的統(tǒng)一安全防御系統(tǒng),以解決傳統(tǒng)網(wǎng)絡安全方案中業(yè)務代碼與安全組件耦合度高、安全組件解決的安全問題不完備、對于安全事件響應速度慢以及無法發(fā)現(xiàn)新安全事件等問題。
在本發(fā)明中,基于云的統(tǒng)一安全防御系統(tǒng)以服務的方式存在,并將各個安全組件以微服務架構(gòu)軟件的方式運行于云平臺中,各個安全組件以進程間通信接口進行交互。所有部署于云平臺上的應用只需考慮自身業(yè)務代碼的實現(xiàn),默認用戶請求、用戶數(shù)據(jù)、返回數(shù)據(jù)均為安全的;用戶請求、用戶數(shù)據(jù)、返回數(shù)據(jù)的安全性檢查及過濾交由安全組件完成。
下面結(jié)合附圖及實施例對本發(fā)明的方案作更進一步的描述:
如圖1所示,本實施例中的基于云平臺的統(tǒng)一安全防御系統(tǒng),包括:流量分析集群、請求接收集群、安全組件集群、應用服務組件集群;
流量分析集群,用于接收網(wǎng)絡流量數(shù)據(jù),從中分析異常連接及異常流量,對異常情況進行日志記錄和告警,將無異常的流量轉(zhuǎn)發(fā)給請求接收集群;
請求接收集群,用于提取所需訪問的應用id并讀取配置文件,根據(jù)配置文件完成對客戶端發(fā)送的加密數(shù)據(jù)的解密,以及對編碼數(shù)據(jù)的解碼,然后綜合應用id、用戶請求和用戶數(shù)據(jù)構(gòu)造一個或多個服務請求發(fā)送給安全組件集群;并對安全組件集群返回的響應數(shù)據(jù)進行相關(guān)組合;
安全組件集群,用于判斷用戶請求的服務是否安全,判斷用戶發(fā)送的數(shù)據(jù)是否安全;檢測是否帶有會話信息和用戶身份信息;檢測告警可能存在的跨域請求偽造;基于用戶常用行為模式分析判斷是否存在異常連接信息;對服務返回的信息進行檢測、告警可能存在的安全問題;所述安全組件集群將安全的服務請求轉(zhuǎn)發(fā)給應用服務組件,并接受應用服務組件返回的數(shù)據(jù);
應用服務組件集群,以微服務構(gòu)架軟件的方式存在,為用戶提供應用服務。
基于上述系統(tǒng),本發(fā)明實現(xiàn)網(wǎng)絡安全防御的原理為:
流量分析集群接收到網(wǎng)絡流量數(shù)據(jù)后,首先根據(jù)歷史黑白名單判斷是否為非異常流量,并做相關(guān)處理:先判斷相關(guān)連接屬性是否在白名單中,如果在白名單中,則直接轉(zhuǎn)發(fā)到安全組件集群進行下一步處理;如果不在白名單中,則繼續(xù)判斷相關(guān)連接屬性是否在黑名單中,如果在黑名單中,則啟動安全響應機制(如拒絕連接、記錄安全信息并告警),如果也不在黑名單中,則分析在傳輸層對于不同協(xié)議一些正常/異常特征(例如,對tcp,將分析一段時間內(nèi)syn包數(shù),連接成功數(shù),連接失敗數(shù),零窗口或/和小窗口次數(shù),半開連接次數(shù)等),并提取成向量,并和表示正常訪問的特征向量求相似性(歐式距離,余弦相似性等),當相似性大于某動態(tài)閾值時,表示正常流量并轉(zhuǎn)發(fā)到請求接收集群,否則,表示異常流量,記入安全日志及告警系統(tǒng)。在判斷為異常流量或者異常連接后,對黑名單進行更新。異常流量及異常連接的檢測如圖2所示。
連接的身份信息為[源ip,源端口,目的ip,目的端口,協(xié)議(tcp)],時間差建議設置為1‐2分鐘,用向量表示流量特征信息為:
兩個向量的余弦相似性如下所示:
當
異常流量和異常連接檢測過程如附圖2所示。
對非異常流量,流量檢測集群將轉(zhuǎn)發(fā)到請求接收集群,請求接收集群將完成以下一些功能:
1、提取所需訪問應用id并讀取相關(guān)配置文件。
2、將客戶端編碼數(shù)據(jù)進行解碼,加密數(shù)據(jù)進行解密。
3、綜合[應用id,用戶請求,用戶數(shù)據(jù)]構(gòu)建一條或多條請求,并將相關(guān)請求和數(shù)據(jù)轉(zhuǎn)發(fā)到安全組件集群。
4、將各個安全組件返回的信息進行合并及返回。
安全組件拆分為具體功能的服務,并以進程的形式運行于多個容器中,各自以進程間通信的方式進行交互。收到[應用id,用戶請求,用戶數(shù)據(jù)]的安全組件進程將對請求數(shù)據(jù)進行相關(guān)分析,其中,安全組件進程將完成以下功能:
1、判斷用戶請求服務是否安全。
2、檢測用戶提交的數(shù)據(jù)中是否含有sql注入的相關(guān)特征。
3、檢測用戶提交的數(shù)據(jù)中是否含有跨站腳本攻擊的相關(guān)特征。
4、檢測是否帶有會話信息和用戶身份信息。
5、根據(jù)歷史數(shù)據(jù)檢測該應用的請求數(shù)據(jù)特征(并非具體到某一用戶),判斷是否是異常行為數(shù)據(jù)。
6、根據(jù)歷史數(shù)據(jù)檢測返回的數(shù)據(jù)是否異常。對于一個常用服務的訪問,得到的數(shù)據(jù)特征與以前差異很大,就表示異常。(正常返回的頁面信息和sql注入返回數(shù)據(jù)差異很大)。
7、檢測返回數(shù)據(jù)是否具有某些特定文件的特征,如/etc/passwd,~/.bash_history或服務配置文件等(任意文件下載漏洞返回的數(shù)據(jù)通常具有一些特征)。
8、更新黑名單,進行安全告警或者日志記錄等。
業(yè)務安全檢測示意圖如附圖3所示。
優(yōu)選地,對于特定模式的判斷,仍然采取將應用id,用戶請求,用戶數(shù)據(jù),返回數(shù)據(jù)根據(jù)特征提取為向量的形式,與正常訪問/安全事件的特征向量求取相似性。對于給定經(jīng)驗閾值,如果大于經(jīng)驗閾值,則歸為一類,其具體操作過程類似于流量分析集群中的異常流量檢測,在此不再贅述,其參數(shù)值應根據(jù)業(yè)務實際情況分析選取。安全組件與告警系統(tǒng),黑白名單,日志系統(tǒng)相連,并做好相關(guān)安全響應工作。此類安全防御手段不僅可以檢測已知類型的漏洞,還可對于未知類型漏洞/0day漏洞做出一定程度的檢測與響應,提高了系統(tǒng)整體安全性,保護了用戶數(shù)據(jù)。
優(yōu)選地,安全相應組件以微服務軟件架構(gòu)開發(fā)部署,當需要開發(fā)新安全組件或更新現(xiàn)有安全組件時,只需要注冊新的安全組件服務或更改現(xiàn)有安全組件服務后重新部署,基本不影響業(yè)務代碼。所有的業(yè)務應用共享一整套安全防御系統(tǒng),各個集群中的組件冗余部署,在負載均衡的同時保證系統(tǒng)高可用。
安全防御可視化子系統(tǒng)采集黑白名單,安全日志,告警系統(tǒng)等相關(guān)信息供網(wǎng)絡安全從業(yè)人員使用,用于做好安全響應及安全預警相關(guān)工作。