偷偷摘套内射激情视频,久久精品99国产国产精,中文字幕无线乱码人妻,中文在线中文a,性爽19p

通過(guò)機(jī)器學(xué)習(xí)進(jìn)行惡意軟件分析

安全
去年以來(lái),我們發(fā)現(xiàn)很多的音像公司開(kāi)始接觸機(jī)器學(xué)習(xí)和人工智能,希望能找到一條快速有效的途徑來(lái)分析并隔離新型的惡意軟件,同時(shí),擴(kuò)大惡意軟件庫(kù)。

去年以來(lái),我們發(fā)現(xiàn)很多的音像公司開(kāi)始接觸機(jī)器學(xué)習(xí)和人工智能,希望能找到一條快速有效的途徑來(lái)分析并隔離新型的惡意軟件,同時(shí),擴(kuò)大惡意軟件庫(kù)。然而,事實(shí)上這里存在一個(gè)很大的問(wèn)題就是很多人把機(jī)器學(xué)習(xí)當(dāng)成了無(wú)所不能的魔術(shù)棒——他們開(kāi)始用機(jī)器學(xué)習(xí)的時(shí)候,只是把盡量多的樣例交給算法去計(jì)算,就算完成了,而事實(shí)上這樣做不完全正確。

0×00 簡(jiǎn)介

Deepviz是一款強(qiáng)大的惡意軟件自動(dòng)分析平臺(tái),也是一個(gè)強(qiáng)大有效的智能威脅情報(bào)平臺(tái),除此之外它還能夠?qū)λ杏蓯阂廛浖治鰞x中提取的數(shù)據(jù)進(jìn)行分析,通過(guò)關(guān)聯(lián)算法做出***的抉擇。

機(jī)器學(xué)習(xí)是Deepviz用到的關(guān)鍵技術(shù),它能夠識(shí)別新型惡意軟件,還能找到相似的樣品進(jìn)行關(guān)聯(lián),并擴(kuò)大的惡意軟件庫(kù)。但實(shí)際上,執(zhí)行一個(gè)有效的機(jī)器學(xué)習(xí)算法并不像大多數(shù)人想象的那么簡(jiǎn)單——并不是“給智能機(jī)器盡量多的詳細(xì)的信息,它就會(huì)自己找到訣竅”。

接下來(lái)我們一步步的探索機(jī)器學(xué)習(xí)的原理。

0×01.聚類(lèi)算法

聚類(lèi)分析是一種統(tǒng)計(jì)分析技術(shù),目的在于從給定的數(shù)據(jù)集合中識(shí)別出重要的群組。我們可以通過(guò)已有的惡意軟件群組發(fā)現(xiàn)與之相似的新型惡意軟件或者與這個(gè)群組具有相同特征的樣例。為了給一個(gè)數(shù)據(jù)集合分組,我們需要一個(gè)表達(dá)式來(lái)描述數(shù)據(jù)集合中每個(gè)元素間的相似性。

每一個(gè)元素用一個(gè)特征集合描述,這個(gè)特征集合的屬性在某些方面對(duì)這個(gè)元素非常重要。設(shè)計(jì)特征集合的時(shí)候,有兩個(gè)要點(diǎn)需要考慮到:

***,要明白如何選擇屬性。正如上面所說(shuō),很多人以為聚類(lèi)分析就應(yīng)該讓分析程序提取數(shù)百萬(wàn)屬性進(jìn)行計(jì)算,卻忽略了一點(diǎn):被考慮進(jìn)來(lái)的屬性越多,計(jì)算的時(shí)間也會(huì)越多,而且,有些屬性并不能用于準(zhǔn)確區(qū)分出惡意軟件。例如,用PE文件的唯一熵屬性做為特征集合將會(huì)導(dǎo)致錯(cuò)誤的聚類(lèi)化。不過(guò)無(wú)論如何,我們需要找到足夠多的屬性可以讓我們將一些具有特殊行為的惡意軟件分成幾個(gè)不同的惡意軟件群組。所以我們要提取的屬性是對(duì)惡意軟件分析有意義的屬性, 這也是Deepvid惡意軟件分析器***的組成部分。

