亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

一種流量檢測規(guī)則的生成方法及裝置與流程

文檔序號:12132321閱讀:238來源:國知局
一種流量檢測規(guī)則的生成方法及裝置與流程

本發(fā)明涉及互聯(lián)網(wǎng)技術(shù)領(lǐng)域,特別是涉及一種流量檢測規(guī)則的生成方法及裝置。



背景技術(shù):

隨著互聯(lián)網(wǎng)技術(shù)的普及,各種網(wǎng)絡(luò)應(yīng)用層出不窮,安全威脅和網(wǎng)絡(luò)濫用也隨之與日俱增,這對快速、可靠地識別出各種流量提出了要求。

目前,一般采用DPI(Deep Packet Inspection,深層數(shù)據(jù)包檢測技術(shù))對流量進(jìn)行檢測,深層數(shù)據(jù)包檢測技術(shù)檢測流量的規(guī)則由以下方式生成:人工對攻擊流量的負(fù)載進(jìn)行特征提取,將提取到的特征輸入檢測引擎中,檢測引擎依據(jù)自身規(guī)則語法,由提取的特征生成流量檢測規(guī)則。

根據(jù)上述方法生成流量檢測規(guī)則時,提取到的特征越多,流量檢測結(jié)果越準(zhǔn)確,為了提高檢測結(jié)果的準(zhǔn)確度,需要人工提取大量的特征,這使得流量檢測規(guī)則的生成耗費大量的時間。



技術(shù)實現(xiàn)要素:

本發(fā)明實施例的目的在于提供一種流量檢測規(guī)則的生成方法及裝置,以減少流量檢測規(guī)則生成耗費的時間。具體技術(shù)方案如下:

一方面,本發(fā)明實施例公開了一種流量檢測規(guī)則的生成方法,應(yīng)用于電子設(shè)備,所述方法包括:

獲取針對預(yù)設(shè)漏洞的至少兩條攻擊流量的流量文件;所述流量文件至少包括攻擊流量中的負(fù)載數(shù)據(jù);

根據(jù)所述攻擊流量的協(xié)議類型,確定每一攻擊流量的請求方和應(yīng)答方;

將所述預(yù)設(shè)漏洞的漏洞信息確定為情報指引項;

從所有所述流量文件中提取所有請求方的第一負(fù)載數(shù)據(jù);

將所有所述第一負(fù)載數(shù)據(jù)和所述情報指引項作為第一輸入源,計算得到所有所述第一負(fù)載數(shù)據(jù)的第一最長公共子串;

將所述第一最長公共子串確定為第一特征;

根據(jù)所述第一特征,生成第一流量檢測規(guī)則。

另一方面,本發(fā)明實施例公開了一種流量檢測規(guī)則的生成裝置,應(yīng)用于電子設(shè)備,所述裝置包括:

獲取單元,用于獲取針對預(yù)設(shè)漏洞的至少兩條攻擊流量的流量文件;所述流量文件至少包括攻擊流量中的負(fù)載數(shù)據(jù);

第一確定單元,用于根據(jù)所述攻擊流量的協(xié)議類型,確定每一攻擊流量的請求方和應(yīng)答方;

第二確定單元,用于將所述預(yù)設(shè)漏洞的漏洞信息確定為情報指引項;

提取單元,用于從所有所述流量文件中提取所有請求方的第一負(fù)載數(shù)據(jù);

計算單元,用于將所有所述第一負(fù)載數(shù)據(jù)和所述情報指引項作為第一輸入源,計算得到所有所述第一負(fù)載數(shù)據(jù)的第一最長公共子串;

第三確定單元,用于將所述第一最長公共子串確定為第一特征;

第一生成單元,用于根據(jù)所述第一特征,生成第一流量檢測規(guī)則。

本發(fā)明實施例提供了一種流量檢測規(guī)則的生成方法及裝置,電子設(shè)備獲取針對預(yù)設(shè)漏洞的至少兩條攻擊流量的流量文件,其中,該流量文件至少包括攻擊流量中的負(fù)載數(shù)據(jù);根據(jù)攻擊流量的協(xié)議類型,確定每一攻擊流量的請求方和應(yīng)答方;將預(yù)設(shè)漏洞的漏洞信息確定為情報指引項;從所有流量文件中提取所有請求方的第一負(fù)載數(shù)據(jù);將所有第一負(fù)載數(shù)據(jù)和情報指引項作為第一輸入源,計算得到所有第一負(fù)載數(shù)據(jù)的第一最長公共子串;將第一最長公共子串確定為第一特征;根據(jù)該第一特征,生成第一流量檢測規(guī)則??梢姡景l(fā)明實施例中,生成流量檢測規(guī)則時,特征的提取無需人工參與,而是由電子設(shè)備提取特征,減少了流量檢測規(guī)則生成耗費的時間。當(dāng)然,實施本發(fā)明的任一產(chǎn)品或方法必不一定需要同時達(dá)到以上所述的所有優(yōu)點。

