本發(fā)明涉及大數(shù)據(jù),尤其涉及一種基于聯(lián)邦學(xué)習(xí)的用戶行為檢測方法、設(shè)備及系統(tǒng)。
背景技術(shù):
1、隨著企業(yè)安全事件的大量曝光,保障企業(yè)的正常運行越來越受到管理者的重視,而異常事件復(fù)雜多變的表現(xiàn)形式給檢測工作帶來了很大的困難?,F(xiàn)在大型企業(yè)內(nèi)部的日常安全工作,對于外部安全威脅以防范為主,對于內(nèi)部安全問題以分析審計為主。但很多外部安全問題的根源都來自于內(nèi)部的違規(guī)操作。往往內(nèi)網(wǎng)用戶有相當(dāng)高的系統(tǒng)權(quán)限,一旦出現(xiàn)異常情況,就可能會造成極其嚴(yán)重的損失。越來越多的企業(yè)發(fā)現(xiàn),檢查人的相關(guān)數(shù)據(jù)比檢查機器日志更容易發(fā)現(xiàn)系統(tǒng)風(fēng)險。如何對內(nèi)部員工行為進(jìn)行分析,發(fā)現(xiàn)其中的異常點,一直是人們關(guān)注的焦點。
2、然而,現(xiàn)有的用戶行為異常檢測方法大多基于傳統(tǒng)算法進(jìn)行分析,一般都需要多次對數(shù)據(jù)進(jìn)行全量遍歷才能獲得結(jié)果,算法的時間復(fù)雜度較高。并且,用戶行為通常需要從多個設(shè)備或?qū)嶓w中進(jìn)行數(shù)據(jù)抽取,然后匯總到某服務(wù)器中進(jìn)行計算。傳統(tǒng)算法沒有考慮到數(shù)據(jù)傳輸過程中可能發(fā)生的用戶隱私泄露問題,數(shù)據(jù)提供方與數(shù)據(jù)運算方的數(shù)據(jù)頻繁交流增大了用戶隱私泄露的可能性。
技術(shù)實現(xiàn)思路
1、本發(fā)明提供一種基于聯(lián)邦學(xué)習(xí)的用戶行為檢測方法、設(shè)備及系統(tǒng),用以解決現(xiàn)有技術(shù)中用戶隱私數(shù)據(jù)在傳輸過程中泄露的可能性較大、且算法的時間復(fù)雜度較高的缺陷。
2、第一方面,本發(fā)明提供一種基于聯(lián)邦學(xué)習(xí)的用戶行為檢測方法,應(yīng)用于協(xié)調(diào)方設(shè)備,所述方法包括:
3、循環(huán)執(zhí)行以下步驟,每循環(huán)一次,頻繁項集的長度加一,直至所述頻繁項集的長度達(dá)到最長項集長度:
4、分別向多個參與方設(shè)備發(fā)送攜帶候選項集的計數(shù)請求,并接收每個所述參與方設(shè)備返回的所述候選項集中每個項集元素在所述參與方設(shè)備的本地行為數(shù)據(jù)集中的出現(xiàn)次數(shù);
5、在所述項集元素對應(yīng)的各所述出現(xiàn)次數(shù)的總和大于最小支持度的情況下,將所述項集元素添加至所述頻繁項集中;
6、將所述頻繁項集中的各項集元素進(jìn)行組合,得到下一候選項集;
7、在所述頻繁項集的長度達(dá)到所述最長項集長度后,分別向各所述參與方設(shè)備發(fā)送攜帶所述頻繁項集的打分請求,接收各所述參與方設(shè)備基于所述頻繁項集返回的各用戶行為的分?jǐn)?shù);所述用戶行為的分?jǐn)?shù)用于表征所述用戶行為的威脅程度;
8、基于各所述參與方設(shè)備返回的所述各用戶行為的分?jǐn)?shù),確定所述各用戶行為中的用戶異常行為。
9、根據(jù)本發(fā)明提供的一種基于聯(lián)邦學(xué)習(xí)的用戶行為檢測方法,所述將所述頻繁項集中的各項集元素進(jìn)行組合,得到下一候選項集,包括:
10、將所述頻繁項集中的各項集元素中的每兩個不同的所述項集元素進(jìn)行組合,得到下一候選項集。
11、根據(jù)本發(fā)明提供的一種基于聯(lián)邦學(xué)習(xí)的用戶行為檢測方法,所述基于各所述參與方設(shè)備返回的所述各用戶行為的分?jǐn)?shù),確定所述各用戶行為中的用戶異常行為,包括:
12、針對每個所述用戶行為,將各所述參與方設(shè)備返回的所述用戶行為的分?jǐn)?shù)進(jìn)行相加,得到所述用戶行為的目標(biāo)分?jǐn)?shù);
13、按照從大到小的順序,將所述各用戶行為的所述目標(biāo)分?jǐn)?shù)進(jìn)行排序,得到排序結(jié)果;
14、將所述排序結(jié)果中排序靠前的預(yù)設(shè)比例的用戶行為確定為用戶異常行為。
15、第二方面,本發(fā)明還提供一種基于聯(lián)邦學(xué)習(xí)的用戶行為檢測方法,應(yīng)用于參與方設(shè)備,所述方法包括:
16、循環(huán)執(zhí)行以下步驟,直至接收到協(xié)調(diào)方設(shè)備在頻繁項集的長度達(dá)到最長項集長度后發(fā)送的攜帶所述頻繁項集的打分請求:
17、響應(yīng)所述協(xié)調(diào)方設(shè)備發(fā)送的攜帶候選項集的計數(shù)請求,統(tǒng)計所述候選項集中每個項集元素在所述參與方設(shè)備的本地行為數(shù)據(jù)集中的出現(xiàn)次數(shù);
18、將統(tǒng)計的所述出現(xiàn)次數(shù)返回所述協(xié)調(diào)方設(shè)備;所述協(xié)調(diào)方設(shè)備用于在所述候選項集中每個項集元素在各所述參與方設(shè)備的本地行為數(shù)據(jù)集中的出現(xiàn)次數(shù)的總和大于最小支持度的情況下,將所述項集元素添加至所述頻繁項集中;將所述頻繁項集中的各項集元素進(jìn)行組合,得到下一候選項集,每循環(huán)一次,頻繁項集的長度加一;
19、響應(yīng)所述打分請求,基于所述頻繁項集對各用戶行為進(jìn)行打分,得到所述各用戶行為的分?jǐn)?shù);所述用戶行為的分?jǐn)?shù)用于表征所述用戶行為的威脅程度;
20、將所述各用戶行為的分?jǐn)?shù)返回所述協(xié)調(diào)方設(shè)備;所述各用戶行為的分?jǐn)?shù)用于所述協(xié)調(diào)方設(shè)備確定所述各用戶行為中的用戶異常行為。
21、根據(jù)本發(fā)明提供的一種基于聯(lián)邦學(xué)習(xí)的用戶行為檢測方法,所述基于所述頻繁項集對各用戶行為進(jìn)行打分,包括:
22、從所述參與方設(shè)備的本地行為數(shù)據(jù)集中提取多個用戶行為;
23、針對每個所述用戶行為,從規(guī)則庫中每條威脅規(guī)則的多個行為槽中篩選出與所述用戶行為匹配的行為槽;所述規(guī)則庫為所述頻繁項集;
24、在篩選出的所述行為槽的數(shù)量大于預(yù)設(shè)數(shù)量的情況下,獲取威脅權(quán)重表中所述威脅規(guī)則對應(yīng)的威脅分?jǐn)?shù);
25、將獲取的各所述威脅分?jǐn)?shù)進(jìn)行相加,得到所述用戶行為的總威脅分?jǐn)?shù);
26、將所述用戶行為的總威脅分?jǐn)?shù)進(jìn)行歸一化處理,得到所述用戶行為的分?jǐn)?shù)。
27、第三方面,本發(fā)明還提供一種基于聯(lián)邦學(xué)習(xí)的用戶行為檢測裝置,應(yīng)用于協(xié)調(diào)方設(shè)備,所述裝置包括:
28、計數(shù)請求模塊,用于分別向多個參與方設(shè)備發(fā)送攜帶候選項集的計數(shù)請求;
29、次數(shù)接收模塊,用于接收每個所述參與方設(shè)備返回的所述候選項集中每個項集元素在所述參與方設(shè)備的本地行為數(shù)據(jù)集中的出現(xiàn)次數(shù);
30、元素添加模塊,用于在所述項集元素對應(yīng)的各所述出現(xiàn)次數(shù)的總和大于最小支持度的情況下,將所述項集元素添加至頻繁項集中;
31、元素組合模塊,用于將所述頻繁項集中的各項集元素進(jìn)行組合,得到下一候選項集;
32、第一循環(huán)模塊,用于循環(huán)調(diào)用所述計數(shù)請求模塊、所述次數(shù)接收模塊、所述元素添加模塊和所述元素組合模塊,每循環(huán)一次,所述頻繁項集的長度加一,直至所述頻繁項集的長度達(dá)到最長項集長度;
33、打分請求模塊,用于分別向各所述參與方設(shè)備發(fā)送攜帶所述頻繁項集的打分請求;
34、分?jǐn)?shù)接收模塊,用于接收各所述參與方設(shè)備基于所述頻繁項集返回的各用戶行為的分?jǐn)?shù);所述用戶行為的分?jǐn)?shù)用于表征所述用戶行為的威脅程度;
35、異常檢測模塊,用于基于各所述參與方設(shè)備返回的所述各用戶行為的分?jǐn)?shù),確定所述各用戶行為中的用戶異常行為。
36、第四方面,本發(fā)明還提供一種基于聯(lián)邦學(xué)習(xí)的用戶行為檢測裝置,應(yīng)用于參與方設(shè)備,所述裝置包括:
37、次數(shù)統(tǒng)計模塊,用于響應(yīng)協(xié)調(diào)方設(shè)備發(fā)送的攜帶候選項集的計數(shù)請求,統(tǒng)計所述候選項集中每個項集元素在所述參與方設(shè)備的本地行為數(shù)據(jù)集中的出現(xiàn)次數(shù);
38、次數(shù)返回模塊,用于將統(tǒng)計的所述出現(xiàn)次數(shù)返回所述協(xié)調(diào)方設(shè)備;所述協(xié)調(diào)方設(shè)備用于在所述候選項集中每個項集元素在各所述參與方設(shè)備的本地行為數(shù)據(jù)集中的出現(xiàn)次數(shù)的總和大于最小支持度的情況下,將所述項集元素添加至頻繁項集中;將所述頻繁項集中的各項集元素進(jìn)行組合,得到下一候選項集,每循環(huán)一次,所述頻繁項集的長度加一;
39、第二循環(huán)模塊,用于循環(huán)調(diào)用所述次數(shù)統(tǒng)計模塊和所述次數(shù)返回模塊,直至接收到所述協(xié)調(diào)方設(shè)備在所述頻繁項集的長度達(dá)到最長項集長度后發(fā)送的攜帶所述頻繁項集的打分請求;
40、行為打分模塊,用于響應(yīng)所述打分請求,基于所述頻繁項集對各用戶行為進(jìn)行打分,得到所述各用戶行為的分?jǐn)?shù);所述用戶行為的分?jǐn)?shù)用于表征所述用戶行為的威脅程度;
41、分?jǐn)?shù)返回模塊,用于將所述各用戶行為的分?jǐn)?shù)返回所述協(xié)調(diào)方設(shè)備;所述各用戶行為的分?jǐn)?shù)用于所述協(xié)調(diào)方設(shè)備確定所述各用戶行為中的用戶異常行為。
42、第五方面,本發(fā)明還提供一種協(xié)調(diào)方設(shè)備,包括存儲器、處理器及存儲在存儲器上并可在處理器上運行的計算機程序,所述處理器執(zhí)行所述程序時實現(xiàn)如上述第一方面任一種所述的基于聯(lián)邦學(xué)習(xí)的用戶行為檢測方法。
43、第六方面,本發(fā)明還提供一種參與方設(shè)備,包括存儲器、處理器及存儲在存儲器上并可在處理器上運行的計算機程序,所述處理器執(zhí)行所述程序時實現(xiàn)如上述第二方面任一種所述的基于聯(lián)邦學(xué)習(xí)的用戶行為檢測方法。
44、第七方面,本發(fā)明還提供一種基于聯(lián)邦學(xué)習(xí)的用戶行為檢測系統(tǒng),包括一個如第五方面所述的協(xié)調(diào)方設(shè)備和多個如第六方面所述的參與方設(shè)備,所述協(xié)調(diào)方設(shè)備分別與多個參與方設(shè)備通信連接,各所述參與方設(shè)備相互之間通信隔離。
45、第八方面,本發(fā)明還提供一種非暫態(tài)計算機可讀存儲介質(zhì),其上存儲有計算機程序,該計算機程序被處理器執(zhí)行時實現(xiàn)如上述第一方面任一種所述的基于聯(lián)邦學(xué)習(xí)的用戶行為檢測方法,或?qū)崿F(xiàn)如上述第二方面任一種所述的基于聯(lián)邦學(xué)習(xí)的用戶行為檢測方法。
46、本發(fā)明還提供一種計算機程序產(chǎn)品,包括計算機程序,所述計算機程序被處理器執(zhí)行時實現(xiàn)如上述第一方面任一種所述的基于聯(lián)邦學(xué)習(xí)的用戶行為檢測方法,或?qū)崿F(xiàn)如上述第二方面任一種所述的基于聯(lián)邦學(xué)習(xí)的用戶行為檢測方法。
47、本發(fā)明提供的一種基于聯(lián)邦學(xué)習(xí)的用戶行為檢測方法、設(shè)備及系統(tǒng),首先協(xié)調(diào)方設(shè)備循環(huán)執(zhí)行以下步驟,每循環(huán)一次,頻繁項集的長度加一,直至頻繁項集的長度達(dá)到最長項集長度:分別向多個參與方設(shè)備發(fā)送攜帶候選項集的計數(shù)請求,并接收每個參與方設(shè)備返回的候選項集中每個項集元素在參與方設(shè)備的本地行為數(shù)據(jù)集中的出現(xiàn)次數(shù);在項集元素對應(yīng)的各出現(xiàn)次數(shù)的總和大于最小支持度的情況下,將項集元素添加至頻繁項集中;將頻繁項集中的各項集元素進(jìn)行組合,得到下一候選項集;也即,簡化了挖掘頻繁項集的步驟,可以降低算法的時間復(fù)雜度;而后,在頻繁項集的長度達(dá)到最長項集長度后,分別向各參與方設(shè)備發(fā)送攜帶頻繁項集的打分請求,接收各參與方設(shè)備基于頻繁項集返回的各用戶行為的分?jǐn)?shù);用戶行為的分?jǐn)?shù)用于表征用戶行為的威脅程度;基于各參與方設(shè)備返回的各用戶行為的分?jǐn)?shù),確定各用戶行為中的用戶異常行為。也即,協(xié)調(diào)方設(shè)備和參與方設(shè)備之間傳輸?shù)臄?shù)據(jù)為候選項集、出現(xiàn)次數(shù)、頻繁項集和用戶行為的分?jǐn)?shù)等中間數(shù)據(jù),可以避免用戶隱私數(shù)據(jù)在傳輸過程中泄露的可能性。