第二,找到最合適的量度來(lái)驗(yàn)證并且對(duì)比惡意軟件的屬性。每個(gè)惡意軟件都可以被描述成數(shù)值性質(zhì)的屬性(例如:信息熵)或者抽象性質(zhì)的屬性。在數(shù)學(xué)上,相似度度量就是用來(lái)描述兩個(gè)對(duì)象的相似程度。歐式距離就是其中一種被廣為人知的用于比較數(shù)值型屬性相似度的方法。那么,抽象型數(shù)據(jù)的相似性該如何度量呢?Deepviz中給出了兩個(gè)惡意軟件以及與之相關(guān)的IPs和URLs,我們?cè)撊绾伪容^這兩個(gè)集合呢?怎樣把他們進(jìn)行聚合?

舉個(gè)例子說(shuō)明,如下圖片展示的是所有訪問(wèn)過(guò)網(wǎng)站complifies.ru的軟件的MD5聚合:

通過(guò)機(jī)器學(xué)習(xí)進(jìn)行惡意軟件分析

 

我們的聚類(lèi)算法把樣本分成4個(gè)不同的群組,上圖是整個(gè)聚合過(guò)程的***一步截圖。

要想得到相似集合,我們需要知道每個(gè)元素和其他元素之間在哪些方面相似,或者說(shuō)哪些方面不同。這些值可以通過(guò)距離矩陣表現(xiàn)出來(lái)。

基于此,我們需要得到的東西是:

1.選擇一個(gè)特征集合,該集合由一個(gè)或者多個(gè)屬性組成,通過(guò)該集合可以將原始數(shù)據(jù)集合中的元素進(jìn)行分類(lèi)。

2.選擇一個(gè)計(jì)算距離的算法,通過(guò)該算法可以計(jì)算各個(gè)元素間的距離。

然后,我們需要做的步驟是:

3.比較一個(gè)元素與該元素本身的距離,以及該元素與數(shù)據(jù)集合中其他元素的距離

4.用一個(gè)聚類(lèi)算法來(lái)把相似的元素聚合。在我們的例子中,我們聚合的是惡意軟件群組

元素間的相似度

歐式距離被大量的運(yùn)用在計(jì)算數(shù)字型的元素之間的距離。在這里,我將介紹的是另一種計(jì)算距離的方法—杰卡德距離(Jaccard distance),作為抽象型數(shù)值的度量。

先給一個(gè)例子,以下是兩個(gè)樣本以及與他們有關(guān)的URLs列表,計(jì)算出集合中每個(gè)元素與該樣本的相似度,具體結(jié)果如下

樣本

26414a9d627606c4974d8c3f372b0797 和 27f72541c93e206dcd5b2d4171e66f9a:如下:

通過(guò)機(jī)器學(xué)習(xí)進(jìn)行惡意軟件分析 

通過(guò)機(jī)器學(xué)習(xí)進(jìn)行惡意軟件分析

 

具體結(jié)果頁(yè)面:

https://intel.deepviz.com/hash/26414a9d627606c4974d8c3f372b0797/

https://intel.deepviz.com/hash/27f72541c93e206dcd5b2d4171e66f9a/

杰卡德相似度用于比較抽象數(shù)據(jù)點(diǎn)之間的相似程度,是最廣泛使用的相似度算法。該算法被定義為兩個(gè)結(jié)合交集的元素個(gè)數(shù)占并集的比重。如果兩個(gè)集合沒(méi)有重復(fù)的元素,那么杰卡德相似度就是0。如果兩個(gè)集合所有元素都一樣,杰卡德相似度就是1,杰卡德相似度的計(jì)算公式如下:

思考一下下面的題目:

1.集合A由19個(gè)元素組成

2.集合B由12個(gè)元素組成

3.兩個(gè)集合相交的元素總共有4個(gè)

通過(guò)杰卡德公式可以推算出兩個(gè)集合的相似度是0.15 因此上面的公式同樣可以變形用距離計(jì)算的公式,如下:

distance = 1 – similarity

如果我們計(jì)算所有樣本間的杰卡德距離,就能得出以下的距離矩陣:

通過(guò)機(jī)器學(xué)習(xí)進(jìn)行惡意軟件分析

 

如圖,集合A與B的距離是0.1***與C的距離是0.8等等。元素和他本身的距離是0,對(duì)稱(chēng)的,A與B的之間的距離和B與A之間的距離是一樣的,是以對(duì)角線對(duì)稱(chēng)的。為了優(yōu)化矩陣的計(jì)算時(shí)間,我們可以使用這個(gè)對(duì)稱(chēng)的性質(zhì)只計(jì)算一半的矩陣。

矩陣計(jì)算完后,就能把這個(gè)距離矩陣輸入到聚類(lèi)算法中進(jìn)一步計(jì)算。從這里我們可以看出,從數(shù)據(jù)中提取的屬性越有效,接下來(lái)的聚類(lèi)算法聚合出的結(jié)果也將越準(zhǔn)確。

聚類(lèi)算法(DBSCAN)

聚類(lèi)算法通過(guò)元素間的距離對(duì)各個(gè)元素進(jìn)行分類(lèi)。更簡(jiǎn)單地說(shuō)就是一個(gè)元素與其所在的集合的距離,這也包括特征集合中的元素。那么,我們?nèi)绾螌⑦@個(gè)算法運(yùn)用到惡意軟件分析中呢?

DBSCAN(基于密度的聚類(lèi)算法)是一個(gè)比較有代表性的基于密度的聚類(lèi)算法,這個(gè)算法是在于將簇定義為密度相連的點(diǎn)的***集合,把具有足夠高密度的區(qū)域劃分為簇,并可以在噪聲的空間數(shù)據(jù)庫(kù)中發(fā)現(xiàn)任意形狀的聚類(lèi)

前面,我們已經(jīng)計(jì)算出了集合的距離矩陣,因此我們就可以知道每一個(gè)元素與任意一個(gè)其他元素的距離。

這個(gè)算法需要有兩個(gè)輸入:

1.最小密度(min_pts)

2.掃描半徑(eps)

如下圖所示:

通過(guò)機(jī)器學(xué)習(xí)進(jìn)行惡意軟件分析

 

1.密度:某個(gè)點(diǎn)為中心,半徑為eps的區(qū)域內(nèi)的點(diǎn)的個(gè)數(shù)稱(chēng)為該點(diǎn)的密度。

2.核心點(diǎn):以該點(diǎn)為中心,半徑eps的區(qū)域內(nèi)的點(diǎn)的個(gè)數(shù)大于最小包含點(diǎn)數(shù)(min_pts),則這個(gè)點(diǎn)稱(chēng)為核心點(diǎn),這些區(qū)域內(nèi)的點(diǎn)形成一個(gè)簇

3.邊界點(diǎn):密度小魚(yú)最小包含點(diǎn)數(shù)(min_pts)的點(diǎn)稱(chēng)為邊界點(diǎn),有趣的是邊界點(diǎn)其鄰域內(nèi)包含至少一個(gè)核心點(diǎn)。

4.噪聲點(diǎn):不屬于核心點(diǎn)或者邊界點(diǎn)的就是噪聲點(diǎn)

從以上的定義中可以知道,每一個(gè)形成的簇都至少包含有min_pts個(gè)點(diǎn)。 eps半徑的值設(shè)定的越高,簇的形成的限制就會(huì)越小。中等距離的樣例可能就會(huì)被劃分進(jìn)同一個(gè)簇,原來(lái)是噪聲的點(diǎn)可能變成邊界點(diǎn)(甚至是一個(gè)核心點(diǎn))。所以說(shuō),Min_pts和eps的值在我們的惡意分析程序里面可能會(huì)做出一定的改變。

另一方面需要說(shuō)明的是,一個(gè)噪聲點(diǎn)并非和簇一點(diǎn)關(guān)系都沒(méi)有,這依賴(lài)于我們是否想要找到新的變種或是替代已有的惡意軟件簇。

現(xiàn)在,我們?cè)俣嗯e幾個(gè)例子感受下。