附圖說明

為了更清楚地說明本發(fā)明實施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對實施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實施例,對于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動的前提下,還可以根據(jù)這些附圖獲得其他的附圖。

圖1為本發(fā)明實施例提供的一種流量檢測規(guī)則的生成方法的一種流程示意圖;

圖2為本發(fā)明實施例提供的一種流量檢測規(guī)則的生成方法的另一種流程示意圖;

圖3為本發(fā)明實施例提供的一種流量檢測規(guī)則的生成方法的另一種流程示意圖;

圖4為本發(fā)明實施例提供的一種流量檢測規(guī)則的生成裝置的結(jié)構(gòu)示意圖。

具體實施方式

下面將結(jié)合本發(fā)明實施例中的附圖,對本發(fā)明實施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實施例僅僅是本發(fā)明一部分實施例,而不是全部的實施例?;诒景l(fā)明中的實施例,本領(lǐng)域普通技術(shù)人員在沒有做出創(chuàng)造性勞動前提下所獲得的所有其他實施例,都本發(fā)明保護(hù)的范圍。

下面通過具體實施例,對本發(fā)明進(jìn)行詳細(xì)說明。

參考圖1,圖1本發(fā)明實施例提供的一種流量檢測規(guī)則的生成方法的一種流程示意圖,應(yīng)用于電子設(shè)備,該方法包括:

S101:獲取針對預(yù)設(shè)漏洞的至少兩條攻擊流量的流量文件;所述流量文件至少包括攻擊流量中的負(fù)載數(shù)據(jù);

上述預(yù)設(shè)漏洞為已知漏洞,流量文件可以為pcap文件。當(dāng)需要生成針對某一已知漏洞的攻擊流量的流量檢測規(guī)則時,可以將該已知漏洞確定為預(yù)設(shè)漏洞,多次運行該預(yù)設(shè)漏洞的利用程序,獲得至少兩條攻擊流量,進(jìn)而生成pcap文件?,F(xiàn)有技術(shù)中,在獲取到攻擊流量后,可以默認(rèn)的生成pcap文件,此處不再贅述。

當(dāng)然,針對預(yù)設(shè)漏洞的攻擊流量可能已經(jīng)事先獲得了,也就是,已經(jīng)事先生成了針對預(yù)設(shè)漏洞的至少兩條攻擊流量的pcap文件,此時,用戶可以直接對已獲得的攻擊流量進(jìn)行分類,獲得至少兩條攻擊流量的pcap文件就可以了。

另外,為了保證生成的流量檢測規(guī)則合理可靠,獲得的至少兩條攻擊流量可以為不同時間的攻擊流量。

S102:根據(jù)所述攻擊流量的協(xié)議類型,確定每一攻擊流量的請求方和應(yīng)答方;

為了便于分析攻擊流量中的負(fù)載數(shù)據(jù),需要確定每一攻擊流量的請求方和應(yīng)答方。

一般的,對于每一攻擊流量,當(dāng)該攻擊流量對應(yīng)的協(xié)議為TCP(Transmission Control Protocol,傳輸控制協(xié)議)時,可以確定該攻擊流量中發(fā)送第一個握手報文的一方為請求方,另一方為應(yīng)答方;當(dāng)該攻擊流量對應(yīng)的協(xié)議為UDP(User Datagram Protocol,用戶數(shù)據(jù)報協(xié)議)時,確定該攻擊流量中發(fā)送第一個報文的一方為請求方,另一方為應(yīng)答方。

S103:將所述預(yù)設(shè)漏洞的漏洞信息確定為情報指引項;

這里,漏洞信息可以包括漏洞名稱和漏洞詳情等信息。漏洞名稱可以包括:漏洞的生產(chǎn)商、產(chǎn)品名、模塊名\函數(shù)名\參數(shù)名等。在本發(fā)明的一個實施例中,漏洞名稱可以作為流量文件的文件名稱,例如,漏洞名稱.1.pacp。

漏洞詳情為針對預(yù)設(shè)漏洞的信息,可以包括:漏洞類型、漏洞協(xié)議和漏洞位置等信息。

S104:從所有所述流量文件中提取所有請求方的第一負(fù)載數(shù)據(jù);

S105:將所有所述第一負(fù)載數(shù)據(jù)和所述情報指引項作為第一輸入源,計算得到所有所述第一負(fù)載數(shù)據(jù)的第一最長公共子串;

這里,最長公共子串(LCS,Longest Common Substring)為:一個字節(jié)串,如果字節(jié)串分別是兩個或多個已知序列的連續(xù)子串,且是所有符合此條件子串中最長的,稱為已知序列的最長公共子串。例如,當(dāng)前有3個已知序列,分別為:ABCED、ABFCDH、ABGCFD;其中,這3個已知序列的連續(xù)公共部分為AB、C、D,則可以確定這3個已知序列的最長公共子串為AB。

