應(yīng)用于審計(jì)的數(shù)據(jù)抓取方法及裝置的制造方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明審計(jì)技術(shù)領(lǐng)域,尤其涉及應(yīng)用于審計(jì)的數(shù)據(jù)抓取方法及裝置。
【背景技術(shù)】
[0002]目前,對(duì)數(shù)據(jù)庫(kù)中的數(shù)據(jù)進(jìn)行審計(jì),主要是為了防止兩方面的風(fēng)險(xiǎn),一個(gè)是內(nèi)部有權(quán)限的人員執(zhí)行非法操作,另一個(gè)是外部漏洞挖掘和攻擊。
[0003]然而,由于數(shù)據(jù)庫(kù)中存儲(chǔ)了非常大的數(shù)據(jù)量,在對(duì)數(shù)據(jù)庫(kù)進(jìn)行審計(jì)時(shí)如何實(shí)現(xiàn)數(shù)據(jù)的篩選和獲取是亟待解決的問題。
[0004]上述內(nèi)容僅用于輔助理解本發(fā)明的技術(shù)方案,并不代表承認(rèn)上述內(nèi)容是現(xiàn)有技術(shù)。
【發(fā)明內(nèi)容】
[0005]本發(fā)明的主要目的在于提供一種應(yīng)用于審計(jì)的數(shù)據(jù)抓取方法及裝置,旨在解決現(xiàn)有技術(shù)中數(shù)據(jù)庫(kù)中的數(shù)據(jù)量非常大時(shí),進(jìn)行審計(jì)時(shí)的數(shù)據(jù)篩選和獲取問題。
[0006]為實(shí)現(xiàn)上述目的,本發(fā)明提供的一種應(yīng)用于審計(jì)的數(shù)據(jù)抓取方法,包括:
[0007]從獲取的處于有效狀態(tài)的傳輸控制協(xié)議TCP連接中過濾出第一TCP連接集合,所述第一 TCP連接集合中包含mysqld的TCP連接和mysql-proxy的TCP連接;
[0008]將所述第一TCP連接集合中的TCP連接與獲取到的本地網(wǎng)絡(luò)接口進(jìn)行關(guān)聯(lián),得到第二TCP連接集合,所述第二TCP連接集合中包含TCP連接與網(wǎng)絡(luò)接口的關(guān)聯(lián)關(guān)系;
[0009]為所述第二TCP連接集合中的每一個(gè)TCP連接設(shè)置過濾器,并創(chuàng)建線程監(jiān)聽與TCP連接關(guān)聯(lián)的網(wǎng)絡(luò)接口 ;
[0010]通過所述過濾器從監(jiān)聽的網(wǎng)絡(luò)接口抓取數(shù)據(jù),將抓取的數(shù)據(jù)保存至環(huán)形緩存區(qū)中。
[0011]優(yōu)選地,所述將所述第一TCP連接集合中的TCP連接與獲取到的本地網(wǎng)絡(luò)接口進(jìn)行關(guān)聯(lián),得到第二 TCP連接集合之前還包括:
[0012]刪除所述第一TCP連接集合中端口號(hào)為管理端口號(hào)的TCP連接。
[0013]優(yōu)選地,所述將所述第一TCP連接集合中的TCP連接與獲取到的本地網(wǎng)絡(luò)接口進(jìn)行關(guān)聯(lián),得到第二 TCP連接集合之后還包括:
[0014]確定所述第二TCP連接集合中網(wǎng)絡(luò)接口為統(tǒng)一接入網(wǎng)關(guān)TGW使用的網(wǎng)絡(luò)接口;
[0015]將所述TGW使用的網(wǎng)絡(luò)接口對(duì)應(yīng)的TCP連接設(shè)置為不抓取數(shù)據(jù)的狀態(tài)。
[0016]優(yōu)選地,所述通過所述過濾器從監(jiān)聽的網(wǎng)絡(luò)接口抓取數(shù)據(jù),將抓取的數(shù)據(jù)保存至環(huán)形緩存區(qū)中,包括:
[0017]在所述線程監(jiān)聽到網(wǎng)絡(luò)接口的數(shù)據(jù)時(shí),通過所述過濾器過濾數(shù)據(jù),并抓取過濾出的數(shù)據(jù);
[0018]將抓取的數(shù)據(jù)保存在所述環(huán)形緩存區(qū)中。
[0019]優(yōu)選地,所述將抓取的數(shù)據(jù)保存在所述環(huán)形緩存區(qū)中包括:
[0020]將抓取的數(shù)據(jù)分解為數(shù)據(jù)頭和數(shù)據(jù)內(nèi)容;
[0021]解析所述數(shù)據(jù)頭得到新數(shù)據(jù)頭,并將所述數(shù)據(jù)內(nèi)容分片,得到分片數(shù)據(jù);
[0022]將所述新的數(shù)據(jù)頭及所述分片數(shù)據(jù)保存至所述環(huán)形緩存區(qū)中。
[0023]為實(shí)現(xiàn)上述目的,本發(fā)明還提出一種應(yīng)用于審計(jì)的數(shù)據(jù)抓取裝置,包括:
[0024]過濾模塊,用于從獲取的處于有效狀態(tài)的傳輸控制協(xié)議TCP連接中過濾出第一TCP連接集合,所述第一 TCP連接集合中包含mysqld的TCP連接和mysql-proxy的TCP連接;
[0025]關(guān)聯(lián)模塊,用于將所述第一TCP連接集合中的TCP連接與獲取到的本地網(wǎng)絡(luò)接口進(jìn)行關(guān)聯(lián),得到第二TCP連接集合,所述第二TCP連接集合中包含TCP連接與網(wǎng)絡(luò)接口的關(guān)聯(lián)關(guān)系;
[0026]設(shè)置及創(chuàng)建模塊,用于為所述第二TCP連接集合中的每一個(gè)TCP連接設(shè)置過濾器,并創(chuàng)建線程監(jiān)聽與TCP連接關(guān)聯(lián)的網(wǎng)絡(luò)接口 ;
[0027]抓取保存模塊,用于通過所述過濾器從監(jiān)聽的網(wǎng)絡(luò)接口抓取數(shù)據(jù),將抓取的數(shù)據(jù)保存至環(huán)形緩存區(qū)中。
[0028]優(yōu)選地,所述裝置還包括:
[0029]刪除模塊,用于在過濾模塊得到所述第一TCP連接集合后,刪除所述第一 TCP連接集合中端口號(hào)為管理端口號(hào)的TCP連接。
[0030]優(yōu)選地,所述裝置還包括:
[0031]確定模塊,用于在所述關(guān)聯(lián)模塊得到所述第二TCP連接集合后,確定所述第二TCP連接集合中網(wǎng)絡(luò)接口為統(tǒng)一接入網(wǎng)關(guān)TGW使用的網(wǎng)絡(luò)接口;
[0032]狀態(tài)設(shè)置模塊,用于將所述TGW使用的網(wǎng)絡(luò)接口對(duì)應(yīng)的TCP連接設(shè)置為不抓取數(shù)據(jù)的狀態(tài)。
[0033]優(yōu)選地,所述抓取保存模塊包括:
[0034]抓取模塊,用于在所述線程監(jiān)聽到網(wǎng)絡(luò)接口的數(shù)據(jù)時(shí),通過所述過濾器過濾數(shù)據(jù),并抓取過濾出的數(shù)據(jù);
[0035]保存模塊,用于將抓取的數(shù)據(jù)保存在所述環(huán)形緩存區(qū)中。
[0036]優(yōu)選地,所述保存模塊包括:
[0037]分解模塊,用于將抓取的數(shù)據(jù)分解為數(shù)據(jù)頭和數(shù)據(jù)內(nèi)容;
[0038]解析分片模塊,用于解析所述數(shù)據(jù)頭得到新數(shù)據(jù)頭,并將所述數(shù)據(jù)內(nèi)容分片,得到分片數(shù)據(jù);
[0039]緩存模塊,用于將所述新的數(shù)據(jù)頭及所述分片數(shù)據(jù)保存至所述環(huán)形緩存區(qū)中。
[0040]本發(fā)明提供一種應(yīng)用于審計(jì)的數(shù)據(jù)抓取方法,該方法包括:從獲取的處于有效狀態(tài)的TCP連接中過濾出第一 TCP連接集合,該第一 TCP連接集合中包含mysql的TCP連接和mysql-proxy的TCP連接,將該第一 TCP連接集合中的TCP連接與獲取到的本地網(wǎng)絡(luò)接口進(jìn)行關(guān)聯(lián),得到第二TCP連接集合,該第二TCP連接集合中包含TCP連接與網(wǎng)絡(luò)接口的關(guān)聯(lián)關(guān)系,并為第二 TCP連接集合中的每一個(gè)TCP連接設(shè)置過濾器,并創(chuàng)建線程監(jiān)聽與該TCP連接關(guān)聯(lián)的網(wǎng)絡(luò)接口,且通過過濾器從監(jiān)聽的網(wǎng)絡(luò)接口抓取數(shù)據(jù),將抓取的數(shù)據(jù)保存至環(huán)形緩存區(qū)中,使得能夠通過過濾出mysql和mysql-proxy的TCP連接的方式抓取數(shù)據(jù),改善對(duì)SQL數(shù)據(jù)庫(kù)進(jìn)行審計(jì)服務(wù)的性能。
【附圖說明】
[0041]圖1為本發(fā)明第一實(shí)施例中應(yīng)用于審計(jì)的數(shù)據(jù)抓取方法的流程示意圖;
[0042]圖2為本發(fā)明圖1所示第一實(shí)施例的追加步驟的流程示意圖;
[0043]圖3為本發(fā)明圖1所示第一實(shí)施例中步驟104的細(xì)化步驟的流程示意圖;
[0044]圖4為本發(fā)明圖3所示實(shí)施例中步驟302的細(xì)化步驟的流程示意圖;
[0045]圖5為本發(fā)明第二實(shí)施例中應(yīng)用于審計(jì)的數(shù)據(jù)抓取方法的流程示意圖;
[0046]圖6為本發(fā)明圖2所示第二實(shí)施例的追加功能模塊的示意圖;
[0047]圖7為本發(fā)明圖5所示第二實(shí)施例中抓取保存模塊504的細(xì)化功能模塊的示意圖;
[0048]圖8為本發(fā)明圖7所示實(shí)施例中保存模塊702的細(xì)化功能模塊的示意圖。
[0049]本發(fā)明目的的實(shí)現(xiàn)、功能特點(diǎn)及優(yōu)點(diǎn)將結(jié)合實(shí)施例,參照附圖做進(jìn)一步說明。
【具體實(shí)施方式】
[0050]應(yīng)當(dāng)理解,此處所描述的具體實(shí)施例僅僅用以解釋本發(fā)明,并不用于限定本發(fā)明。
[0051]由于現(xiàn)有技術(shù)中,SQL數(shù)據(jù)庫(kù)中的數(shù)據(jù)操作非常多,將導(dǎo)致SQL數(shù)據(jù)庫(kù)的審計(jì)服務(wù)的性能較差的問題。
[0052]為此,本發(fā)明提出一種應(yīng)用于審計(jì)的數(shù)據(jù)抓取方法,能夠抓取數(shù)據(jù),以改善對(duì)SQL數(shù)據(jù)庫(kù)進(jìn)行審計(jì)服務(wù)的性能。
[0053]請(qǐng)參閱圖1,為本發(fā)明第一實(shí)施例中應(yīng)用于審計(jì)的數(shù)據(jù)抓取方法的流程示意圖,該抓取方法包括:
[0054]步驟101、從獲取的處于有效狀態(tài)的TCP連接中過濾出第一TCP連接集合,第一 TCP連接集合中包含my s q I d的TCP連接和my s q 1-proxy的TCP連接;
[0055]在本發(fā)明實(shí)施例中,應(yīng)用于審計(jì)的數(shù)據(jù)抓取方法由應(yīng)用于審計(jì)的數(shù)據(jù)抓取裝置(以下簡(jiǎn)稱:數(shù)據(jù)抓取裝置)實(shí)現(xiàn),數(shù)據(jù)抓取裝置將找出所有的TCP連接,并從找出的TCP連接中獲取處于有效狀態(tài)的TCP連接,且還將從獲取的有效狀態(tài)的TCP連接中過濾出第一 TCP集入口 O
[0056]其中,第一TCP集合中包含所有的mysql的TCP連接和所有的mysql-proxy的TCP連接。
[0057]其中,有效狀態(tài)的TCP連接是指Listen狀態(tài)的TCP連接。
[0058]步驟102、將第一TCP連接集合中的TCP連接與獲取到的本地網(wǎng)絡(luò)接口進(jìn)行關(guān)聯(lián),得到第二TCP連接集合,第二TCP連接集合中包含TCP連接與網(wǎng)絡(luò)接口的關(guān)聯(lián)關(guān)系;
[0059]在本發(fā)明實(shí)施例中,數(shù)據(jù)抓取裝置將獲取所有的本地的網(wǎng)絡(luò)接口,并將第一TCP連接集合中的TCP連接與獲取到的本地的網(wǎng)絡(luò)接口進(jìn)行關(guān)聯(lián),得到第二 TCP連接集合,且在該第二 TCP連接集合中包含TCP連接與網(wǎng)絡(luò)接口之間的關(guān)聯(lián)關(guān)系。
[0060]其中,將TCP連接與網(wǎng)絡(luò)接口關(guān)聯(lián)具體包括:檢查TCP連接的接口標(biāo)識(shí),若該TCP連接的接口標(biāo)識(shí)為O,則將該TCP連接與所有網(wǎng)絡(luò)接口關(guān)聯(lián),使得能夠監(jiān)聽所有的接口,若該TCP連接的接口標(biāo)識(shí)不為O,則將該TCP連接與指定的網(wǎng)絡(luò)接口關(guān)聯(lián),且監(jiān)聽該TCP連接的指定關(guān)聯(lián)的網(wǎng)絡(luò)接口。
[0061]步驟103、為第二TCP連接集合中的每一個(gè)TCP連接設(shè)置過濾器,并創(chuàng)建線程監(jiān)聽與TCP連接關(guān)聯(lián)的網(wǎng)絡(luò)接口 ;
[0062]在本發(fā)明實(shí)施例中,數(shù)據(jù)