識別計算機網絡內的惡意設備的製作方法
2023-06-08 03:30:01 1
識別計算機網絡內的惡意設備的製作方法
【專利摘要】本發明描述了用於基於設備的簡檔來主動地識別可能攻擊者的技術。例如,一種設備包括一個或多個處理器和網絡接口卡,這些網絡接口卡用以從遠程設備接收定向至由該設備所保護的一個或多個計算設備的網絡流量,基於該網絡流量的內容來確定用於該設備的第一集合的數據點,向該遠程設備發送響應以查明用於該設備的第二集合的數據點,並且從該遠程設備接收該第二集合的數據點的至少一部分。該設備還包括安全模塊,該安全模塊由這些處理器可操作為確定惡意評級,並且基於該惡意評級來選擇性地管理定向至由該安全設備所保護的該一個或多個計算設備的並且從該遠程設備所接收的其他網絡流量。
【專利說明】識別計算機網絡內的惡意設備
【技術領域】
[0001]本公開內容涉及計算系統,並且更具體地涉及計算系統攻擊檢測和預防。
【背景技術】
[0002]存在著越來越大量和越來越複雜的網絡攻擊,特別是針對web應用和伺服器的那些網絡攻擊,其涉及高價值流量。不安全的應用和伺服器能夠導致顧客損失、財政損失、聲譽受損和法律衝突。在從一組攻擊者中檢測網絡攻擊的嘗試中,例如,公司可以使用攻擊籤名。然而,攻擊籤名是反應性的,因為它們僅阻擋觸發了已有籤名的攻擊,並且在一些實例中,是在攻擊者已經造成了一些損害之後。此外,攻擊者可能更改網絡流量,使得攻擊者的流量不再與籤名相匹配,由此使籤名失敗並且防止安全設備阻擋該攻擊。
【發明內容】
[0003]一般性地,本公開內容描述了用於主動識別可能的攻擊者的技術。在一些示例實施方式中,這些技術通過構造簡檔來識別可能的攻擊者,該簡檔包括從潛在攻擊的設備所採集的設備環境信息以及從自該設備所接收的通信所抽取的頭部數據(例如,超文本傳輸協議(HTTP)頭部數據)的組合。例如,本公開內容的技術可以使得安全服務能夠將由該安全服務關於該設備的操作環境而採集的環境信息與從該設備所接收的通信中的頭部數據相比較。如果該安全服務識別到該環境信息與該頭部數據之間的不一致,則該安全服務可以確定該設備是與攻擊者相關聯的惡意設備。進一步地,該安全服務可以分析該環境信息和頭部數據來識別該設備的插件、應用、或者其他特性,以確定這些設備特性中的任何設備特性是否指示惡意設備。在該設備被確定是惡意設備的示例中,安全設備可以管理源自該惡意設備的網絡流量。
[0004]該安全服務可以本地實施在該安全設備處,或者實施在雲計算系統中。通過將該安全服務實施在雲計算系統中,該安全服務可以使用全局資料庫來從多個不同的公司聚集關於攻擊者設備的信息,以提供用於攻擊者和威脅信息的集合點(consolidat1n point)。該安全服務然後可以將所獲知的攻擊者設備信息傳播給網絡中的其他安全設備。以這種方式,攻擊者設備特性的全局資料庫可以被生成並且跨安全設備而分布,使得這些安全設備能夠識別並且緩解由攻擊者設備所發起的攻擊,即使這些攻擊者設備以前從未攻擊過由該特定安全設備所保護的資源。
[0005]在一個示例中,一種方法包括:由安全設備並且從一個設備接收定向至由該安全設備所保護的一個或多個計算設備的網絡流量;基於該網絡流量的內容,來確定用於該設備的第一集合的數據點,該第一集合的數據點包括在該設備處執行的軟體應用的特性;並且由該安全設備向該設備發送響應以查明用於該設備的第二集合的數據點,該第二集合的數據點包括由該設備所提供的並且在該設備本地的操作環境的特性。該方法還可以包括:由該安全設備並且從該設備接收該第二集合的數據點的至少一部分;基於該第二集合的數據點的所接收的部分和該第一集合的數據點,來確定惡意評級;以及基於該惡意評級,來選擇性地管理定向至由該安全設備所保護的該一個或多個計算設備的並且從該設備所接收的其他網絡流量。
[0006]在另一個示例中,一種設備包括一個或多個處理器、一個或多個網絡接口卡、以及安全模塊。該一個或多個網絡接口卡從遠程設備接收定向至由該設備所保護的一個或多個計算設備的網絡流量;基於該網絡流量的內容,來確定用於該設備的第一集合的數據點,該第一集合的數據點包括在該遠程設備處執行的軟體應用的特性;向該遠程設備發送響應以查明用於該遠程設備的第二集合的數據點,該第二集合的數據點包括由該遠程設備所提供的並且在該遠程設備本地的操作環境的特性;並且從該遠程設備接收該第二集合的數據點的至少一部分。該安全模塊由該一個或多個處理器可操作為:基於該第二集合的數據點的所接收的部分和該第一集合的數據點,來確定惡意評級;並且基於該惡意評級,來選擇性地管理定向至由該安全設備所保護的該一個或多個計算設備的並且從該遠程設備所接收的其他網絡流量。
[0007]在另一個示例中,利用指令來編碼計算機可讀存儲介質。這些指令促使一個或多個可編程處理器從一個設備接收定向至由安全設備所保護的一個或多個計算設備的網絡流量;基於該網絡流量的內容,來確定用於該設備的第一集合的數據點,該第一集合的數據點包括在該設備處執行的軟體應用的特性;並且向該設備發送響應以查明用於該設備的第二集合的數據點,該第二集合的數據點包括由該設備所提供的並且在該設備本地的操作環境的特性。這些指令進一步促使該一個或多個可編程處理器從該設備接收該第二集合的數據點的至少一部分;基於該第二集合的數據點的所接收的部分和該第一集合的數據點,來確定惡意評級;並且基於該惡意評級,來選擇性地管理定向至由該安全設備所保護的該一個或多個計算設備的並且從該設備所接收的其他網絡流量。
[0008]在下面隨附的附圖和描述中闡述了一個或多個實施例的細節。根據該描述和附圖並且根據權利要求,其他特徵、目的、以及優點將是明顯的。
【專利附圖】
【附圖說明】
[0009]圖1是圖示了根據本公開內容的一個或多個方面的示例惡意設備識別網絡系統的框圖。
[0010]圖2是圖示了根據本公開內容的一個或多個方面的用於識別惡意設備的示例安全設備的框圖。
[0011]圖3是圖示了根據本公開內容的一個或多個方面的用於合併惡意設備信息的示例安全服務伺服器的框圖。
[0012]圖4是圖示了根據本公開內容的一個或多個方面的用於識別惡意設備的示例過程的流程圖。
[0013]圖5是圖示了根據本公開內容的一個或多個方面的用於識別惡意設備的另一個示例過程的流程圖。
【具體實施方式】
[0014]圖1是圖示了根據本公開內容的一個或多個方面的示例惡意設備識別網絡系統2的框圖。如圖1中所示出的,網絡系統2包括計算設備10、代理伺服器12、目標網絡14、以及安全服務16。計算設備10是可以被用來攻擊目標網絡或數據中心的網絡資源的計算設備的一個示例。在一些示例中,計算設備10是移動臺、膝上型計算機、臺式計算機、或伺服器計算系統,或者可以包括多個計算設備。例如,計算設備10可以是攻擊者對其具有控制的一組計算設備(例如,因為該攻擊者先前劫持了那些計算設備)。在一些示例中,計算設備10是由一個或多個計算設備所執行的虛擬機或者軟體應用(例如,web瀏覽器、攻擊者工具、腳本、等等)。
[0015]計算設備10可能嘗試直接地或者通過代理伺服器(諸如代理伺服器12)連接至目標網絡14。代理伺服器12可能通過例如使得由計算設備10所生成的網絡流量看起來像該網絡流量是在代理伺服器12處起源的,而混淆與計算設備10相關聯的IP位址。通過混淆計算設備10的IP位址,通常的安全器具可能允許該攻擊的網絡流量進入目標網絡,因為該攻擊的網絡流量不再匹配先前被配置為阻擋來自計算設備10的網絡流量的規則。對照地,根據本公開內容的技術所配置的安全設備20,可以繼續阻擋來自計算設備10的網絡流量,即使計算設備10利用代理伺服器12用於網絡攻擊。
[0016]目標網絡14可以包括用於提供web應用的一個或多個伺服器(諸如應用伺服器22)以及安全設備(諸如安全設備20)。目標網絡14可以包括另外的網絡設備,諸如防火牆、路由器、交換機、服務節點、等等(未示出)。應用伺服器22是為用戶提供web應用的web應用伺服器的示例。在一些示例中,應用伺服器22可以被配置為集群、被配置為分布式計算系統、或者被配置為其他冗餘的和/或負載均衡的配置。安全設備20是一種網絡設備,該網絡設備被配置為通過例如識別並且管理從被識別為惡意設備的設備(例如,計算設備10)所接收的網絡通信,來保護應用伺服器22免於攻擊設備之害。
[0017]儘管在本文中被描述為確定計算設備10是否是「惡意設備」,但是本公開內容的技術可以識別在計算設備10處執行的一個或多個軟體應用是否是惡意軟體應用。作為一個示例,計算設備10可以執行探測目標網絡14以尋找潛在安全漏洞的程序腳本。作為另一個示例,計算設備10可以執行提供web爬蟲功能的軟體應用。在這兩個示例中,安全設備20和安全服務16可以將在計算設備10處執行的特定軟體應用識別為是惡意的或者善意的。如本文所描述的,確定設備是「惡意設備」包括確定在該設備處執行的一個或多個軟體應用是惡意的軟體應用。因此,術語「惡意設備」包括「惡意的軟體應用」,並且確定設備是否是惡意設備包括確定在該設備處執行的軟體應用是否是惡意的軟體應用。
[0018]在一個示例中,計算設備10向應用伺服器22發送針對內容的請求。該針對內容的請求可以直接發送給目標網絡14或者通過代理伺服器12來路由。請求被直接發送給目標網絡14指的是請求不經過代理伺服器(例如,代理伺服器12)而被發送,但是該請求可能行進通過中間網絡設備,諸如路由器、網關、防火牆、等等,和/或通過中間網絡,並且在它們沒有通過代理伺服器而被發送的意義上仍然被考慮為被直接發送給目標網絡14。在一些實例中,計算設備10可以將一些請求直接發送給目標網絡14,並且將其他請求通過代理伺服器12發送給目標網絡14。
[0019]安全設備20被配置為保護應用伺服器22,並且在網絡路徑中定位在計算設備10與應用伺服器22之間。安全設備20接收由計算設備10先前發送的請求,並且發起簡檔構建過程。術語「簡檔」指代與計算設備10有關的多個數據點(例如,特性)的組合,當該計算設備通過例如請求對web應用的接入、發起虛擬專用網(VPN)會話、發起安全殼連接、等等,來嘗試接入目標網絡時,這些數據點能夠由該安全設備擷取。一般而言,為特定設備所生成的簡檔可以包括與多個屬性有關的數據點(例如,與計算設備10相關聯的特性),這些屬性與由該計算設備所提供的並且在該計算設備本地的操作環境相關聯,這些操作環境諸如用戶代理、HTTP_ACCEPT頭部、瀏覽器插件細節、該設備的時區、該設備的監視器的屏幕尺寸和色彩深度、所安裝的系統字體、作業系統版本信息、以及是否啟用了 cookie。在一些示例中,該簡檔還包括與該設備的IP位址有關的數據點。
[0020]在一個示例中,為了生成計算設備10的簡檔,安全設備20可以初始地允許來自計算設備10的該請求被發送給應用伺服器22。響應於確定應用伺服器22中的一個或多個應用伺服器已經發送了對該請求的響應消息,安全設備20可以攔截該響應消息並且將可執行代碼(例如,腳本、Java代碼、等等)注入到所攔截的響應消息中,以用於在計算設備10的操作環境內執行。當在計算設備10上被執行時,所注入的代碼運行以查明數據點,諸如配置信息。在另一個示例中,安全設備20攔截來自計算設備10的初始請求,並且向計算設備10發送響應,而不允許來自計算設備10的該請求到達應用伺服器22。在這個示例中,安全設備20可以生成用以包括在該響應中的偽信息、以及查明計算設備10的配置信息的可執行代碼。在任一示例中,計算設備10接收對該請求的響應,並且一經執行所注入的代碼,就發送由安全設備20所請求的數據點的至少一部分。
[0021]安全設備20可以備選地或者附加地分析並且收集來自計算設備10所發送的該請求的信息(例如,不注入代碼或者以其他方式請求來自計算設備10的具體信息)。安全設備20還可以將從該請求所收集的該信息包括在安全設備20為計算設備10生成的簡檔中。安全設備20通過例如針對每個數據點來收集所有的相異值的列表,使得該簡檔包括針對每個特定數據點的值的列表(而不僅僅是針對多個值為其而被接收的數據點的單個值),而根據全部所收集的信息來生成簡檔。在一些示例中,安全設備20將散列函數應用至每個數據點以使這些數據點匿名,使得這些數據點不包括任何個人信息但是仍然可以被用來生成用於設備的簡檔。如果安全設備20不能針對所請求的數據點中的一個或多個數據點而收集值(例如,因為計算設備10沒有將這些值包括在響應中),則安全設備20不將那些值包括在該簡檔中。因此,用於不同設備的不同簡檔可以包括不同集合的數據點(例如,特性)。
[0022]在一些示例中,安全設備20將所生成的簡檔的不同數據點相互比較,以識別該簡檔內的不一致。在一個示例中,該簡檔包括與在計算設備10處執行的作業系統版本相對應的至少兩個數據點。與作業系統版本相對應的這些數據點可以包括由計算設備10所提供的信息(例如,頭部信息),並且可以包括由安全設備20(例如,響應於代碼注入)所收集的信息。安全設備20可以比較該兩種不同方式中的每種方式所提供的作業系統版本信息,以確定他們是否不一致。例如,該頭部信息中所提供的作業系統版本信息可能指定一個作業系統,而由安全設備20響應於所注入的代碼而收集的該信息可能指定不同的作業系統。
[0023]安全設備20還可以將作業系統版本信息與所安裝的插件信息相比較,以識別不一致。在一個示例中,由計算設備10所提供的該頭部信息指示特定插件被安裝在計算設備10處。然而,響應於所注入的代碼而提供給安全設備20的作業系統版本信息,指示計算設備10正執行與該插件不兼容的作業系統。
[0024]一般而言,該設備簡檔中的不一致被確定為對應於該設備(例如,計算設備10)是惡意設備的增加的可能性。相應地,在其中安全設備20在所生成的簡檔中識別了一個或多個不一致的實例中,安全設備20可以增加對於計算設備10的惡意評級。儘管描述為被增力口,但是該惡意評級可以用任何方式來調整,使得安全設備20和/或安全服務16被配置為將所調整的惡意評級與計算設備10是惡意設備的增加的可能性相關。
[0025]安全設備20還可以基於所識別的插件和安裝在計算設備10處的其他軟體應用,以及計算設備10正在使用來連接至目標網絡14的連接類型,來調整對於計算設備10的惡意評級。基於所識別的插件、軟體應用、以及連接類型,安全設備20可以調整該惡意評級。例如,如果反病毒軟體應用被安裝在計算設備10處,則安全設備20可以減小或者以其他方式調整對於計算設備10的惡意評級,以指示計算設備10是惡意設備的減小的可能性。作為另一個示例,如果安全設備20確定該計算設備10正在使用虛擬專用網(VPN)連接而連接至目標網絡14,則安全設備20可以減小對於計算設備10的惡意評級。在另一個示例中,安全設備20可以確定匿名化插件被安裝在計算設備10處,並且作為響應而增加計算設備10的惡意評級。
[0026]替代執行本地的惡意確定過程,或者除了執行本地的惡意確定過程之外,安全設備20可以通過例如將所生成的設備簡檔發送給安全服務(例如,安全服務16),而將計算設備10識別為惡意設備。安全設備20可以向安全服務16發送附加信息,諸如安全設備20的標識符以及如下的指示:本地惡意確定過程是否指示計算設備10是很可能的惡意設備。
[0027]安全服務16可以包括多個安全服務伺服器24,多個安全服務伺服器24可以被配置為提供安全服務。例如,安全服務伺服器24可以被配置作為管理全局設備指紋資料庫的雲數據中心內的集群或者分布式計算系統。安全服務伺服器24從安全設備20接收設備簡檔信息,並且分析該簡檔以確定該簡檔是否指示惡意設備。如關於安全設備20所描述的,安全服務16可以響應於識別到設備簡檔信息中的不一致,而增加對於特定設備的惡意評級。
[0028]響應於分析該設備簡檔信息並且生成惡意評級,安全服務16可以向安全設備20發送與計算設備10是否很可能是惡意設備有關的指示。該指示可以包括生成惡意評級和/或安全服務16是否將計算設備10歸類為惡意設備的指示。在任一實例中,安全設備20可以基於從安全服務16所接收的信息,來確定計算設備10是否是惡意設備。安全設備20還可以基於上面所描述的對設備簡檔信息的本地分析,或者基於該本地分析與從安全服務16所接收的該信息的組合,來確定計算設備10是否是惡意設備。
[0029]如果安全設備20確定計算設備10是惡意設備,則安全設備20可以通過例如發起反措施以禁止計算設備10攻擊目標網絡14和應用伺服器22的能力,來管理從計算設備10所接收的網絡流量。這些反措施可以包括:發送偽信息、丟棄從計算設備10所接收的網絡分組、使該網絡連接減速、移除潛在有害的用戶輸入值、將這些網絡分組重定向、或者以其他方式防止從計算設備10所發送的網絡分組到達目標網絡14的所保護的資源(例如,應用伺服器22)。
[0030]圖2是圖示了根據本公開內容的一個或多個方面的用於識別惡意設備的示例安全設備的框圖。圖2圖示了安全設備20的僅一個特定示例,並且在其他實例中可以使用安全設備20的許多其他示例。僅為了舉例說明的目的,下面在圖1的網絡系統2的背景中來描述安全設備20。
[0031]如在圖2的具體示例中所示出的,安全設備20可以提供用於可執行軟體指令的執行環境。在這個示例中,安全設備20包括一個或多個處理器30、一個或多個網絡接口卡32、以及一個或多個存儲設備34。組件30、32和34中的每個組件可以通過用於組件間通信的一個或多個通信信道而(物理地、通信地、和/或操作地)互連。在一些示例中,該(些)通信信道可以包括一個或多個系統總線、網絡連接、過程間的通信數據結構、或者用於通信數據的其他信道。
[0032]在一些示例中,(多個)處理器30被配置為實施功能和/或執行指令。例如,(多個)處理器30可以能夠處理(多個)存儲設備34中所存儲的指令。(多個)處理器30的示例可以包括以下各項中的一項或多項:微處理器、控制器、數位訊號處理器(DSP)、專用集成電路(ASIC)、現場可編程門陣列(FPGA)、或者其他類型的分立或集成邏輯電路。
[0033](多個)存儲設備34可以被配置為存儲用於在安全設備20內使用的程序代碼和/或數據。在圖2的示例中,(多個)存儲設備34可以存儲包括數據收集模塊36、作業系統38、以及安全模塊40的軟體組件。在一些示例中,(多個)存儲設備34被描述為計算機可讀存儲介質。在一些示例中,(多個)存儲設備34包括暫時性存儲器,意味著存儲設備34的主要目的不是長期存儲。在一些示例中,(多個)存儲設備34包括易失性存儲器,意味著(多個)存儲設備34在安全設備20被關閉時不維持所存儲的內容。易失性存儲器的示例可以包括:隨機訪問存儲器(RAM)、動態隨機訪問存儲器(DRAM)、靜態隨機訪問存儲器(SRAM)、以及本領域中已知的其他形式的易失性存儲器。在一些示例中,(多個)存儲設備34被用來存儲用於由(多個)處理器30執行的程序指令。在一些示例中,(多個)存儲設備34由在安全設備20上運行的程序或應用使用以在程序執行期間暫時性地存儲信息。
[0034]在一些示例中,(多個)存儲設備34包括一個或多個計算機可讀存儲介質。(多個)存儲設備34可以被配置為相比易失性存儲器而存儲更大量的信息。(多個)存儲設備34可以進一步被配置用於信息的長期存儲。在一些示例中,(多個)存儲設備34包括非易失性存儲元件。這些非易失性存儲元件的示例包括:磁硬碟、光碟、軟盤、快閃記憶體、或者電可編程存儲器(EPR0M)或電可擦除且可編程(EEPR0M)存儲器的形式。
[0035]安全設備20可以使用(多個)網絡接口卡32來經由一個或多個通信網絡(諸如一個或多個無線網絡)而與外部設備通信。(多個)網絡接口卡32可以包括一個或多個乙太網卡、光收發機、射頻收發機、或者被配置為發送和接收信息的其他類型的設備。網絡接口的其他示例可以包括:藍牙無線電、3G無線電、和WiFi無線電、以及通用串行總線(USB)接口。在一些示例中,安全設備20可以使用(多個)網絡接口卡32來與可操作地耦合至安全設備20的另一個設備無線地通信。
[0036]作業系統38可以控制安全設備20的各組件的操作。例如,作業系統38可以促進數據收集模塊36、處理器30、網絡接口卡32、以及存儲設備34之間的通信。存儲設備34的一個或多個組件(包括作業系統38、數據收集模塊36、以及安全模塊40)每個都可以包括可以由安全設備20可執行的程序指令和/或數據。數據收集模塊36和安全模塊40可以包括指令,這些指令促使安全設備20執行本公開內容中所描述的操作和動作中的一個或多個操作和動作。在一些示例中,在(多個)存儲設備34中所圖示的組件中的一個或多個組件,可以實施在硬體和/或軟體和硬體的組合中。
[0037]根據本公開內容的技術,安全設備20從計算設備10接收網絡流量,諸如針對與在應用伺服器22處執行的web應用有關的信息的請求。該網絡流量可以經由網絡接口卡32中的一個網絡接口卡而被接收。該網絡流量被定向至數據收集模塊36以用於處理。如圖2中所示出的,數據收集模塊36包括分組解析模塊42、代碼注入模塊44、以及簡檔生成模塊46。響應於數據收集模塊36接收到該請求,分組解析模塊42解析該請求以抽取該網絡流量中所包括的信息(諸如用戶代理信息),該信息能夠與其他數據點相結合地被用來確定計算設備10是否是惡意設備。所抽取的信息可以包括計算設備10的特性。所抽取的信息可以被提供給簡檔生成模塊46,以用於在生成用於計算設備10的設備簡檔中使用。
[0038]在一些示例中,該網絡流量沿路傳遞至應用伺服器22中的一個應用伺服器(圖1),並且應用伺服器22生成對該網絡流量的響應。該響應從應用伺服器22發送,並且定向至計算設備10 (例如,具有與計算設備10相關聯的目的地地址)。然而,在該響應離開目標網絡14之前,安全設備20可以攔截該響應並且可以更改該響應。例如,代碼注入模塊44可以將代碼注入到該響應中,以便促使計算設備10提供與計算設備10有關的配置和其他信息。代碼注入模塊44可以基於請求的類型和所交換的響應來動態地生成該代碼。例如,如果該網絡流量源自web瀏覽器,則代碼注入模塊44可以注入由web瀏覽器可執行的代碼,使得當該響應由計算設備10接收並且在該web瀏覽器內顯示時,該web瀏覽器自動地執行該代碼並且與計算設備10有關的該信息被發送給安全設備20。作為另一個示例,如果該網絡流量源自不同的應用、腳本、等等,則代碼注入模塊44將適當類型的代碼注入到該響應中。一般而言,代碼注入模塊44被配置為將代碼注入到該響應中,使得該代碼由計算設備10執行並且作為結果的信息被返回給安全設備20,而不需要計算設備10的用戶來執行任何附加動作。
[0039]在其他示例中,安全模塊40生成虛假響應並且發送給計算設備10,使得該請求不被轉發給應用伺服器22。替代地,安全模塊40表現得好像它是應用伺服器22中的一個應用伺服器,並且在收集與計算設備10有關的附加信息的嘗試中與計算設備10交換分組,而不向可能的攻擊開放應用伺服器22。如上面所描述的,由安全模塊40所發送的響應可以包括由代碼注入模塊44注入到該響應中的代碼。
[0040]在另外的網絡流量由安全設備20接收時,可以從這些請求抽取的任何附加信息被傳遞給簡檔生成模塊46。類似地,響應於所注入的代碼由計算設備10執行,由安全設備20所接收的與計算設備10有關的配置信息和其他信息被提供給簡檔生成模塊46。簡檔生成模塊46收集所有的不同數據項目和相關聯的數據值。在一些示例中,每個數據項目與不同的重要性評級相關聯,使得被確定具有較高重要性的那些數據項目是更有可能準確地將計算設備10識別為惡意設備的數據項目,而被確定具有較低重要性的那些數據項目較少可能準確地將計算設備10識別為惡意設備。簡檔生成模塊46可以抑制生成用於計算設備10的簡檔,直到數據項目的數目和用於與計算設備10相關聯的對應數據值滿足閾值數目,或者組合的重要性評級滿足閾值總重要性評級。也就是說,簡檔生成模塊46可以抑制生成用於計算設備10的簡檔,直到簡檔生成模塊46已經接收到足夠的與計算設備10有關的信息,以能夠以閾值級別的準確性將計算設備10識別為惡意設備。
[0041]一旦簡檔生成模塊46已經接收到足夠的與計算設備10有關的信息以生成簡檔,簡檔生成模塊46就生成用於計算設備10的簡檔。在一些示例中,安全設備20通過至少將所生成的簡檔發送給安全服務16並且接收惡意評級的指示和/或安全服務16是否將計算設備10歸類為惡意設備的指示,來確定計算設備10是否是惡意設備。在一些示例中,安全設備20通過至少分析所生成的設備簡檔以識別在計算設備10處所安裝的惡意插件中的一個或多個惡意插件、識別在計算設備10處所安裝的一個或多個善意插件、以及識別所生成的簡檔中的各種數據點之間的一個或多個不一致,來確定計算設備10是否是惡意設備。安全設備20可以基於對該設備簡檔的分析來生成惡意評級,並且將所生成的惡意評級與閾值惡意評級相比較,來確定是否將計算設備10歸類為惡意設備。
[0042]除了基於所生成的簡檔來將計算設備10分類之外,安全設備20還可以監測計算設備10與應用伺服器22之間所交換的網絡流量,以確定該網絡流量是否指示惡意設備。如果是,則安全設備20可以確定計算設備10是惡意設備,即便所生成的簡檔可能指示其他。然而,如果所生成的簡檔指示計算設備10與惡意設備相關聯,則安全設備20就好像計算設備10是惡意設備那樣對待從計算設備10所接收的網絡流量,即便與計算設備10相關聯的該網絡流量沒有被確定為指示惡意設備。
[0043]一般而言,安全設備20基於計算設備10是否被歸類為惡意設備,來選擇性地管理來自計算設備10的網絡流量。例如,如果計算設備10被確定為是惡意設備,則安全模塊40可以管理從計算設備10所接收的網絡流量,諸如通過丟棄從計算設備10所接收的分組、向計算設備10發送偽信息、請求與計算設備10有關的附加信息以創建更完整的簡檔、或者執行其他動作來緩解由計算設備10所嘗試的任何攻擊。如果計算設備10被確定為不是惡意設備,則安全設備20可以繼續允許網絡流量在計算設備10與應用伺服器22之間交換,而不應用上面所描述的各種反措施。
[0044]圖3是圖示了根據本公開內容的一個或多個方面的用於合併惡意設備信息的示例安全服務伺服器的框圖。圖3圖示了安全服務伺服器24的僅一個特定示例,並且在其他實例中可以使用安全服務伺服器24的許多其他示例。僅為了舉例說明的目的,下面在圖1的網絡系統2的背景中來描述安全服務伺服器24。
[0045]如在圖3的具體示例中所示出的,安全服務伺服器24可以提供用於可執行軟體指令的執行環境。在這個不例中,安全服務伺服器24包括一個或多個處理器60、一個或多個網絡接口卡62、以及一個或多個存儲設備64。組件60、62和64中的每個組件可以通過用於組件間通信的一個或多個通信信道而(物理地、通信地、和/或操作地)互連。在一些示例中,該(些)通信信道可以包括一個或多個系統總線、網絡連接、過程間的通信數據結構、或者用於通信數據的其他信道。
[0046]在一些示例中,(多個)處理器60被配置為實施功能和/或執行指令。例如,(多個)處理器60可以能夠處理(多個)存儲設備64中所存儲的指令。(多個)處理器60的示例可以包括以下各項中的一項或多項:微處理器、控制器、數位訊號處理器(DSP)、專用集成電路(ASIC)、現場可編程門陣列(FPGA)、或者其他類型的分立或集成邏輯電路。
[0047](多個)存儲設備64可以被配置為存儲用於在安全服務伺服器24內使用的程序代碼和/或數據。在圖3的示例中,(多個)存儲設備64可以存儲包括分析模塊66、規則資料庫68、設備簡檔資料庫70、以及作業系統72的軟體組件。在一些示例中,(多個)存儲設備64被描述為計算機可讀存儲介質。在一些示例中,(多個)存儲設備64包括暫時性存儲器,意味著存儲設備64的主要目的不是長期存儲。在一些示例中,(多個)存儲設備64包括易失性存儲器,意味著(多個)存儲設備64在安全服務伺服器24被關閉時不維持所存儲的內容。易失性存儲器的示例可以包括:隨機訪問存儲器(RAM)、動態隨機訪問存儲器(DRAM)、靜態隨機訪問存儲器(SRAM)、以及本領域中已知的其他形式的易失性存儲器。在一些示例中,(多個)存儲設備64被用來存儲用於由(多個)處理器60執行的程序指令。在一些示例中,(多個)存儲設備64由在安全服務伺服器24上運行的程序或應用使用以在程序執行期間暫時性地存儲信息。
[0048]在一些示例中,(多個)存儲設備64包括一個或多個計算機可讀存儲介質。(多個)存儲設備64可以被配置為相比易失性存儲器而存儲更大量的信息。(多個)存儲設備64可以進一步被配置用於信息的長期存儲。在一些示例中,(多個)存儲設備64包括非易失性存儲元件。這些非易失性存儲元件的示例包括:磁硬碟、光碟、軟盤、快閃記憶體、或者電可編程存儲器(EPROM)或電可擦除且可編程(EEPROM)存儲器的形式。
[0049]安全服務伺服器24可以使用(多個)網絡接口卡62來經由一個或多個通信網絡(諸如一個或多個無線網絡)而與外部設備通信。(多個)網絡接口卡62可以包括一個或多個乙太網卡、光收發機、射頻收發機、或者被配置為發送和接收信息的其他類型的設備。網絡接口的其他示例可以包括:藍牙無線電、3G無線電、和WiFi無線電、以及通用串行總線(USB)接口。在一些示例中,安全服務伺服器24可以使用(多個)網絡接口卡62來與可操作地耦合至安全服務伺服器24的另一個設備無線地通信。
[0050]作業系統72可以控制安全服務伺服器24的各組件的操作。例如,作業系統72可以促進分析模塊66、規則資料庫68、設備簡檔資料庫70、處理器60、網絡接口卡62、以及存儲設備64之間的通信。存儲設備64的一個或多個組件(包括作業系統70、分析模塊66、規則資料庫68、以及設備簡檔資料庫70)每個都可以包括可以由安全服務伺服器24可執行的程序指令和/或數據。分析模塊66、規則資料庫68、以及設備簡檔資料庫70可以每個都包括指令,這些指令促使安全服務伺服器24執行本公開內容中所描述的操作和動作中的一個或多個操作和動作。在一些示例中,在(多個)存儲設備64中所圖示的組件中的一個或多個組件,可以實施在硬體和/或軟體和硬體的組合中。
[0051]根據本公開內容的技術,安全服務伺服器24接收用於計算設備10的設備簡檔信息。該設備簡檔信息可以是由安全設備20所生成的設備簡檔。例如,該設備簡檔信息可以包括,由安全設備20基於對從計算設備10所接收的網絡流量的分析而收集的數據項目的至少一部分。該設備簡檔信息還可以包括,響應於所注入的代碼由計算設備10執行而由計算設備10所提供的一個或多個數據點。
[0052]該設備簡檔信息可以被提供給分析模塊66用於分析並且確定計算設備10是否是惡意設備。如圖3中所示出的,分析模塊66包括規則分析模塊74、規則更新模塊76、安全設備更新模塊78、以及分類器模塊80。規則分析模塊74可以從規則資料庫68取回一個或多個規則以應用至該設備簡檔信息,以便生成對於計算設備10的惡意評級。儘管被描述為資料庫,但是規則資料庫68可以是任何數據結構或數據結構的組合,包括散列表、鍊表、等等。通常,規則資料庫68被配置為存儲與用來確定設備是否是惡意設備的一個或多個規則有關的信息。在一個示例中,這些規則是邏輯構造,這些邏輯構造可以被應用至設備簡檔信息以識別異常並且為特定設備生成(例如,計算)惡意評級。在一些示例中,這些規則可以由安全專家定義,並且可以具有與攻擊籤名相類似的特性。也就是說,這些規則可以手動地被配置為識別某些異常(例如,不一致)、識別某些安裝的插件、識別是否根本沒有安裝任何插件、等等,並且基於該特定設備的所識別的特性來計算惡意評級,該惡意評級可以被用來將該特定設備歸類為惡意設備。
[0053]在一些示例中,可以使用機器學習技術來生成這些規則。例如,包括異常和插件信息的學習數據集合可以被提供給安全服務伺服器24。分析模塊66和規則更新模塊76可以處理該學習數據集合,以訓練並且學習可以存儲在規則資料庫68中的規則。規則更新模塊76可以使用該學習數據集合來更新已經存儲在規則資料庫68中的規則,並且可以基於該學習數據集合來生成附加規則。分析模塊66可以在一個時段內處理多個學習數據集合,並且可以在處理學習數據集合之間處理其他數據(例如,從由安全設備20所接收的當前網絡流量所採集的設備簡檔信息)。如果安全專家或者其他管理員手動地改變用於一個或多個設備的類別(例如,將設備從被歸類為惡意設備改變至被歸類為非惡意),則規則更新模塊76可以基於對這些設備的手動歸類來更新這些規則。進一步地,使用機器學習技術所生成的這些規則可以與由安全專家所生成的規則相結合。
[0054]規則分析模塊74將這些規則應用至該設備簡檔信息的至少一部分。作為一個示例,該設備簡檔信息包括用戶代理頭部信息和瀏覽器插件信息,該用戶代理頭部信息指示計算設備10是平板計算設備,該瀏覽器插件信息指示不兼容的插件被安裝在計算設備10上並且計算設備10支持不與該平板計算設備作業系統兼容的文件擴展。這些規則可以識別該用戶代理頭部信息與該插件信息之間的不一致,觸發異常並且導致增加的惡意評級(例如,因為該用戶代理頭部很有可能被偽造)。作為另一個示例,如果這些規則識別到專有的並且很可能僅由合法用戶在企業發行(corporate-1ssued)的設備上運行的、安裝在該設備處的某些瀏覽器擴展,和/或識別到與已知的HTTP頭部相結合的反病毒插件或指示善意用戶的其他插件,則規則分析模塊74減少惡意評級,因為該設備較不可能是惡意設備。這些瀏覽器擴展和插件可以被包括在插件和/或瀏覽器擴展的白名單中。
[0055]作為另一個示例,計算設備10可能執行自動化的漏洞掃描器(例如,作為不用瀏覽器而運行的腳本),該自動化的漏洞掃描器被配置為,在模仿瀏覽器並且避開安全系統的檢測的嘗試中,輸出與該瀏覽器的用戶代理信息和其他數據點相類似的用戶代理信息和其他數據點。在這個示例中,包括從代碼注入所收集的數據點的設備簡檔信息,將很可能指示完全沒有瀏覽器插件或者任何所包括的瀏覽器插件信息與用戶代理信息之間的不一致。規則分析模塊74將應用這些規則並且識別這些異常和不一致,這可能導致更高的惡意評級。
[0056]作為又另一個示例,計算設備10可能執行web搜尋引擎蜘蛛系統(例如,web爬蟲軟體應用)。設備簡檔信息可以包括指示網絡流量源自蜘蛛的已知用戶代理信息。然而,在一些實例中,計算設備10可能執行嘗試將它自身假裝為蜘蛛的惡意軟體。規則分析模塊74可以分析設備簡檔信息,並且基於是否識別到異常,而在有效的蜘蛛與嘗試將它自身假裝為有效蜘蛛(例如,通過改變在計算設備10處執行的軟體應用的特性)的惡意軟體進行區分。換句話說,規則分析模塊74和分類器模塊80可以基於設備簡檔信息中所包括的HTTP和瀏覽器特性的組合,來確定哪些請求相對於偽裝的黑客或腳本而來自真實的搜索蜘蛛。
[0057]通過應用這些規則,規則分析模塊74可以生成用於設備的惡意評級。該惡意評級可以是,基於該設備是惡意設備的增加的可能性或者減小的可能性而改變的任何值。為了清楚性的目的,討論了數值的惡意評級,但是應當理解,其他類型的惡意值也被設想到,並且應當理解,惡意評級不應當被限制於數值。
[0058]在一些示例中,可以基於特定數據點指示該設備是惡意設備的可能性而不同地加權每個不同的數據點。例如,因為一些瀏覽器插件(諸如代理、匿名器、以及超文本傳送協議(HTTP)嗅探器)更有可能在惡意設備上執行,應用至每個插件的加權可以隨著在單個設備處所檢測到的這些插件的數目的增加而增加。換句話說,如果計算設備10安裝了兩個這種插件,則該加權可以是二,但是如果四個這種插件安裝在計算設備10處,則該加權可以是十。
[0059]儘管被描述為將規則應用至設備簡檔信息,但是規則分析模塊74還可以將這些規則應用至網絡流量模式,以增加或減少對於特定設備的惡意評級。例如,如果用於源自計算設備10的網絡流量的網絡流量模式對應於指示掃描安全設備20以尋找漏洞的模式,則規則分析模塊74可以增加對於計算設備10的惡意評級。作為另一個示例,網絡流量模式對應於通常的web會話,規則分析模塊74可以減少對於計算設備10的惡意評級。
[0060]規則分析模塊74可以將惡意評級傳遞給分類器模塊80。分類器模塊80確定與該惡意評級相關聯的設備(例如,計算設備10)是否是惡意設備。作為一個示例,分類器模塊80可以將所生成的惡意評級與閾值惡意值相比較。如果所生成的惡意評級滿足該閾值惡意值,則分類器模塊80將計算設備10分類為惡意設備。如果所生成的惡意評級不滿足該閾值,則分類器模塊80不將計算設備10分類為惡意設備。
[0061]安全服務16可以將所生成的惡意評級和針對每個設備的分類傳播給其他安全設備。一般而言,安全服務伺服器24維護安全設備資料庫70。安全設備資料庫70包括與訂購了由安全服務16和安全服務伺服器24所提供的安全服務的安全設備有關的信息。安全設備更新模塊78可以將設備簡檔信息發送給向安全服務16註冊過的一個或多個安全設備(例如,具有安全設備資料庫70內的條目的安全設備)。例如,安全設備更新模塊78可以將設備簡檔、惡意評級、惡意設備歸類、等等發送給其他安全設備。
[0062]儘管分析模塊66在圖3的示例中被圖示為被包括在安全服務伺服器24內,但是在其他示例中,分析模塊66和/或規則分析模塊74、規則更新模塊76、安全設備更新模塊78、以及分類器模塊80的任意組合可以被包括在圖1和2的安全設備20內。換句話說,安全設備20可以被配置為執行關於安全服務伺服器24而描述的技術中的任何技術或者全部技術,包括訓練規則、應用規則、生成惡意評級、將設備分類、以及更新其他安全設備。此外,圖1-3中所圖示的並且關於圖1-3所描述的功能的特定分布僅僅是本公開內容的這些特定技術可以如何分布的一種示例。安全設備20和安全服務16可以每個都執行歸於如關於圖1-3所描述的每個功能的或多或少的功能。
[0063]圖4是圖示了根據本公開內容的一個或多個方面的用於識別惡意設備的示例過程的流程圖。僅為了舉例說明的目的,下面在如圖1和2中所示出的安全設備20的背景內來描述這些示例操作。其他示例安全設備也可以執行下面所描述的這些示例操作。
[0064]安全設備20從可能的惡意設備(例如,計算設備10)接收傳入的針對數據的請求
(90)。分組解析模塊42解析該請求以抽取信息,諸如用戶代理信息。安全設備20可以將該傳入的請求轉發給處理該請求並且發送響應的應用伺服器22中的一個應用伺服器。安全設備20攔截該響應並且代碼注入模塊44注入代碼,這些代碼促使計算設備10向安全設備20發送附加數據點(例如,瀏覽器和/或設備特性)和相關聯的值(92)。計算設備10接收該響應並且將這些數據點和相關聯的值發送給安全設備20,而不需要計算設備10的用戶來執行任何附加的動作。
[0065]安全設備20接收該設備信息(94),並且簡檔生成模塊46生成用於計算設備10的設備簡檔(96)。使用所生成的設備簡檔,安全模塊40生成對於計算設備10的惡意評級
(98)。例如,安全模塊40可以將一個或多個規則應用至該設備簡檔信息,以識別該設備簡檔信息中的任何不一致或異常,以及識別在計算設備10處所安裝的插件,並且使用這個所識別的信息來生成該惡意評級。
[0066]安全模塊40基於該惡意評級而將計算設備10分類為惡意設備或者不為惡意設備(例如,善意設備)(98)。在一些示例中,安全模塊40將所生成的惡意評級與閾值相比較,並且基於該惡意評級是否滿足該閾值來將計算設備10分類。
[0067]安全設備20基於對計算設備10的分類來管理來自計算設備10的網絡流量
(100)。例如,如果安全模塊40將計算設備10分類為惡意設備,則安全設備20可以積極地管理來自計算設備10的所有網絡流量。例如,安全設備20可以防止該網絡流量到達應用伺服器22。在一些示例中,安全設備20可以阻擋該網絡流量、扼流該網絡流量、將該網絡流量重定向、將該網絡流量記入日誌、或者採取其他反措施以最小化源自計算設備10的任何潛在攻擊的影響。例如,安全模塊40可以攔截由計算設備10所發送的所有分組,並且提供偽響應以便收集與計算設備10有關的附加數據點。
[0068]在一些示例中,安全設備20可以基於由攻擊者設備所生成的網絡流量,來確定計算設備10是惡意設備。例如,如果計算設備10正在探測應用伺服器22處執行的軟體的已知安全漏洞,則安全設備20確定計算設備10是惡意設備,並且可以通過例如阻擋該網絡流量、扼流網絡流量、將網絡流量重定向、將該網絡流量記入日誌、或者採取其他反措施以最小化源自計算設備10的任何潛在攻擊的影響,來管理源自計算設備10的網絡流量。如果安全設備20確定計算設備10不是惡意設備,則安全設備20可以允許網絡流量在計算設備10與應用伺服器22之間自由地交換。
[0069]圖5是圖示了根據本公開內容的一個或多個方面的用於識別惡意設備的另一個示例過程的流程圖。僅為了舉例說明的目的,下面在圖1-3中所示出的安全設備20和安全服務伺服器24的背景內來描述這些示例操作。其他示例安全設備和安全服務伺服器也可以執行下面所描述的這些示例操作。
[0070]安全設備20從可能的惡意設備(例如,計算設備10)接收傳入的針對數據的請求(110)。分組解析模塊42解析該請求以抽取信息,諸如用戶代理信息。安全設備20可以將該傳入的請求轉發給處理該請求並且發送響應的應用伺服器22中的一個應用伺服器。安全設備20攔截該響應並且代碼注入模塊44注入代碼,這些代碼促使計算設備10向安全設備20發送附加數據點(例如,瀏覽器和/或設備特性)和相關聯的值(112)。計算設備10接收該響應並且將這些數據點和相關聯的值發送給安全設備20,而不需要計算設備10的用戶來執行任何附加的動作。
[0071]安全設備20接收該設備信息(114),並且簡檔生成模塊46生成用於計算設備10的設備簡檔(116)。安全設備20將所生成的簡檔發送給安全服務伺服器24(118)。安全服務伺服器24接收該設備簡檔信息(120)。使用該設備簡檔信息,規則分析模塊74生成對於計算設備10的惡意評級(122)。例如,規則分析模塊74可以將規則資料庫68的一個或多個規則應用至該設備簡檔信息,以識別該設備簡檔信息中的任何不一致或異常,以及識別在計算設備10處所安裝的插件,並且使用這個所識別的信息來生成該惡意評級。
[0072]分類器模塊80基於該惡意評級而將計算設備10分類為惡意設備或者不為惡意設備(例如,善意設備)(124)。在一些示例中,分類器模塊80將所生成的惡意評級與閾值相比較,並且基於該惡意評級是否滿足該閾值來將計算設備10分類。安全服務伺服器24將該設備分類信息發送給安全設備20(126)。並發地,在所調度的時間,或者在某個其他時間,安全設備更新模塊78 (例如,基於安全設備資料庫70中所存儲的信息)將所更新的設備簡檔和分類信息發送給向安全服務16註冊過的安全設備(128)。
[0073]安全設備20從安全服務伺服器24接收該分類信息(130),並且基於對計算設備10的分類來管理來自計算設備10的網絡流量(132)。例如,如果所接收的分類信息指示計算設備10是惡意設備,則安全設備20可以積極地管理來自計算設備10的所有網絡流量。如果所接收的分類信息指示計算設備10不是惡意設備,則安全設備20可以允許網絡流量在計算設備10與應用伺服器22之間自由地交換。
[0074]在一些不例中,一種設備包括一個或多個處理器;一個或多個網絡接口卡,用以從遠程設備接收定向至由該設備所保護的一個或多個計算設備的網絡流量,基於該網絡流量的內容來確定用於該設備的第一集合的數據點,該第一集合的數據點包括在該遠程設備處執行的軟體應用的特性,向該遠程設備發送響應以查明用於該遠程設備的第二集合的數據點,該第二集合的數據點包括由該遠程設備所提供的並且在該遠程設備本地的操作環境的特性,並且從該遠程設備接收該第二集合的數據點的至少一部分;以及安全模塊,由該一個或多個處理器可操作為,基於該第二集合的數據點的該所接收的部分和該第一集合的數據點來確定惡意評級,並且基於該惡意評級來選擇性地管理定向至由該安全設備所保護的該一個或多個計算設備的並且從該遠程設備所接收的其他網絡流量。
[0075]在該設備的一些示例中,指紋模塊包括代碼注入模塊,該代碼注入模塊由該一個或多個處理器可操作為,在發送該響應之前,向從該一個或多個計算設備中的至少一個計算設備所接收的該響應中注入代碼,以查明該第二集合的數據點,其中響應於該網絡流量從該一個或多個計算設備中的至少一個計算設備接收該響應。
[0076]在一些示例中,該設備還包括:簡檔生成模塊,由該一個或多個處理器可操作為,基於該第二集合的數據點的該所接收的部分和該第一集合的數據點,來生成用於該遠程設備的簡檔;以及數據收集模塊,由該一個或多個處理器可操作為,向安全服務發送該遠程設備的該簡檔,並且從該安全服務接收該遠程設備是否是惡意設備的指示,其中該安全模塊由該一個或多個處理器可操作為,基於該指示來選擇性地管理定向至由該安全設備所保護的該一個或多個計算設備的並且從該遠程設備所接收的其他網絡流量。
[0077]在該設備的一些不例中,該安全模塊由該一個或多個處理器可操作為,基於該第二集合的數據點的該所接收的部分來識別一個或多個插件,確定該第二集合的數據點的該所接收的部分和該第一集合的數據點是否包括不一致的信息,響應於確定該第二集合的數據點的該所接收的部分和該第一集合的數據點包括不一致的信息,基於該一個或多個插件和該不一致的信息,來生成指示該遠程設備是惡意的增加的可能性的惡意評級,並且響應於確定該第二集合的數據點的該所接收的部分和該第一集合的數據點包括一致的信息,基於該一個或多個插件和該一致的信息,來生成指示該遠程設備是惡意的減少的可能性的惡意評級。
[0078]在該設備的一些不例中,該安全模塊由該一個或多個處理器可操作為,基於該第二集合的數據點的該所接收的部分,來確定安裝在該遠程設備處的至少一個插件是否是惡意插件,響應於確定至少一個插件是惡意插件,調整惡意評級以對應於該遠程設備是惡意的增加的可能性,並且響應於確定至少一個插件不是惡意插件,調整惡意評級以對應於該遠程設備是惡意的減少的可能性。
[0079]在該設備的一些不例中,該安全模塊由該一個或多個處理器可操作為,響應於基於該第二集合的數據點的該所接收的部分而確定白名單中的插件被安裝在該遠程設備處,調整惡意評級以對應於該遠程設備是惡意的減少的可能性。
[0080]在該設備的一些不例中,該安全模塊由該一個或多個處理器可操作為,基於該第二集合的數據點的該所接收的部分和該第一集合的數據點,來確定該遠程設備正在執行web爬蟲軟體應用,並且基於該確定來調整惡意評級以對應於該遠程設備是惡意的減少的可能性。
[0081]在該設備的一些不例中,該安全模塊由該一個或多個處理器可操作為,響應於確定該遠程設備的惡意評級不滿足閾值,準許來自該遠程設備的其他網絡流量到達由該安全設備所保護的該一個或多個計算設備,並且響應於確定該遠程設備的惡意評級滿足該閾值,防止該其他網絡流量到達由該安全設備所保護的該一個或多個計算設備。
[0082]本公開內容中所描述的技術可以至少部分地實施在硬體、軟體、固件、或者它們的任意組合中。例如,所描述的技術的各種方面可以實施在一個或多個處理器內,包括一個或多個微處理器、數位訊號處理器(DSP)、專用集成電路(ASIC)、現場可編程門陣列(FPGA)、或者任何其他等效的集成或分立邏輯電路、以及這些組件的任意組合。術語「處理器」或「處理電路」可以一般性地指代單獨的或與其他邏輯電路相結合的、前述邏輯電路中的任何一種邏輯電路,或者任何其他的等效電路。包括硬體的控制單元也可以執行本公開內容的技術中的一種或多種技術。
[0083]這種硬體、軟體、以及固件可以實施在同一設備內或者分離的設備內,以支持本公開內容中所描述的各種操作和功能。另外,所描述的單元、模塊、或組件中的任何單元、模塊、或組件可以一起實施或者分離地實施為分立但是可互操作的邏輯設備。將不同的特徵描繪為模塊或單元意圖為突出不同的功能方面,並且不必然暗示這些模塊或單元必須由分離的硬體或軟體組件來實現。更確切地說,與一個或多個模塊或單元相關聯的功能可以由分離的硬體或軟體組件來執行,或者集成在公共或分離的硬體或軟體組件內。
[0084]本公開內容中所描述的技術還可以被具體化或者編碼在計算機可讀介質中,諸如包含指令的計算機可讀存儲介質。被嵌入或編碼在計算機可讀介質中的指令,例如當這些指令被執行時,可以促使可編程處理器或者其他處理器執行該方法。計算機可讀存儲介質可以包括:隨機訪問存儲器(RAM)、只讀存儲器(ROM)、可編程只讀存儲器(PROM)、可擦除可編程只讀存儲器(EPROM)、電可擦除可編程只讀存儲器(EEPROM)、快閃記憶體、硬碟、CD-ROM、軟盤、磁帶、磁介質、光學介質、或者其他計算機可讀存儲介質。應當理解,術語「計算機可讀存儲介質」指代物理存儲介質(例如,非瞬態介質),而不是信號、載波、或者其他瞬變介質。
[0085]已經描述了各種實施例。這些和其他實施例在下列權利要求的範圍內。
【權利要求】
1.一種方法,包括: 由安全設備接收從設備定向至由所述安全設備所保護的一個或多個計算設備的網絡流量; 基於所述網絡流量的內容,來確定用於所述設備的第一集合的數據點,所述第一集合的數據點包括在所述設備處執行的軟體應用的特性; 由所述安全設備向所述設備發送響應以查明用於所述設備的第二集合的數據點,所述第二集合的數據點包括由所述設備所提供的並且在所述設備本地的操作環境的特性;由所述安全設備並且從所述設備接收所述第二集合的數據點的至少一部分; 基於所述第二集合的數據點的所接收的部分以及所述第一集合的數據點,來確定惡意評級;以及 基於所述惡意評級,來選擇性地管理定向至由所述安全設備所保護的所述一個或多個計算設備的並且從所述設備所接收的其他網絡流量。
2.根據權利要求1所述的方法,其中從所述一個或多個計算設備中的至少一個計算設備接收所述響應,所述方法進一步包括: 在發送所述響應之前,向所述響應中注入用於查明所述第二集合的數據點的代碼,其中響應於所述網絡流量而從所述一個或多個計算設備中的至少一個計算設備接收所述響應。
3.根據權利要求1-2中任一項所述的方法,其中確定所述惡意評級包括: 由所述安全設備通過至少將所述設備的所述第一集合的數據點中的至少一個數據點與所述第二集合的數據點的所接收的部分中的至少一個數據點相比較,來生成所述惡意評級。
4.根據權利要求1-3中任一項所述的方法,其中確定所述惡意評級包括: 基於所述第二集合的數據點的所接收的部分和所述第一集合的數據點,來生成用於所述設備的簡檔; 向安全服務發送所述設備的所述簡檔; 從所述安全服務接收所述設備是否是惡意設備的指示;以及 基於所述指示,來選擇性地管理定向至由所述安全設備所保護的所述一個或多個計算設備的並且從所述設備所接收的所述其他網絡流量。
5.根據權利要求1-4中任一項所述的方法,其中確定所述惡意評級包括: 基於所述第二集合的數據點的所接收的部分,來識別一個或多個插件; 確定所述第二集合的數據點的所接收的部分和所述第一集合的數據點是否包括不一致的信息; 響應於確定所述第二集合的數據點的所接收的部分和所述第一集合的數據點包括不一致的信息,基於所述一個或多個插件和所述不一致的信息,來生成指示所述設備是惡意的增加的可能性的所述惡意評級;以及 響應於確定所述第二集合的數據點的所接收的部分和所述第一集合的數據點包括一致的信息,基於所述一個或多個插件和所述一致的信息,來生成指示所述設備是惡意的減少的可能性的所述惡意評級。
6.根據權利要求1-5中任一項所述的方法,其中確定所述惡意評級包括: 基於所述第二集合的數據點的所接收的部分,來確定安裝在所述設備處的至少一個插件是否是惡意插件; 響應於確定至少一個插件是惡意插件,調整所述惡意評級以對應於所述設備是惡意的增加的可能性;以及 響應於確定至少一個插件不是惡意插件,調整所述惡意評級以對應於所述設備是惡意的減少的可能性。
7.根據權利要求1-6中任一項所述的方法,其中確定所述惡意評級包括: 響應於基於所述第二集合的數據點的所接收的部分而確定白名單中的插件被安裝在所述設備處,調整所述惡意評級以對應於所述設備是惡意的減少的可能性。
8.根據權利要求1-7中任一項所述的方法,其中確定所述惡意評級包括: 基於所述第二集合的數據點的所接收的部分和所述第一集合的數據點,來確定所述設備正在執行web爬蟲軟體應用;以及 基於所述確定來調整所述惡意評級以對應於所述設備是惡意的減少的可能性。
9.根據權利要求1-8中任一項所述的方法,其中基於所述確定,來選擇性地管理定向至由所述安全設備所保護的所述一個或多個計算設備的並且從所述設備所接收的所述其他網絡流量包括: 響應於確定所述設備的所述惡意評級不滿足閾值,準許來自所述設備的所述其他網絡流量到達由所述安全設備所保護的所述一個或多個計算設備;以及 響應於確定所述設備的所述惡意評級滿足所述閾值,防止所述其他網絡流量到達由所述安全設備所保護的所述一個或多個計算設備。
10.根據權利要求1-9中任一項所述的方法,其中選擇性地管理所述其他網絡流量包括,響應於確定所述設備的所述惡意評級滿足閾值,通過執行以下各項中的一項或多項來管理所述其他網絡流量:扼流所述其他網絡流量、從所述其他網絡流量移除一個或多個用戶輸入值、丟棄所述其他網絡流量、以及將所述其他網絡流量重定向至不同的設備。
11.根據權利要求1-10中任一項所述的方法,進一步包括: 響應於確定所述設備的所述惡意評級滿足閾值,確定所述設備是惡意設備; 防止所述網絡流量到達由所述安全設備所保護的所述一個或多個計算設備;以及 利用所述安全設備來生成對所述網絡流量的響應,所述響應包括針對所述設備的附加數據點的請求。
12.—種設備,包括: 一個或多個處理器; 一個或多個網絡接口卡,用以:從遠程設備接收定向至由所述設備所保護的一個或多個計算設備的網絡流量;基於所述網絡流量的內容來確定用於所述設備的第一集合的數據點,所述第一集合的數據點包括在所述遠程設備處執行的軟體應用的特性;向所述遠程設備發送響應以查明用於所述遠程設備的第二集合的數據點,所述第二集合的數據點包括由所述遠程設備所提供的並且在所述遠程設備本地的操作環境的特性;並且從所述遠程設備接收所述第二集合的數據點的至少一部分;以及 安全模塊,由所述一個或多個處理器可操作為,基於所述第二集合的數據點的所接收的部分和所述第一集合的數據點來確定惡意評級,並且基於所述惡意評級來選擇性地管理定向至由所述安全設備所保護的所述一個或多個計算設備的並且從所述遠程設備所接收的其他網絡流量。
13.根據權利要求12所述的設備,進一步包括用於執行由權利要求1-11中任一項所記載的所述方法的裝置。
【文檔編號】H04L29/06GK104426906SQ201410393021
【公開日】2015年3月18日 申請日期:2014年8月11日 優先權日:2013年8月30日
【發明者】O·伊巴圖林, K·亞當斯, D·奎因蘭 申請人:瞻博網絡公司