需要說明的是,最長公共子串的求解過程與現(xiàn)有技術(shù)相同,此處不再贅述。另外,第一最長公共子串為請求方的負(fù)載數(shù)據(jù)的共同特征。

例如,當(dāng)前有3個流量文件,分別為1.pcap、2.pcap和3.pcap,從這3個流量文件提取出請求方的第一負(fù)載數(shù)據(jù)有:req_data.1、req_data.2和req_data.3,若情報指引項為intelligence,可以將req_data.1、req_data.2、req_data.3和intelligence合成為一個集合,例如req_set1={req_data.1,req_data.2,req_data.3,intelligence},將req_set1作為第一輸入源,計算得到第一負(fù)載數(shù)據(jù)的第一最長公共子串。

S106:將所述第一最長公共子串確定為第一特征;

S107:根據(jù)所述第一特征,生成第一流量檢測規(guī)則。

在確定了第一特征后,可以將第一特征輸入到檢測引擎中,檢測引擎依據(jù)自身的規(guī)則語法,由第一特征生成針對預(yù)設(shè)漏洞的第一流量檢測規(guī)則。該第一流量檢測規(guī)則為針對請求方的負(fù)載數(shù)據(jù)的流量檢測規(guī)則,可以對一條流量中的負(fù)載數(shù)據(jù)進(jìn)行檢測,以確定該流量是否為攻擊流量。

為了準(zhǔn)確的檢測流量是否為攻擊流量,還可以生成針對應(yīng)答方的負(fù)載數(shù)據(jù)的流量檢測規(guī)則。在本發(fā)明的其他實施例中還提供了針對應(yīng)答方的負(fù)載數(shù)據(jù)的流量檢測規(guī)則的生成方法,可參考圖2,在圖1的基礎(chǔ)上,在將所述預(yù)設(shè)漏洞的漏洞信息確定為情報指引項之后,上述流量檢測規(guī)則的生成方法還可以包括:

S201:從所有所述流量文件中提取所有應(yīng)答方的第二負(fù)載數(shù)據(jù);

S202:將所有所述第二負(fù)載數(shù)據(jù)和所述情報指引項作為第二輸入源,計算得到所有所述第二負(fù)載數(shù)據(jù)的第二最長公共子串;

這里,第二最長公共子串為應(yīng)答方的負(fù)載數(shù)據(jù)的共同特征。

仍以S105中的例子進(jìn)行說明,從3個流量文件提取出應(yīng)答方的第二負(fù)載數(shù)據(jù)有:res_data.1、res_data.2和res_data.3,將res_data.1、res_data.2、res_data.3和intelligence合成為一個集合,例如res_set1={res_data.1,res_data.2,res_data.3,intelligence},將res_set1作為第二輸入源,計算得到第二負(fù)載數(shù)據(jù)的第二最長公共子串。

S203:將所述第二最長公共子串確定為第二特征;

這種情況下,S107可以為:

根據(jù)所述第一特征生成第一流量檢測規(guī)則,并根據(jù)所述第二特征生成第二流量檢測規(guī)則。

一般地,可以分別將第一特征和第二特征輸入到檢測引擎中,檢測引擎依據(jù)自身的規(guī)則語法,由第一特征生成針對預(yù)設(shè)漏洞的第一流量檢測規(guī)則,由第二特征生成針對預(yù)設(shè)漏洞的第二流量檢測規(guī)則。

需要說明的是,在生成第一流量檢測規(guī)則和第二流量檢測規(guī)則后,可以同時采用這兩個流量檢測規(guī)則對流量進(jìn)行檢測,以保證準(zhǔn)確地檢測出攻擊流量;另外,也可以從這兩個流量檢測規(guī)則選擇一個較為準(zhǔn)確的流量檢測規(guī)則,對流量進(jìn)行檢測,以提高檢測的速度。這里,可以根據(jù)生成流量檢測規(guī)則的特征,確定出較為準(zhǔn)確地流量檢測規(guī)則,例如:第一流量檢測規(guī)則根據(jù)3個特征生成,第二流量檢測規(guī)則根據(jù)2個特征生成,3>2,則可以確定第一流量檢測規(guī)則較為準(zhǔn)確;再如,生成第一流量檢測規(guī)則的第一特征長度為10,生成第二流量檢測規(guī)則的第二特征長度為8,10>8,則可以確定第一流量檢測規(guī)則較為準(zhǔn)確。當(dāng)然,也可以采用其他方式確定較為準(zhǔn)確地流量檢測規(guī)則,本發(fā)明實施例對此不進(jìn)行限定。