在前面的例子中,我們已經(jīng)通過(guò)“URLs”作為特征屬性得到了元素間的距離,接下來(lái)我們通過(guò)IPs來(lái)做聚類(lèi)。

從我們的網(wǎng)絡(luò)威脅感知記錄的頁(yè)面中,我們發(fā)現(xiàn)一個(gè)有趣的IP:1.234.83.146

通過(guò)機(jī)器學(xué)習(xí)進(jìn)行惡意軟件分析

 

通過(guò)我們的威脅感知系統(tǒng)的API,我們發(fā)現(xiàn)1.234.83.146這個(gè)IP與我們的353個(gè)樣例同時(shí)有關(guān)聯(lián)

通過(guò)機(jī)器學(xué)習(xí)進(jìn)行惡意軟件分析

 

***步,我們用杰卡德距離算法計(jì)算所有所有樣例與IPs列表得到的距離矩陣,

杰卡德距離的值從0(表示兩個(gè)樣本具有相同的IPs列表)到1(表示兩個(gè)樣本毫無(wú)關(guān)系),然后我們通過(guò)DBSCAN算法計(jì)算出簇,其中半徑eps為0.5,最小密度min_pts設(shè)置成1,這意味著噪聲點(diǎn)也會(huì)變成一個(gè)簇。

通過(guò)機(jī)器學(xué)習(xí)進(jìn)行惡意軟件分析

 

需要說(shuō)明的是,上圖并不是DBSCAN算法算出的結(jié)果,上圖只是距離矩陣在空間圖上的表述而已,矩陣圖需要進(jìn)一步計(jì)算才能得到簇。有圖明顯可以看出,DBSCAN劃分了兩個(gè)簇,其中簇的完整信息下載地址:https://deepvizblog.files.wordpress.com/2016/01/cluster1.docx

然后我們?cè)囍褏?shù)的值改變下,看看結(jié)果:把半徑eps設(shè)置成0.1,最小密度min_pts設(shè)置成1

通過(guò)機(jī)器學(xué)習(xí)進(jìn)行惡意軟件分析

 

正如預(yù)料的那樣,DBSCAN算法劃分出了更多的簇

具體的信息下載地址:https://deepvizblog.files.wordpress.com/2016/01/cluster2.docx

以上只是一些很簡(jiǎn)單的例子,但你可以通過(guò)聚類(lèi)算法識(shí)別出更多新的樣本,無(wú)論是不是惡意軟件簇,只要能提取到正確的數(shù)據(jù),他就能幫你識(shí)別并孤立惡意軟件。

以下是我們威脅感知平臺(tái)得到的一些孤立樣本

Deepviz Threat Intel
290f3104a53cc5776d3ad8b562291680
4fa660009cba0b3401f71439b885e067
6368cc6d88c559bb27da31ef251a52a1
27bd99bf75491447fb3383d1f54f4e40
c7b19f8250b70ae5bd46590749bf9660
8f68c9a4a1769f57651a6a26b0ea2cf9
責(zé)任編輯:藍(lán)雨淚 來(lái)源: FreeBuf
相關(guān)推薦

2009-02-04 10:30:47

2022-09-27 14:46:03

網(wǎng)絡(luò)安全計(jì)算機(jī)惡意軟件

2017-04-14 08:33:47

2022-08-31 08:24:19

惡意軟件網(wǎng)絡(luò)攻擊

2024-02-02 10:25:00

2020-12-25 15:24:24

人工智能

2022-08-29 11:12:11

惡意軟件Jackware

2015-08-24 11:58:14

2013-08-12 15:44:44

Pyew惡意軟件分析工具惡意軟件分析

2015-05-06 11:22:30

2022-05-30 09:49:51

Windows惡意軟件瀏覽器

2023-12-12 09:00:00

2012-11-19 13:25:21

2017-11-06 12:10:35

SSnatchLoad惡意軟件

2023-08-07 07:44:44

2011-03-02 09:44:45

2015-05-12 10:53:33

2016-09-19 15:40:25

2019-05-09 10:51:29

惡意軟件加密通信網(wǎng)絡(luò)攻擊

2023-09-27 07:56:25

點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)