TW201917618A - 模型訓練方法、檢測url的方法及裝置 - Google Patents

模型訓練方法、檢測url的方法及裝置 Download PDF

Info

Publication number
TW201917618A
TW201917618A TW107129588A TW107129588A TW201917618A TW 201917618 A TW201917618 A TW 201917618A TW 107129588 A TW107129588 A TW 107129588A TW 107129588 A TW107129588 A TW 107129588A TW 201917618 A TW201917618 A TW 201917618A
Authority
TW
Taiwan
Prior art keywords
parameter
url
feature vector
model
isolated forest
Prior art date
Application number
TW107129588A
Other languages
English (en)
Other versions
TWI696090B (zh
Inventor
張雅淋
李龍飛
Original Assignee
香港商阿里巴巴集團服務有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 香港商阿里巴巴集團服務有限公司 filed Critical 香港商阿里巴巴集團服務有限公司
Publication of TW201917618A publication Critical patent/TW201917618A/zh
Application granted granted Critical
Publication of TWI696090B publication Critical patent/TWI696090B/zh

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/55Detecting local intrusion or implementing counter-measures
    • G06F21/56Computer malware detection or handling, e.g. anti-virus arrangements
    • G06F21/566Dynamic detection, i.e. detection performed at run-time, e.g. emulation, suspicious activities
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/214Generating training patterns; Bootstrap methods, e.g. bagging or boosting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/24Classification techniques
    • G06F18/243Classification techniques relating to the number of classes
    • G06F18/24323Tree-organised classifiers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/51Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems at application loading time, e.g. accepting, rejecting, starting or inhibiting executable software based on integrity or source reliability
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1408Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
    • H04L63/1425Traffic logging, e.g. anomaly detection
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1441Countermeasures against malicious traffic
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2119Authenticating web pages, e.g. with suspicious links

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • General Physics & Mathematics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Software Systems (AREA)
  • Evolutionary Biology (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Artificial Intelligence (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Evolutionary Computation (AREA)
  • Computing Systems (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Virology (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本說明書實施例公開了一種模型訓練方法、檢測URL的方法及裝置。在本說明書實施例中,獲取若干URL,確定每個URL中的參數,並得到每個參數對應的特徵向量,然後根據各參數分別對應的特徵向量,構建隔絕森林模型。

Description

模型訓練方法、檢測URL的方法及裝置
本說明書涉及資訊技術領域,尤其涉及一種模型訓練方法、檢測URL的方法及裝置。
在網際網路時代,網路安全尤其重要。駭客常常利用網路安全性漏洞,透過統一資源定位符(Uniform Resoure Locator, URL)侵入到伺服器,進行諸如結構化查詢語言(Structured Query Language, SQL)注入攻擊、跨站腳本攻擊等非法操作。以SQL注入攻擊為例,駭客可以在URL的參數中添加非法欄位,使得伺服器在對接收到URL進行解析時,將非法欄位誤認為可執行碼而執行,威脅伺服器上的資料安全。   在實際應用中,負責網路安全的人員通常基於業務經驗,設置一些安全規則(例如,包含XX欄位的URL不能通過檢測),使得伺服器檢測接收到的URL是否符合安全規則,並且只對符合安全規則的URL進行解析,從而避免被攻擊。   基於現有技術,需要一種更為安全可靠的檢測URL的方法。
本說明書實施例提供一種模型訓練方法、檢測URL的方法及裝置,以解決現有的檢測URL的方法安全性不高的問題。   為解決上述技術問題,本說明書實施例是這樣實現的:   本說明書實施例提供的一種模型訓練方法,包括:   獲取若干統一資源定位符URL;   針對每個URL,提取該URL中的參數;   針對提取的每個參數,確定該參數對應的特徵向量;   根據各參數分別對應的特徵向量,構建隔絕森林Isolation Forest模型,所述隔絕森林模型用於檢測URL是否異常。   本說明書實施例提供的一種檢測URL的方法,包括:   獲取URL;   提取所述URL中的參數;   針對提取的每個參數,確定該參數對應的特徵向量;   將各參數分別對應的特徵向量輸入到預先構建的隔絕森林模型,以對所述URL進行異常檢測;所述隔絕森林模型是根據上述模型訓練方法構建的。   本說明書實施例提供的一種模型訓練裝置,包括:   獲取模組,獲取若干統一資源定位符URL;   提取模組,針對每個URL,提取該URL中的參數;   確定模組,針對提取的每個參數,確定該參數對應的特徵向量;   處理模組,根據各參數分別對應的特徵向量,構建隔絕森林模型,所述隔絕森林模型用於檢測URL是否異常。   本說明書實施例提供的一種檢測URL的裝置,包括:   獲取模組,獲取URL;   提取模組,提取所述URL中的參數;   確定模組,針對提取的每個參數,確定該參數對應的特徵向量;   異常檢測模組,將各參數分別對應的特徵向量輸入到預先構建的隔絕森林Isolation Forest模型,以對所述URL進行異常檢測;所述隔絕森林模型是根據上述模型訓練方法構建的。   本說明書實施例提供的一種模型訓練設備,包括一個或多個處理器及記憶體,所述記憶體儲存有程式,並且被配置成由所述一個或多個處理器執行以下步驟:   獲取若干統一資源定位符URL;   針對每個URL,提取該URL中的參數;   針對提取的每個參數,確定該參數對應的特徵向量;   根據各參數分別對應的特徵向量,構建隔絕森林模型,所述隔絕森林模型用於檢測URL是否異常。   本說明書實施例提供的一種檢測URL的設備,包括一個或多個處理器及記憶體,所述記憶體儲存有程式,並且被配置成由所述一個或多個處理器執行以下步驟:   獲取URL;   提取所述URL中的參數;   針對提取的每個參數,確定該參數對應的特徵向量;   將各參數分別對應的特徵向量輸入到預先構建的隔絕森林模型,以對所述URL進行異常檢測;所述隔絕森林模型是根據上述模型訓練方法構建的。   由以上本說明書實施例提供的技術方案可見,在本說明書實施例中,獲取若干URL,確定每個URL中的參數,並得到每個參數對應的特徵向量,然後根據各參數分別對應的特徵向量,構建隔絕森林模型。隔絕森林模型可以用於檢測URL是否異常。一般而言,異常的URL往往就是駭客發送的URL,伺服器可以拒絕解析異常的URL,從而避免被駭客攻擊。
現有的檢測URL的方法是由伺服器根據人工制定的安全規則對URL進行檢測。但是,一方面,駭客利用URL進行網路攻擊的手段千變萬化,人工制定的安全規則難以涵蓋各攻擊手段;另一方面,人工制定的安全規則通常滯後於新出現的攻擊手段。   為此,在本說明書的一個或多個實施例中,獲取若干URL,提取各URL中的參數,並確定每個參數對應的特徵向量,根據各參數分別對應的特徵向量,構建隔絕森林Isolation Forest模型。為本領域技術人員所熟知的是,隔絕森林模型是一種異常檢測模型,使用隔絕森林模型可以檢測出某個URL是否異常,而異常的URL往往就是被駭客發送的URL,伺服器可以拒絕解析異常的URL,從而避免被駭客攻擊。   需要說明的是,之所以可以根據若干URL中的參數對應的特徵向量構建隔絕森林模型,是因為在實踐中,駭客利用URL對伺服器進行攻擊的主要手段就是在URL的參數中添加非法欄位。也就是說,正常的URL中參數的特徵向量和異常的URL中參數的特徵向量存在顯著區別。異常的URL中參數的特徵往往是罕見的,明顯區別於正常的URL中參數的特徵。   基於此,本說明書所述的技術方案的核心思想在於,將已知的若干URL中參數的特徵向量作為資料樣本,構建隔絕森林模型。隔絕森林模型可以根據某個待檢測的URL中的參數的特徵向量判斷出該URL是否異常。   為了使本技術領域的人員更好地理解本說明書中的技術方案,下面將結合本說明書一個或多個實施例中的圖式,對本說明書實施例中的技術方案進行清楚、完整地描述,顯然,所描述的實施例僅僅是本說明書一部分實施例,而不是全部的實施例。透過本說明書實施例,本領域普通技術人員在沒有作出創造性勞動前提下所獲得的所有其他實施例,都應當屬於本說明書保護的範圍。   以下結合圖式,詳細說明本說明書各實施例提供的技術方案。   圖1是本說明書實施例提供的模型訓練方法流程圖,包括以下步驟:   S100:獲取若干URL。   在本說明書實施例中,執行主體可以是伺服器或其他具有資料處理能力的設備,下文將以執行主體是伺服器為例。   眾所周知,對於一個URL而言,該URL中的參數可以包含用戶(可能是駭客)輸入的一些資訊。   舉例來說,“http://server/path/document?name1= value1&name2=value2”是一個URL的典型結構,“?”後的資料即是參數。一個URL中可以包含不止一個參數,不同的參數之間通常以“&”分隔,每個參數具有參數名和參數值。參數值通常是由用戶輸入的。在本例中,該URL包含兩個參數,“name1=value1”表示參數名為name1的參數的參數值為value1;“name2=value2”表示參數名為name2的參數的參數值為value2。   駭客有時候會在URL的參數中添加異常的非法欄位,以對伺服器進行攻擊。舉例來說,倘若善意用戶登錄伺服器時發送的正常的URL如下:   “http://server/path/document?name1=user1&name2= password1”,其中,第一參數的參數值為用戶名“user1”,第二個參數的參數值為密碼“password1”,伺服器解析該URL,驗證用戶名和密碼通過後,使用者登錄到伺服器。   而駭客想要冒充用戶“user1”登錄伺服器時,可採用SQL注入攻擊的手段,向伺服器發送如下異常的URL:   “http://server/path/document?name1=user1&name2=''' or 1=1”,其中,第一參數的參數值為用戶名“user1”,第二個參數的參數值卻不是對應於用戶名的密碼,而是非法欄位“''' or 1=1”,由於SQL語法固有的特性,當伺服器根據該非法欄位無法對使用者的密碼進行驗證時,該非法欄位會被伺服器解析為可執行碼而被伺服器執行,導致駭客無需密碼也可以登錄到使用者“user1”的帳號,對使用者的資料進行操作。   在本步驟S200中,伺服器獲取的若干URL中一般包含部分正常的URL以及部分異常的URL。而由於異常的URL較為罕見,其在所述若干URL中所占的比例較低。   S102:針對每個URL,提取該URL中的參數。   在本說明書實施例中,伺服器提取URL中的參數可以是提取URL中包含的參數名和參數值,也可以是僅提取URL中的參數的參數值。   此外,伺服器針對每個URL,可以提取該URL中的全部參數,也可以提取該URL中的部分參數。   由於在實際應用中,有些參數名的出現概率較低,駭客也很少將非法欄位添加到這些出現概率較低的參數名對應的參數值中,因此,伺服器可以不提取出現概率較低的參數名對應的參數值。   具體而言,伺服器可以針對每個URL,在該URL中包含的參數中,確定參數名滿足指定條件的參數;針對確定的每個參數,提取該參數的參數值。其中,所述指定條件可以是參數名的出現概率大於指定概率值。如此一來,可以將出現概率較低的參數過濾掉,減輕了伺服器在後續步驟中處理資料的負擔。   S104:針對提取的每個參數,確定該參數對應的特徵向量。   在本說明書實施例中,可以針對提取的每個參數,根據該參數的參數值,確定該參數對應的N維特徵向量;N為大於0的自然數。   其中,參數對應特徵向量的維度可以包括參數的參數值包含的字元總數、字母總數、數字總數、特定符號總數、不同字元的數量、不同字母的數量、不同數字的數量、不同的特定符號的數量中的至少一個。   以URL“http://server/path/document?name1=user1&name2 =password1”為例,該URL中的參數name1的參數值為user1,該參數值包含的字元總數5,字母總數4,數字總數1,特定符號總數0,不同字元的數量5,不同字母的數量4,不同數字的數量1,不同的特定符號的數量0。那麼,參數name1對應的特徵向量可以是(5,4,1,0,5,4,1,0)。   進一步地,可以對特徵向量的每個維度的取值進行歸一化處理。此處還是沿用上例說明,可以根據公式對參數name1對應的8個特徵向量值進行歸一化處理。其中,x表示特徵向量值,z表示參數name1包含的字元總數,y表示對x進行歸一化處理後構建的數值。那麼,參數name1包含的特徵向量為(5/5,4/5,1/5,0/5,5/5,4/5,1/5,0/5),即(1,0.8,0.2,0,1,0.8,0.8,0)。   S106:根據各參數分別對應的特徵向量,構建隔絕森林模型。   在本說明書實施例中,採用隔絕森林演算法,根據各參數分別對應的特徵向量構建隔絕森林模型,所述隔絕森林模型用於檢測URL是否異常。其中,無需對各參數對應的特徵向量進行正常或異常的標注。   此處對隔絕森林演算法的思想進行簡要介紹。參見圖2a,在圖2a所示的這10個點中包括空心點和實心點,空心點的數量較多(8個),且分佈較為集中,而實心點的數量較少(2個),且分佈較為分散。可以將空心點視為正常點,實心點視為異常點。也就是說,異常點就是少數且離群的點。然後進行如下操作:   第1次劃分:隨機出現一條線,將圖2a中的這些點劃分為A部分和B部分,得到圖2b。   第2次劃分:針對A部分,繼續隨機出現一條線,將A部分中的點劃分為C部分和D部分;同樣,針對B部分,也隨機出現一條線,將B部分中的點劃分為E部分和F部分,如圖2c。   繼續針對每個新劃分的部分隨機出現一條線,繼續劃分,直至將圖2a所示的平面劃分為10個部分,每個部分僅包含1個點,即每個點都被劃分到一個專屬部分(若某個部分中只包括一個點,則這個部分就是這個點的專屬部分)中。顯然,實心點更容易也更快會被劃入專屬部分,如圖2b中所示的,右上角的實心點已經被劃入專屬部分(F部分)。也就是說,某個點越容易被劃入專屬部分,這個點就越異常。   正是基於以上思想,在隔絕森林演算法中,存在S個分類樹(具體可以是二叉樹),針對每個二叉樹而言,將圖2a所示的這些點放入根節點,從根節點開始,每一次分叉的條件是隨機的(即每一次用一條隨機出現的線對點進行劃分),在該二叉樹中,越早落入葉子節點的點其異常的可能性越高。   以上述隔絕森林演算法為例,對步驟S106中根據各參數分別對應的特徵向量,構建隔絕森林模型進行簡述。   隔絕森林包括S個二叉樹(iTree),針對每個iTree,訓練該iTree的過程可以描述如下:   第一步,在各特徵向量中,隨機選擇M個特徵向量,放入該iTree的根節點;   第二步,在特徵向量的N個維度中,隨機指定一個維度(指定維度),並在該指定維度的取值中,隨機指定一個取值,作為切割值;所述切割值介於M個特徵向量的該指定維度的取值中的最大值和最小值之間;   第三步,根據所述切割值,將M個特徵向量劃分為兩部分,指定維度的取值不小於所述切割值的特徵向量為一部分,指定維度的取值小於所述切割值的為另一部分;   第四步,遞迴執行第二步和第三步,直至該iTree達到指定高度或該iTree的葉子節點上都只被放入了一個特徵向量。其中,指定高度可以根據需要設置,一般為log2M。   透過以上四步,就可以訓練出一個iTree。   需要說明的是,當訓練下一個iTree時,在第一步中,可以在全部的特徵向量中隨機選擇M個特徵向量,也可以在未被選擇過的特徵向量中隨機選擇M個特徵向量。   重複執行上述四步,可以得到S個訓練好的iTree,組成隔絕森林模型。   圖3本說明書實施例提供的一種檢測URL的方法流程圖,包括以下步驟:   S300:獲取URL。   S302:提取所述URL中的參數。   S304:針對提取的每個參數,確定該參數對應的特徵向量。   S306:將各參數分別對應的特徵向量輸入到預先構建的隔絕森林模型,以對所述URL進行異常檢測。   圖3中的所述URL是待檢測的URL。對步驟S300~S304的說明可以參見步驟S100~S104,不再贅述。   在步驟S306中,可以將各參數分別對應的特徵向量輸入到隔絕森林模型,得到各參數分別對應的模型輸出結果,根據各參數分別對應的模型輸出結果,判斷各參數中是否存在異常的參數。   進一步地,可以針對每個參數,將該參數對應的特徵向量輸入到隔絕森林模型,以透過所述隔絕森林模型中的各分類樹對該參數對應的特徵向量進行分類,確定該參數對應的特徵向量在各分類樹中所落入的葉子節點的平均高度,作為該參數對應的模型輸出結果;然後,針對每個參數,若該參數對應的模型輸出結果小於指定閾值,則確定該參數異常,若該參數對應的模型輸出結果不小於指定閾值,則確定該參數正常;當確定任一參數異常時,則確定各參數中存在異常的參數;當確定各參數都正常時,則確定各參數中不存在異常的參數。   透過圖1和圖3所示的方法,根據URL中的參數的特徵向量,構建隔絕森林模型,使得伺服器可以透過隔絕森林模型對接收到的URL進行檢測,如果確定接收到的URL異常,則可以拒絕解析該URL,從而避免被駭客攻擊,提升了網路安全性。   此外,透過本說明書實施例,還可以發現潛在的網路攻擊手段。具體而言,透過隔絕森林模型可以確定某個URL是否異常,如果該URL異常,那麼就意味著該參數的參數值是異常的,異常的參數值可以提示工作人員分析出駭客採用的攻擊手段,方便工作人員完善安全規則。   基於圖1所示的模型訓練方法,本說明書實施例還對應提供了一種模型訓練裝置,如圖4所示,包括:   獲取模組401,獲取若干統一資源定位符URL;   提取模組402,針對每個URL,提取該URL中的參數;   確定模組403,針對提取的每個參數,確定該參數對應的特徵向量;   處理模組404,根據各參數分別對應的特徵向量,構建隔絕森林模型,所述隔絕森林模型用於檢測URL是否異常。   所述提取模組,針對每個URL,在該URL包含的參數中,確定參數名滿足指定條件的參數;針對確定的每個參數,提取該參數的參數值。   所述確定模組,針對提取的每個參數,根據該參數的參數值,確定該參數對應的N維特徵向量;N為大於0的自然數。   N維特徵向量的維度,具體包括:參數的參數值包含的字元總數、字母總數、數字總數、符號總數、不同字元的數量、不同字母的數量、不同數字的數量和不同符號的數量中的至少一個。   基於圖3所示的檢測URL的方法,本說明書實施例還對應提供了一種檢測URL的裝置,如圖5所示,包括:   獲取模組501,獲取URL;   提取模組502,提取所述URL中的參數;   確定模組503,針對提取的每個參數,確定該參數對應的特徵向量;   異常檢測模組504,將各參數分別對應的特徵向量輸入到預先構建的隔絕森林Isolation Forest模型,以對所述URL進行異常檢測;所述隔絕森林模型是根據上述模型訓練方法構建的。   所述異常檢測模組,將各參數分別對應的特徵向量輸入到預先構建的隔絕森林Isolation Forest模型,構建各參數分別對應的模型輸出結果;根據各參數分別對應的模型輸出結果,判斷各參數中是否存在異常的參數;若是,則確定所述URL異常;否則,確定所述URL正常。   所述異常檢測模組,針對每個參數,將該參數對應的特徵向量輸入到預先構建的隔絕森林模型,以透過所述隔絕森林模型中的各分類樹對該參數對應的特徵向量進行分類,確定該參數對應的特徵向量在各分類樹中所落入的葉子節點的平均高度,作為該參數對應的模型輸出結果;針對每個參數,若該參數對應的模型輸出結果小於指定閾值,則確定該參數異常,若該參數對應的模型輸出結果不小於指定閾值,則確定該參數正常。   基於圖2所示的模型訓練方法,本說明書實施例還對應提供了一種模型訓練設備,如圖6所示,包括一個或多個處理器及記憶體,所述記憶體儲存有程式,並且被配置成由所述一個或多個處理器執行以下步驟:   獲取若干統一資源定位符URL;   針對每個URL,提取該URL中的參數;   針對提取的每個參數,確定該參數對應的特徵向量;   根據各參數分別對應的特徵向量,構建隔絕森林Isolation Forest模型,所述隔絕森林模型用於檢測URL是否異常。   基於圖3所示的檢測URL的方法,本說明書實施例還對應提供了一種檢測URL的設備,如圖7所示,包括一個或多個處理器及記憶體,所述記憶體儲存有程式,並且被配置成由所述一個或多個處理器執行以下步驟:   獲取URL;   提取所述URL中的參數;   針對提取的每個參數,確定該參數對應的特徵向量;   將各參數分別對應的特徵向量輸入到預先構建的隔絕森林Isolation Forest模型,以對所述URL進行異常檢測;所述隔絕森林模型是根據上述模型訓練方法構建的。   本說明書中的各個實施例均採用遞進的方式描述,各個實施例之間相同相似的部分互相參見即可,每個實施例重點說明的都是與其他實施例的不同之處。尤其,對於圖6和圖7所示的設備而言,由於其基本相似於方法實施例,所以描述的比較簡單,相關之處參見方法實施例的部分說明即可。   在20世紀90年代,對於一個技術的改進可以很明顯地區分是硬體上的改進(例如,對二極體、電晶體、開關等電路結構的改進)還是軟體上的改進(對於方法流程的改進)。然而,隨著技術的發展,當今的很多方法流程的改進已經可以視為硬體電路結構的直接改進。設計人員幾乎都透過將改進的方法流程程式設計到硬體電路中來得到相應的硬體電路結構。因此,不能說一個方法流程的改進就不能用硬體實體模組來實現。例如,可程式設計邏輯器件(Programmable Logic Device, PLD)(例如現場可程式設計閘陣列(Field Programmable Gate Array, FPGA))就是這樣一種積體電路,其邏輯功能由使用者對器件程式設計來確定。由設計人員自行程式設計來把一個數位系統“集成”在一片PLD上,而不需要請晶片製造廠商來設計和製作專用的積體電路晶片。而且,如今,取代手工地製作積體電路晶片,這種程式設計也多半改用“邏輯編譯器(logic compiler)”軟體來實現,它與程式開發撰寫時所用的軟體編譯器相類似,而要編譯之前的原始碼也得用特定的程式設計語言來撰寫,此稱之為硬體描述語言(Hardware Description Language, HDL),而HDL也並非僅有一種,而是有許多種,如ABEL(Advanced Boolean Expression Language)、AHDL(Altera Hardware Description Language)、Confluence、CUPL(Cornell University Programming Language)、HDCal、JHDL(Java Hardware Description Language)、Lava、Lola、MyHDL、PALASM、RHDL(Ruby Hardware Description Language)等,目前最普遍使用的是VHDL(Very-High-Speed Integrated Circuit Hardware Description Language)與Verilog。本領域技術人員也應該清楚,只需要將方法流程用上述幾種硬體描述語言稍作邏輯程式設計並程式設計到積體電路中,就可以很容易得到實現該邏輯方法流程的硬體電路。   控制器可以按任何適當的方式實現,例如,控制器可以採取例如微處理器或處理器以及儲存可由該(微)處理器執行的電腦可讀程式碼(例如軟體或韌體)的電腦可讀媒體、邏輯閘、開關、專用積體電路(Application Specific Integrated Circuit, ASIC)、可程式設計邏輯控制器和嵌入微控制器的形式,控制器的例子包括但不限於以下微控制器:ARC 625D、Atmel AT91SAM、Microchip PIC18F26K20以及Silicone Labs C8051F320,記憶體控制器還可以被實現為記憶體的控制邏輯的一部分。本領域技術人員也知道,除了以純電腦可讀程式碼方式實現控制器以外,完全可以透過將方法步驟進行邏輯程式設計來使得控制器以邏輯閘、開關、專用積體電路、可程式設計邏輯控制器和嵌入微控制器等的形式來實現相同功能。因此這種控制器可以被認為是一種硬體部件,而對其內包括的用於實現各種功能的裝置也可以視為硬體部件內的結構。或者甚至,可以將用於實現各種功能的裝置視為既可以是實現方法的軟體模組又可以是硬體部件內的結構。   上述實施例闡明的系統、裝置、模組或單元,具體可以由電腦晶片或實體實現,或者由具有某種功能的產品來實現。一種典型的實現設備為電腦。具體的,電腦例如可以為個人電腦、膝上型電腦、蜂窩電話、相機電話、智慧型電話、個人數位助理、媒體播放機、導航設備、電子郵件設備、遊戲控制台、平板電腦、可穿戴設備或者這些設備中的任何設備的組合。   為了描述的方便,描述以上裝置時以功能分為各種單元分別描述。當然,在實施本說明書時可以把各單元的功能在同一個或多個軟體和/或硬體中實現。   本領域內的技術人員應明白,本發明的實施例可提供為方法、系統、或電腦程式產品。因此,本發明可採用完全硬體實施例、完全軟體實施例、或結合軟體和硬體方面的實施例的形式。而且,本發明可採用在一個或多個其中包含有電腦可用程式碼的電腦可用儲存媒體(包括但不限於磁碟記憶體、CD-ROM、光學記憶體等)上實施的電腦程式產品的形式。   本發明是參照根據本發明實施例的方法、設備(系統)、和電腦程式產品的流程圖和/或方塊圖來描述的。應理解可由電腦程式指令實現流程圖和/或方塊圖中的每一流程和/或方塊、以及流程圖和/或方塊圖中的流程和/或方塊的結合。可提供這些電腦程式指令到通用電腦、專用電腦、嵌入式處理機或其他可程式設計資料處理設備的處理器以產生一個機器,使得透過電腦或其他可程式設計資料處理設備的處理器執行的指令產生用於實現在流程圖一個流程或多個流程和/或方塊圖一個方塊或多個方塊中指定的功能的裝置。   這些電腦程式指令也可儲存在能引導電腦或其他可程式設計資料處理設備以特定方式工作的電腦可讀記憶體中,使得儲存在該電腦可讀記憶體中的指令產生包括指令裝置的製造品,該指令裝置實現在流程圖一個流程或多個流程和/或方塊圖一個方塊或多個方塊中指定的功能。   這些電腦程式指令也可裝載到電腦或其他可程式設計資料處理設備上,使得在電腦或其他可程式設計設備上執行一系列操作步驟以產生電腦實現的處理,從而在電腦或其他可程式設計設備上執行的指令提供用於實現在流程圖一個流程或多個流程和/或方塊圖一個方塊或多個方塊中指定的功能的步驟。   在一個典型的配置中,計算設備包括一個或多個處理器(CPU)、輸入/輸出介面、網路介面和記憶體。   記憶體可能包括電腦可讀媒體中的非永久性記憶體,隨機存取記憶體(RAM)和/或非易失性記憶體等形式,如唯讀記憶體(ROM)或快閃記憶體(flash RAM)。記憶體是電腦可讀媒體的示例。   電腦可讀媒體包括永久性和非永久性、可移動和非可移動媒體可以由任何方法或技術來實現資訊儲存。資訊可以是電腦可讀指令、資料結構、程式的模組或其他資料。電腦的儲存媒體的例子包括,但不限於相變記憶體(PRAM)、靜態隨機存取記憶體(SRAM)、動態隨機存取記憶體(DRAM)、其他類型的隨機存取記憶體(RAM)、唯讀記憶體(ROM)、電可擦除可程式設計唯讀記憶體(EEPROM)、快閃記憶體或其他記憶體技術、唯讀光碟唯讀記憶體(CD-ROM)、數位多功能光碟(DVD)或其他光學儲存、磁盒式磁帶,磁帶磁磁片儲存或其他磁性存放裝置或任何其他非傳輸媒體,可用於儲存可以被計算設備存取的資訊。按照本文中的界定,電腦可讀媒體不包括暫存電腦可讀媒體(transitory media),如調變的資料信號和載波。   還需要說明的是,術語“包括”、“包含”或者其任何其他變體意在涵蓋非排他性的包含,從而使得包括一系列要素的過程、方法、商品或者設備不僅包括那些要素,而且還包括沒有明確列出的其他要素,或者是還包括為這種過程、方法、商品或者設備所固有的要素。在沒有更多限制的情況下,由語句“包括一個……”限定的要素,並不排除在包括所述要素的過程、方法、商品或者設備中還存在另外的相同要素。   本領域技術人員應明白,本說明書的實施例可提供為方法、系統或電腦程式產品。因此,本說明書可採用完全硬體實施例、完全軟體實施例或結合軟體和硬體方面的實施例的形式。而且,本說明書可採用在一個或多個其中包含有電腦可用程式碼的電腦可用儲存媒體(包括但不限於磁碟記憶體、CD-ROM、光學記憶體等)上實施的電腦程式產品的形式。   本說明書可以在由電腦執行的電腦可執行指令的一般上下文中描述,例如程式模組。一般地,程式模組包括執行特定任務或實現特定抽象資料類型的常式、程式、物件、元件、資料結構等等。也可以在分散式運算環境中實踐本說明書,在這些分散式運算環境中,由透過通信網路而被連接的遠端處理設備來執行任務。在分散式運算環境中,程式模組可以位於包括存放裝置在內的本地和遠端電腦儲存媒體中。   以上所述僅為本說明書的實施例而已,並不用於限制本說明書。對於本領域技術人員來說,本說明書可以有各種更改和變化。凡在本說明書的精神和原理之內所作的任何修改、等同替換、改進等,均應包含在本說明書的申請專利範圍之內。
401‧‧‧獲取模組
402‧‧‧提取模組
403‧‧‧確定模組
404‧‧‧處理模組
501‧‧‧獲取模組
502‧‧‧提取模組
503‧‧‧確定模組
504‧‧‧異常檢測模組
為了更清楚地說明本說明書實施例或現有技術中的技術方案,下面將對實施例或現有技術描述中所需要使用的圖式作簡單地介紹,顯而易見地,下面描述中的圖式僅僅是本說明書中記載的一些實施例,對於本領域普通技術人員來講,在不付出創造性勞動性的前提下,還可以根據這些圖式獲得其他的圖式。   圖1是本說明書實施例提供的一種模型訓練方法流程圖;   圖2a~c是本說明書實施例提供的正常點與異常點分佈示意圖;   圖3是本說明書實施例提供的一種檢測URL的方法流程圖;   圖4是本說明書實施例提供的一種模型訓練裝置示意圖;   圖5是本說明書實施例提供的一種檢測URL的裝置示意圖;   圖6是本說明書實施例提供的一種模型訓練設備示意圖;   圖7是本說明書實施例提供的一種檢測URL的設備示意圖。

Claims (16)

  1. 一種模型訓練方法,包括:   獲取若干統一資源定位符URL;   針對每個URL,提取該URL中的參數;   針對提取的每個參數,確定該參數對應的特徵向量;   根據各參數分別對應的特徵向量,構建隔絕森林Isolation Forest模型,該隔絕森林模型用於檢測URL是否異常。
  2. 根據申請專利範圍第1項所述的方法,針對每個URL,提取該URL中的參數,具體包括:   針對每個URL,在該URL包含的參數中,確定參數名滿足指定條件的參數;   針對確定的每個參數,提取該參數的參數值。
  3. 根據申請專利範圍第2項所述的方法,針對提取的每個參數,確定該參數對應的特徵向量,具體包括:   針對提取的每個參數,根據該參數的參數值,確定該參數對應的N維特徵向量;N為大於0的自然數。
  4. 根據申請專利範圍第3項所述的方法,N維特徵向量的維度,具體包括:   參數的參數值包含的字元總數、字母總數、數字總數、符號總數、不同字元的數量、不同字母的數量、不同數字的數量和不同符號的數量中的至少一個。
  5. 一種檢測URL的方法,包括:   獲取URL;   提取該URL中的參數;   針對提取的每個參數,確定該參數對應的特徵向量;   將各參數分別對應的特徵向量輸入到預先構建的隔絕森林模型,以對該URL進行異常檢測;該隔絕森林模型是根據申請專利範圍第1至4項中任一項所述的方法構建的。
  6. 根據申請專利範圍第5項所述的方法,將各參數分別對應的特徵向量輸入到預先構建的隔絕森林模型,以對該URL進行異常檢測,具體包括:   將各參數分別對應的特徵向量輸入到預先構建的隔絕森林模型,得到各參數分別對應的模型輸出結果;   根據各參數分別對應的模型輸出結果,判斷各參數中是否存在異常的參數;   若是,則確定該URL異常;   否則,確定該URL正常。
  7. 根據申請專利範圍第6項所述的方法,將各參數分別對應的特徵向量輸入到預先構建的隔絕森林模型,得到各參數分別對應的模型輸出結果,具體包括:   針對每個參數,將該參數對應的特徵向量輸入到預先構建的隔絕森林模型,以透過該隔絕森林模型中的各分類樹對該參數對應的特徵向量進行分類,確定該參數對應的特徵向量在各分類樹中所落入的葉子節點的平均高度,作為該參數對應的模型輸出結果;   根據各參數分別對應的模型輸出結果,判斷各參數中是否存在異常的參數,具體包括:   針對每個參數,若該參數對應的模型輸出結果小於指定閾值,則確定該參數異常,若該參數對應的模型輸出結果不小於指定閾值,則確定該參數正常。
  8. 一種模型訓練裝置,包括:   獲取模組,獲取若干統一資源定位符URL;   提取模組,針對每個URL,提取該URL中的參數;   確定模組,針對提取的每個參數,確定該參數對應的特徵向量;   處理模組,根據各參數分別對應的特徵向量,構建隔絕森林模型,該隔絕森林模型用於檢測URL是否異常。
  9. 根據申請專利範圍第8項所述的裝置,該提取模組,針對每個URL,在該URL包含的參數中,確定參數名滿足指定條件的參數;針對確定的每個參數,提取該參數的參數值。
  10. 根據申請專利範圍第9項所述的裝置,該確定模組,針對提取的每個參數,根據該參數的參數值,確定該參數對應的N維特徵向量;N為大於0的自然數。
  11. 根據申請專利範圍第10項所述的裝置,N維特徵向量的維度,具體包括:   參數的參數值包含的字元總數、字母總數、數字總數、符號總數、不同字元的數量、不同字母的數量、不同數字的數量和不同符號的數量中的至少一個。
  12. 一種檢測URL的裝置,包括:   獲取模組,獲取URL;   提取模組,提取該URL中的參數;   確定模組,針對提取的每個參數,確定該參數對應的特徵向量;   異常檢測模組,將各參數分別對應的特徵向量輸入到預先構建的隔絕森林模型,以對該URL進行異常檢測;該隔絕森林模型是根據申請專利範圍第1至4項中任一項所述的方法構建的。
  13. 根據申請專利範圍第12項所述的裝置,該異常檢測模組,將各參數分別對應的特徵向量輸入到預先構建的隔絕森林模型,得到各參數分別對應的模型輸出結果;根據各參數分別對應的模型輸出結果,判斷各參數中是否存在異常的參數;若是,則確定該URL異常;否則,確定該URL正常。
  14. 根據申請專利範圍第13項所述的裝置,該異常檢測模組,針對每個參數,將該參數對應的特徵向量輸入到預先構建的隔絕森林模型,以透過該隔絕森林模型中的各分類樹對該參數對應的特徵向量進行分類,確定該參數對應的特徵向量在各分類樹中所落入的葉子節點的平均高度,作為該參數對應的模型輸出結果;針對每個參數,若該參數對應的模型輸出結果小於指定閾值,則確定該參數異常,若該參數對應的模型輸出結果不小於指定閾值,則確定該參數正常。
  15. 一種模型訓練設備,包括一個或多個處理器及記憶體,該記憶體儲存有程式,並且被配置成由該一個或多個處理器執行以下步驟:   獲取若干統一資源定位符URL;   針對每個URL,提取該URL中的參數;   針對提取的每個參數,確定該參數對應的特徵向量;   根據各參數分別對應的特徵向量,構建隔絕森林模型,該隔絕森林模型用於檢測URL是否異常。
  16. 一種檢測URL的設備,包括一個或多個處理器及記憶體,該記憶體儲存有程式,並且被配置成由該一個或多個處理器執行以下步驟:   獲取URL;   提取該URL中的參數;   針對提取的每個參數,確定該參數對應的特徵向量;   將各參數分別對應的特徵向量輸入到預先構建的隔絕森林模型,以對該URL進行異常檢測;該隔絕森林模型是根據申請專利範圍第1至4項中任一項所述的方法構建的。
TW107129588A 2017-10-24 2018-08-24 模型訓練方法、檢測url的方法及裝置 TWI696090B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
CN201710998117.7 2017-10-24
CN201710998117.7A CN107992741B (zh) 2017-10-24 2017-10-24 一种模型训练方法、检测url的方法及装置
??201710998117.7 2017-10-24

Publications (2)

Publication Number Publication Date
TW201917618A true TW201917618A (zh) 2019-05-01
TWI696090B TWI696090B (zh) 2020-06-11

Family

ID=62030610

Family Applications (1)

Application Number Title Priority Date Filing Date
TW107129588A TWI696090B (zh) 2017-10-24 2018-08-24 模型訓練方法、檢測url的方法及裝置

Country Status (3)

Country Link
CN (2) CN107992741B (zh)
TW (1) TWI696090B (zh)
WO (1) WO2019080660A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI780433B (zh) * 2019-12-12 2022-10-11 大陸商支付寶(杭州)信息技術有限公司 基於聯邦學習的孤立森林模型構建和預測方法和裝置

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107992741B (zh) * 2017-10-24 2020-08-28 阿里巴巴集团控股有限公司 一种模型训练方法、检测url的方法及装置
CN108229156A (zh) * 2017-12-28 2018-06-29 阿里巴巴集团控股有限公司 Url攻击检测方法、装置以及电子设备
CN110086749A (zh) * 2018-01-25 2019-08-02 阿里巴巴集团控股有限公司 数据处理方法及装置
CN108366071B (zh) 2018-03-06 2020-06-23 阿里巴巴集团控股有限公司 Url异常定位方法、装置、服务器及存储介质
CN108984376B (zh) * 2018-05-31 2021-11-19 创新先进技术有限公司 一种系统异常检测方法、装置及设备
CN108777873B (zh) * 2018-06-04 2021-03-02 江南大学 基于加权混合孤立森林的无线传感网络异常数据检测方法
CN110032881B (zh) * 2018-12-28 2023-09-22 创新先进技术有限公司 一种数据处理方法、装置、设备及介质
CN109815566A (zh) * 2019-01-09 2019-05-28 同济大学 一种sgf格式的围棋ai棋谱文件的异常检测方法
CN110399268B (zh) * 2019-07-26 2023-09-26 创新先进技术有限公司 一种异常数据检测的方法、装置及设备
CN110958222A (zh) * 2019-10-31 2020-04-03 苏州浪潮智能科技有限公司 基于孤立森林算法的服务器日志异常检测方法及系统
CN114095391B (zh) * 2021-11-12 2024-01-12 上海斗象信息科技有限公司 一种数据检测方法、基线模型构建方法及电子设备
CN116776135B (zh) * 2023-08-24 2023-12-19 之江实验室 一种基于神经网络模型的物理场数据预测方法及装置

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7082426B2 (en) * 1993-06-18 2006-07-25 Cnet Networks, Inc. Content aggregation method and apparatus for an on-line product catalog
US8844033B2 (en) * 2008-05-27 2014-09-23 The Trustees Of Columbia University In The City Of New York Systems, methods, and media for detecting network anomalies using a trained probabilistic model
US8521667B2 (en) * 2010-12-15 2013-08-27 Microsoft Corporation Detection and categorization of malicious URLs
US9178901B2 (en) * 2013-03-26 2015-11-03 Microsoft Technology Licensing, Llc Malicious uniform resource locator detection
US9106536B2 (en) * 2013-04-15 2015-08-11 International Business Machines Corporation Identification and classification of web traffic inside encrypted network tunnels
CN103544210B (zh) * 2013-09-02 2017-01-18 烟台中科网络技术研究所 一种识别网页类型的系统和方法
US9412024B2 (en) * 2013-09-13 2016-08-09 Interra Systems, Inc. Visual descriptors based video quality assessment using outlier model
JP6276417B2 (ja) * 2013-11-04 2018-02-07 イルミオ, インコーポレイテッドIllumio,Inc. ラベルベースのアクセス制御ルールの自動生成
CN105205394B (zh) * 2014-06-12 2019-01-08 腾讯科技(深圳)有限公司 用于入侵检测的数据检测方法和装置
CN104077396B (zh) * 2014-07-01 2017-05-17 清华大学深圳研究生院 一种钓鱼网站检测方法及装置
CN104899508B (zh) * 2015-06-17 2018-12-07 中国互联网络信息中心 一种多阶段钓鱼网站检测方法与系统
US11200291B2 (en) * 2015-11-02 2021-12-14 International Business Machines Corporation Automated generation of web API descriptions from usage data
CN105554007B (zh) * 2015-12-25 2019-01-04 北京奇虎科技有限公司 一种web异常检测方法和装置
KR20170108330A (ko) * 2016-03-17 2017-09-27 한국전자통신연구원 악성 코드 탐지 장치 및 방법
CN105956472B (zh) * 2016-05-12 2019-10-18 宝利九章(北京)数据技术有限公司 识别网页中是否包含恶意内容的方法和系统
CN106131071B (zh) * 2016-08-26 2019-06-04 北京奇虎科技有限公司 一种Web异常检测方法和装置
CN106846806A (zh) * 2017-03-07 2017-06-13 北京工业大学 基于Isolation Forest的城市道路交通异常检测方法
CN106960040B (zh) * 2017-03-27 2019-09-17 北京神州绿盟信息安全科技股份有限公司 一种url的类别确定方法及装置
CN107196953B (zh) * 2017-06-14 2020-05-08 上海境领信息科技有限公司 一种基于用户行为分析的异常行为检测方法
CN107992741B (zh) * 2017-10-24 2020-08-28 阿里巴巴集团控股有限公司 一种模型训练方法、检测url的方法及装置

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI780433B (zh) * 2019-12-12 2022-10-11 大陸商支付寶(杭州)信息技術有限公司 基於聯邦學習的孤立森林模型構建和預測方法和裝置

Also Published As

Publication number Publication date
CN107992741B (zh) 2020-08-28
CN112182578A (zh) 2021-01-05
TWI696090B (zh) 2020-06-11
CN107992741A (zh) 2018-05-04
WO2019080660A1 (zh) 2019-05-02

Similar Documents

Publication Publication Date Title
TWI696090B (zh) 模型訓練方法、檢測url的方法及裝置
KR102272117B1 (ko) 블록체인 기반 데이터 프로세싱 방법 및 디바이스
JP6804668B2 (ja) ブロックデータ検証方法および装置
TWI715999B (zh) 身份資訊的識別方法及裝置
TWI706273B (zh) 統一資源定位符(url)攻擊檢測方法、裝置及電子設備
US9405910B2 (en) Automatic library detection
Han et al. Malware analysis using visualized image matrices
CN103164698B (zh) 文本指纹库生成方法及装置、文本指纹匹配方法及装置
CN111835777B (zh) 一种异常流量检测方法、装置、设备及介质
US20190312908A1 (en) Cyber chaff using spatial voting
CN111159697B (zh) 一种密钥检测方法、装置及电子设备
WO2017087437A1 (en) Fast pattern discovery for log analytics
JP2019110513A (ja) 異常検知方法、学習方法、異常検知装置、および、学習装置
CN109714356A (zh) 一种异常域名的识别方法、装置及电子设备
US9984065B2 (en) Optimizing generation of a regular expression
CN111062490A (zh) 一种包含隐私数据的网络数据的处理方法及装置
CN113360300B (zh) 接口调用链路生成方法、装置、设备及可读存储介质
US20140309984A1 (en) Generating a regular expression for entity extraction
CN105488105A (zh) 信息提取模板的建立方法、知识数据的处理方法和装置
CN116055067B (zh) 一种弱口令检测的方法、装置、电子设备及介质
US10013539B1 (en) Rapid device identification among multiple users
CN110413871B (zh) 应用推荐方法、装置及电子设备
CN111752912B (zh) 数据处理方法及装置
CN105279434A (zh) 恶意程序样本家族命名方法及装置
CN115718696B (zh) 源码密码学误用检测方法、装置、电子设备和存储介质