為了提高根據(jù)流量檢測規(guī)則檢測流量的準(zhǔn)確性,可以提取更多的特征,在本發(fā)明的其他實施例中,可以在從所有流量文件中提取出所有請求方的第一負(fù)載數(shù)據(jù)之后,將所有第一負(fù)載數(shù)據(jù)作為第三輸入源,計算得到所有第一負(fù)載數(shù)據(jù)的第三最長公共子串,將第三最長公共子串確定為第三特征;

在從所有流量文件中提取出所有應(yīng)答方的第二負(fù)載數(shù)據(jù)之后,將所有第二負(fù)載數(shù)據(jù)作為第四輸入源,計算得到所有第二負(fù)載數(shù)據(jù)的第四最長公共子串,將第四最長公共子串確定為第四特征;

這種情況下,根據(jù)第一特征和第三特征生成第一流量檢測規(guī)則,并根據(jù)第二特征和第四特征生成第二流量檢測規(guī)則。

仍以S105中的例子進(jìn)行說明,可以將req_data.1、req_data.2和req_data.3合成為一個集合,例如req_set2={req_data.1,req_data.2,req_data.3},將req_set2作為第三輸入源,計算得到第一負(fù)載數(shù)據(jù)的第三最長公共子串,將該第三最長公共子串確定為第三特征,此時可以根據(jù)第一特征和第三特征生成第一流量檢測規(guī)則;

另外,將res_data.1、res_data.2和res_data.3合成為一個集合,例如res_set2={res_data.1,res_data.2,res_data.3},將res_set2作為第四輸入源,計算得到第二負(fù)載數(shù)據(jù)的第四最長公共子串,將該第四最長公共子串確定為第四特征,此時可以根據(jù)第二特征和第四特征生成第二流量檢測規(guī)則。

為了進(jìn)一步提高根據(jù)流量檢測規(guī)則檢測流量的準(zhǔn)確性,還可以提取對應(yīng)限定字節(jié)集合的特征,這里,限定字節(jié)集合為攻擊流量區(qū)別與非攻擊流量的字節(jié)集合。在本發(fā)明的其他實施例中,在將預(yù)設(shè)漏洞的漏洞信息確定為情報指引項之后,可以根據(jù)預(yù)先存儲的限定字節(jié)集合和漏洞信息的對應(yīng)關(guān)系,確定情報指引項中的漏洞信息對應(yīng)的目的限定字節(jié)集合。

例如,當(dāng)預(yù)設(shè)漏洞的漏洞類型為溢出類型(也就是overflow類型)時,攻擊流量中不包括\x00和\x00\x00字節(jié),而非攻擊流量中包括\x00和\x00\x00字節(jié),因此可以預(yù)先設(shè)置溢出類型對應(yīng)的限定字節(jié)集合為:不包括\x00和\x00\x00的字節(jié)集合;當(dāng)預(yù)設(shè)漏洞的漏洞協(xié)議為http(HyperText Transfer Protocol,超文本傳輸協(xié)議)時,攻擊流量中http頭部包括\x0D\x0A和\x0A,而非攻擊流量中http頭部不包括\x0D\x0A和\x0A字節(jié),因此可以預(yù)先設(shè)置http協(xié)議對應(yīng)的限定字節(jié)集合為:http頭部包括\x0D\x0A和\x0A的字節(jié)集合;當(dāng)預(yù)設(shè)漏洞的漏洞位置包括URI(Uniform Resource Identifier,統(tǒng)一資源定位標(biāo)識)時,攻擊流量中URI位置包括\x26字節(jié),而非攻擊流量中URI位置不包括\x26字節(jié),因此可以預(yù)先設(shè)置URI位置對應(yīng)的限定字節(jié)集合為:URI位置包括\x26的字節(jié)集合;

這種情況下,當(dāng)確定預(yù)設(shè)漏洞的漏洞類型為overflow類型時,可以確定目的限定字節(jié)集合為:不包括\x00和\x00\x00的字節(jié)集合;當(dāng)確定預(yù)設(shè)漏洞的漏洞協(xié)議為http時,可以確定目的限定字節(jié)集合為:http頭部包括\x0D\x0A和\x0A的字節(jié)集合;當(dāng)確定預(yù)設(shè)漏洞的漏洞位置包括URI時,可以確定目的限定字節(jié)集合為:URI位置包括\x26的字節(jié)集合。當(dāng)然,預(yù)設(shè)漏洞也可以滿足多個條件,同理,目的限定字節(jié)集合可以為滿足多個條件的字節(jié)集合,例如,當(dāng)確定預(yù)設(shè)漏洞的漏洞類型為overflow類型、漏洞協(xié)議為http、漏洞位置包括URI時,可以確定目的限定字節(jié)集合為:不包括\x00和\x00\x00、http頭部包括\x0D\x0A和\x0A、URI位置包括\x26的字節(jié)集合。

這種情況下,S107可以包括:

S1071:若所有所述第一負(fù)載數(shù)據(jù)在預(yù)設(shè)位置處的負(fù)載數(shù)據(jù)都與所述目的限定字節(jié)集合匹配,將所述目的限定字節(jié)集合確定為請求方的第五特征,根據(jù)所述第一特征、所述第三特征和請求方的第五特征,生成第一流量檢測規(guī)則;否則,根據(jù)所述第一特征和所述第三特征生成第一流量檢測規(guī)則;

S1072:若所有所述第二負(fù)載數(shù)據(jù)在所述預(yù)設(shè)位置處的負(fù)載數(shù)據(jù)都與所述目的限定字節(jié)集合匹配,將所述目的限定字節(jié)集合確定為應(yīng)答方的第五特征,根據(jù)所所述第二特征、所述第四特征和應(yīng)答方的第五特征,生成第二流量檢測規(guī)則;否則,根據(jù)所述第二特征和所述第四特征生成第二流量檢測規(guī)則。

需要說明的是,為了能夠快速確定出所有流量文件中的第一負(fù)載數(shù)據(jù)和所有流量文件中的第二負(fù)載數(shù)據(jù)是否都與目的限定字節(jié)集合匹配,上述預(yù)設(shè)位置的形式可以為進(jìn)行匹配的負(fù)載數(shù)據(jù)區(qū)域的起始位置和結(jié)束位置。

為了提高根據(jù)流量檢測規(guī)則檢測流量的準(zhǔn)確性,可以提取更多的特征,在本發(fā)明的其他實施例中,參考圖3,在圖2的基礎(chǔ)上,確定每一攻擊流量的請求方和應(yīng)答方之后,上述流量檢測規(guī)則的生成方法還可以包括:

S301:從所有所述流量文件中提取請求方和應(yīng)答方發(fā)送的報文的源端口、目的端口和應(yīng)用層協(xié)議,分別生成請求方和應(yīng)答方的源端口集合、目的端口集合和應(yīng)用層協(xié)議集合;

一般的,可以從所有流量文件中提取請求方發(fā)送的報文的源端口、目的端口和應(yīng)用層協(xié)議,確定請求方的源端口集合、目的端口集合和應(yīng)用層協(xié)議集合;從所有流量文件中提取應(yīng)答方發(fā)送的報文的源端口、目的端口和應(yīng)用層協(xié)議,確定應(yīng)答方的源端口集合、目的端口集合和應(yīng)用層協(xié)議集合。

仍以S105中的例子進(jìn)行說明,從3個流量文件中提取請求方發(fā)送的報文的源端口:req_src_port1、req_src_port2、req_src_port3;從3個流量文件中提取請求方發(fā)送的報文的目的端口:req_dst_port1、req_dst_port2、req_dst_port3;從3個流量文件中提取請求方發(fā)送的報文的應(yīng)用層協(xié)議:req_proto1、req_proto2、req_proto3;此時可以確定請求方的源端口集合為req_src_port_set={req_src_port1,req_src_port2,req_src_port3},請求方的目的端口集合為req_dst_port_set={req_dst_port1,req_dst_port2,req_dst_port3},請求方的應(yīng)用層協(xié)議集合為req_proto_set={req_proto1,req_proto2,req_proto3};

從3個流量文件中提取應(yīng)答方發(fā)送的報文的源端口:res_src_port1、res_src_port2、res_src_port3;從3個流量文件中提取應(yīng)答方發(fā)送的報文的目的端口:res_dst_port1、res_dst_port2、res_dst_port3;從3個流量文件中提取應(yīng)答方發(fā)送的報文的應(yīng)用層協(xié)議:res_proto1、res_proto2、res_proto3;此時可以確定應(yīng)答方的源端口集合為res_src_port_set={res_src_port1,res_src_port2,res_src_port3},應(yīng)答方的目的端口集合為res_dst_port_set={res_dst_port1,res_dst_port2,res_dst_port3},應(yīng)答方的應(yīng)用層協(xié)議集合為res_proto_set={res_proto1,res_proto2,res_proto3}。

S302:分別判斷請求方的源端口集合中所有的源端口、目的端口集合中所有的目的端口和應(yīng)用層協(xié)議集合中所有的應(yīng)用層協(xié)議是否相同;如果有集合中的所有信息都相同的,將所有信息都相同的集合中的信息添加至請求方的報文信息中;如果有集合中的所有信息不都相同的,將所有信息不都相同的集合刪除;

若一個集合中所有的信息都相同,則可以確定該集合中的信息可以作為生成流量檢測規(guī)則的一個特征。

以S301中的例子進(jìn)行說明,若req_src_port_set={req_src_port1,req_src_port2,req_src_port3}中req_src_port1、req_src_port2、req_src_port3都相同,則可以將req_src_port1、req_src_port2、req_src_port3中任一值添加至請求方的報文信息中;若req_src_port1、req_src_port2、req_src_port3不都相同,可以刪除req_src_port_set;

若req_dst_port_set={req_dst_port1,req_dst_port2,req_dst_port3}中req_dst_port1、req_dst_port2、req_dst_port3都相同,則可以將req_dst_port1、req_dst_port2、req_dst_port3中任一值添加至請求方的報文信息中;若req_dst_port1、req_dst_port2、req_dst_port3不都相同,可以刪除req_dst_port_set;

若req_proto_set={req_proto1,req_proto2,req_proto3}中req_proto1、req_proto2、req_proto3都相同,則可以將req_proto1、req_proto2、req_proto3中任一值添加至請求方的報文信息中;若req_proto1,req_proto2,req_proto3不都相同,可以刪除req_proto_set。

S303:分別判斷應(yīng)答方的源端口集合中所有的源端口、目的端口集合中所有的目的端口和應(yīng)用層協(xié)議集合中所有的應(yīng)用層協(xié)議是否相同;如果有集合中的所有信息都相同的,將所有信息都相同的集合中的信息添加至應(yīng)答方的報文信息中;如果有集合中的所有信息不都相同的,將所有信息不都相同的集合刪除;

以S301中的例子進(jìn)行說明,若res_src_port_set={res_src_port1,res_src_port2,res_src_port3}中res_src_port1、res_src_port2、res_src_port3都相同,則可以將res_src_port1、res_src_port2、res_src_port3中任一值添加至應(yīng)答方的報文信息中;若res_src_port1、res_src_port2、res_src_port3不都相同,可以刪除res_src_port_set;

若res_dst_port_set={res_dst_port1,res_dst_port2,res_dst_port3}中res_dst_port1、res_dst_port2、res_dst_port3都相同,則可以將res_dst_port1、res_dst_port2、res_dst_port3中任一值添加至應(yīng)答方的報文信息中;若res_dst_port1、res_dst_port2、res_dst_port3不都相同,可以刪除res_dst_port_set;

若res_proto_set={res_proto1,res_proto2,res_proto3}中res_proto1、res_proto2、res_proto3都相同,則可以將res_proto1、res_proto2、res_proto3中任一值添加至應(yīng)答方的報文信息中;若res_proto1,res_proto2,res_proto3不都相同,可以刪除res_proto_set。

需要說明的是,S304可以在S303之前的執(zhí)行,也可以在S303之后執(zhí)行,也可以與S303同時執(zhí)行,本發(fā)明實施例對此不進(jìn)行限定。

S304:將請求方的報文信息確定為第六特征,將應(yīng)答方的報文信息確定為第七特征;

例如,應(yīng)答方的報文信息中包括:res_src_port1、res_dst_port1、res_proto1,則將res_src_port1、res_dst_port1、res_proto1確定為第七特征。

這種情況下,S107可以為:

根據(jù)所述第一特征和所述第六特征生成第一流量檢測規(guī)則,并根據(jù)所述第二特征和所述第七特征生成第二流量檢測規(guī)則。

需要說明的是,為了提高根據(jù)流量檢測規(guī)則檢測流量的準(zhǔn)確性。上述各個實施例可以結(jié)合,來生成流量檢測規(guī)則,也就是,可以根據(jù)第一特征、第三特征、請求方的第五特征和第六特征,生成第一流量檢測規(guī)則;可以根據(jù)第二特征、第四特征、應(yīng)答方的第五特征和第七特征,生成第二流量檢測規(guī)則。

應(yīng)用上述實施例,電子設(shè)備獲取針對預(yù)設(shè)漏洞的至少兩條攻擊流量的流量文件,其中,該流量文件包括攻擊流量中的負(fù)載數(shù)據(jù);根據(jù)攻擊流量的協(xié)議類型,確定每一攻擊流量的請求方和應(yīng)答方;將預(yù)設(shè)漏洞的漏洞信息確定為情報指引項;從所有流量文件中提取所有請求方的第一負(fù)載數(shù)據(jù);將所有第一負(fù)載數(shù)據(jù)和情報指引項作為第一輸入源,計算得到所有第一負(fù)載數(shù)據(jù)的第一最長公共子串;將第一最長公共子串確定為第一特征;根據(jù)該第一特征,生成第一流量檢測規(guī)則??梢姡景l(fā)明實施例中,生成流量檢測規(guī)則時,特征的提取無需人工參與,而是由電子設(shè)備提取特征,減少了流量檢測規(guī)則生成耗費的時間。

參考圖4,圖4為本發(fā)明的實施例提供的一種流量檢測規(guī)則的生成裝置的結(jié)構(gòu)示意圖,應(yīng)用于電子設(shè)備,所述裝置包括:

獲取單元401,用于獲取針對預(yù)設(shè)漏洞的至少兩條攻擊流量的流量文件;所述流量文件至少包括攻擊流量中的負(fù)載數(shù)據(jù);

第一確定單元402,用于根據(jù)所述攻擊流量的協(xié)議類型,確定每一攻擊流量的請求方和應(yīng)答方;

第二確定單元403,用于將所述預(yù)設(shè)漏洞的漏洞信息確定為情報指引項;

提取單元404,用于從所有所述流量文件中提取所有請求方的第一負(fù)載數(shù)據(jù);

計算單元405,用于將所有所述第一負(fù)載數(shù)據(jù)和所述情報指引項作為第一輸入源,計算得到所有所述第一負(fù)載數(shù)據(jù)的第一最長公共子串;

第三確定單元406,用于將所述第一最長公共子串確定為第一特征;

第一生成單元407,用于根據(jù)所述第一特征,生成第一流量檢測規(guī)則。

在本發(fā)明的一個實施例中,所述獲取單元401,具體可以用于:

運行預(yù)設(shè)漏洞的利用程序,獲取至少兩條攻擊流量;生成針對每一攻擊流量的流量文件。

在本發(fā)明的一個實施例中,所述第一確定單元402,具體可以用于:

對于每一攻擊流量,當(dāng)該攻擊流量對應(yīng)的協(xié)議為傳輸控制協(xié)議TCP時,確定發(fā)送第一個握手報文的一方為請求方,另一方為應(yīng)答方;當(dāng)該攻擊流量對應(yīng)的協(xié)議為用戶數(shù)據(jù)報協(xié)議UDP時,確定發(fā)送第一個報文的一方為請求方,另一方為應(yīng)答方。

在本發(fā)明的一個實施例中,所述提取單元404,還可以用于從所有所述流量文件中提取所有應(yīng)答方的第二負(fù)載數(shù)據(jù);

所述計算單元405,還可以用于將所有所述第二負(fù)載數(shù)據(jù)和所述情報指引項作為第二輸入源,計算得到所有所述第二負(fù)載數(shù)據(jù)的第二最長公共子串;

所述第三確定單元406,還可以用于將所述第二最長公共子串確定為第二特征;

所述第一生成單元407,具有可以用于:

根據(jù)所述第一特征生成第一流量檢測規(guī)則,并根據(jù)所述第二特征生成第二流量檢測規(guī)則。

在本發(fā)明的一個實施例中,所述計算單元405,還可以用于將所有所述第一負(fù)載數(shù)據(jù)作為第三輸入源,將所有所述第二負(fù)載數(shù)據(jù)作為第四輸入源,分別計算得到所有所述第一負(fù)載數(shù)據(jù)的第三最長公共子串和所有所述第二負(fù)載數(shù)據(jù)的第四最長公共子串;

所述第三確定單元406,還可以用于將所述第三最長公共子串確定為第三特征,將所述第四最長公共子串確定為第四特征;

所述第一生成單元407,具有可以用于:

根據(jù)所述第一特征和所述第三特征生成第一流量檢測規(guī)則,并根據(jù)所述第二特征和所述第四特征生成第二流量檢測規(guī)則。

在本發(fā)明的一個實施例中,所述第二確定單元403,還可以用于在將所述預(yù)設(shè)漏洞的漏洞信息確定為情報指引項之后,根據(jù)預(yù)先存儲的限定字節(jié)集合和漏洞信息的對應(yīng)關(guān)系,確定所述情報指引項中的漏洞信息對應(yīng)的目的限定字節(jié)集合;

所述第一生成單元407,具體可以用于:

若所有所述第一負(fù)載數(shù)據(jù)在預(yù)設(shè)位置處的負(fù)載數(shù)據(jù)都與所述目的限定字節(jié)集合匹配,將所述目的限定字節(jié)集合確定為請求方的第五特征,根據(jù)所述第一特征、所述第三特征和請求方的第五特征,生成第一流量檢測規(guī)則;否則,根據(jù)所述第一特征和所述第三特征生成第一流量檢測規(guī)則;

若所有所述第二負(fù)載數(shù)據(jù)在所述預(yù)設(shè)位置處的負(fù)載數(shù)據(jù)都與所述目的限定字節(jié)集合匹配,將所述目的限定字節(jié)集合確定為應(yīng)答方的第五特征,根據(jù)所所述第二特征、所述第四特征和應(yīng)答方的第五特征,生成第二流量檢測規(guī)則;否則,根據(jù)所述第二特征和所述第四特征生成第二流量檢測規(guī)則。

在本發(fā)明的一個實施例中,所述漏洞信息可以包括:漏洞類型、漏洞協(xié)議和漏洞位置;

所述第二確定單元403,具體可以用于:

當(dāng)所述預(yù)設(shè)漏洞的漏洞類型為溢出overflow類型時,確定所述目的限定字節(jié)集合為:不包括\x00和\x00\x00的字節(jié)集合;

當(dāng)所述預(yù)設(shè)漏洞的漏洞協(xié)議為超文本傳輸協(xié)議http時,確定所述目的限定字節(jié)集合為:http頭部包括\x0D\x0A和\x0A的字節(jié)集合;

當(dāng)所述預(yù)設(shè)漏洞的漏洞位置包括統(tǒng)一資源定位標(biāo)識URI時,確定所述目的限定字節(jié)集合為:URI位置包括\x26的字節(jié)集合。

在本發(fā)明的一個實施例中,所述流量文件中還可以包括:攻擊流量中的請求方和應(yīng)答方發(fā)送的報文的源端口、目的端口、應(yīng)用層協(xié)議;

這種情況下,所述裝置還可以包括:

第二生成單元(圖4中未示出),用于在根據(jù)所述攻擊流量的協(xié)議類型,確定每一攻擊流量的請求方和應(yīng)答方之后,從所有所述流量文件中提取請求方和應(yīng)答方發(fā)送的報文的源端口、目的端口和應(yīng)用層協(xié)議,分別生成請求方和應(yīng)答方的源端口集合、目的端口集合和應(yīng)用層協(xié)議集合;

第四確定單元(圖4中未示出),用于分別判斷請求方的源端口集合中所有的源端口、目的端口集合中所有的目的端口和應(yīng)用層協(xié)議集合中所有的應(yīng)用層協(xié)議是否相同;如果有集合中的所有信息都相同的,將所有信息都相同的集合中的信息添加至請求方的報文信息中;如果有集合中的所有信息不都相同的,將所有信息不都相同的集合刪除;

第五確定單元(圖4中未示出),用于分別判斷應(yīng)答方的源端口集合中所有的源端口、目的端口集合中所有的目的端口和應(yīng)用層協(xié)議集合中所有的應(yīng)用層協(xié)議是否相同;如果有集合中的所有信息都相同的,將所有信息都相同的集合中的信息添加至應(yīng)答方的報文信息中;如果有集合中的所有信息不都相同的,將所有信息不都相同的集合刪除;

所述第三確定單元406,還可以用于將請求方的報文信息確定為第六特征,將應(yīng)答方的報文信息確定為第七特征;

所述第一生成單元407,具體可以用于:

根據(jù)所述第一特征和所述第六特征生成第一流量檢測規(guī)則,并根據(jù)所述第二特征和所述第七特征生成第二流量檢測規(guī)則。

應(yīng)用上述實施例,電子設(shè)備獲取針對預(yù)設(shè)漏洞的至少兩條攻擊流量的流量文件,其中,該流量文件包括攻擊流量中的負(fù)載數(shù)據(jù);根據(jù)攻擊流量的協(xié)議類型,確定每一攻擊流量的請求方和應(yīng)答方;將預(yù)設(shè)漏洞的漏洞信息確定為情報指引項;從所有流量文件中提取所有請求方的第一負(fù)載數(shù)據(jù);將所有第一負(fù)載數(shù)據(jù)和情報指引項作為第一輸入源,計算得到所有第一負(fù)載數(shù)據(jù)的第一最長公共子串;將第一最長公共子串確定為第一特征;根據(jù)該第一特征,生成第一流量檢測規(guī)則??梢?,本發(fā)明實施例中,生成流量檢測規(guī)則時,特征的提取無需人工參與,而是由電子設(shè)備提取特征,減少了流量檢測規(guī)則生成耗費的時間。

對于裝置實施例而言,由于其基本相似于方法實施例,所以描述的比較簡單,相關(guān)之處參見方法實施例的部分說明即可。

需要說明的是,在本文中,諸如第一和第二等之類的關(guān)系術(shù)語僅僅用來將一個實體或者操作與另一個實體或操作區(qū)分開來,而不一定要求或者暗示這些實體或操作之間存在任何這種實際的關(guān)系或者順序。而且,術(shù)語“包括”、“包含”或者其任何其他變體意在涵蓋非排他性的包含,從而使得包括一系列要素的過程、方法、物品或者設(shè)備不僅包括那些要素,而且還包括沒有明確列出的其他要素,或者是還包括為這種過程、方法、物品或者設(shè)備所固有的要素。在沒有更多限制的情況下,由語句“包括一個……”限定的要素,并不排除在包括所述要素的過程、方法、物品或者設(shè)備中還存在另外的相同要素。

本說明書中的各個實施例均采用相關(guān)的方式描述,各個實施例之間相同相似的部分互相參見即可,每個實施例重點說明的都是與其他實施例的不同之處。尤其,對于系統(tǒng)實施例而言,由于其基本相似于方法實施例,所以描述的比較簡單,相關(guān)之處參見方法實施例的部分說明即可。

以上所述僅為本發(fā)明的較佳實施例而已,并非用于限定本發(fā)明的保護(hù)范圍。凡在本發(fā)明的精神和原則之內(nèi)所作的任何修改、等同替換、改進(jìn)等,均包含在本發(fā)明的保護(hù)范圍內(nèi)。

當(dāng)前第1頁1 2 3 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1