本發(fā)明涉及應用程序測試領域,尤其涉及一種安全漏洞檢測的方法以及裝置。
背景技術:
隨著移動互聯(lián)網與智能手機的普及,移動客戶端應用安全正變得越來越重要,蘋果研發(fā)操作系統(tǒng)(英文全稱:iphoneoperationsystem,英文縮寫:ios)目前將近占據了國內智能手機操作系統(tǒng)的30%的份額,一般而言,ios應用的安全性高于安卓應用,但是很多ios用戶會使用越獄工具來獲取手機的最高權限,這將導致一系列安全問題。
目前業(yè)界研究ios應用漏洞審計的工具主要由開放安全(英文全稱:opensecurity)公司開發(fā)的開源應用程序(英文全稱:application,英文縮寫:app)安全審計框架(英文全稱:mobilesecurityframework,英文縮寫:mobsf),這個框架提供了ios在線上傳和審計的功能,輸出的報告內容包含了ios應用信息,應用代碼分析,應用文件分析內容等,可直接點擊報告中的文件列表來查看蘋果程序應用文件(英文全稱:iphoneapplication,英文縮寫:ipa)包的文件內容。
然而通過現有的安全審計框架無法檢測到ios應用運行中生成的數據文件安全性,而在實際應用中,ios應用會在運行過程中生成不安全的數據文件,這些不安全的數據文件將構成對用戶信息安全的威脅。
技術實現要素:
本發(fā)明實施例提供了一種安全漏洞檢測的方法以及裝置,可以在應用程序運行的過程中對生成的數據文件進行漏洞檢測,從而極大地減小了不安全的數據文件對用戶信息安全所構成的威脅,提升了方案的安全性和實用性。
有鑒于此,本發(fā)明第一方面提供一種安全漏洞檢測的方法,包括:
服務器確定待檢測應用程序;
所述服務器將所述待檢測應用程序安裝至與所述服務器相連的檢測終端,使得所述檢測終端運行所述待檢測應用程序;
所述服務器獲取所述待檢測應用程序在運行過程中產生的數據文件;
所述服務器從所述應用程序的數據文件中提取目標關鍵信息;
所述服務器判斷所述目標關鍵信息是否滿足預置的漏洞確認條件,若是,則所述服務器確定所述待檢測應用程序存在安全漏洞。
第二方面,本方面實施例還提供一種服務器,包括:
確定模塊,用于確定待檢測應用程序;
安裝模塊,用于將所述確定模塊確定的所述待檢測應用程序安裝至與所述服務器相連的檢測終端,使得所述檢測終端運行所述待檢測應用程序;
獲取模塊,用于所述安裝模塊將所述待檢測應用程序安裝至與所述服務器相連的檢測終端之后,獲取所述待檢測應用程序在運行過程中產生的數據文件;
提取模塊,用于從所述獲取模塊獲取的所述應用程序的數據文件中提取目標關鍵信息;
判斷模塊,用于判斷所述提取模塊提取的所述目標關鍵信息是否滿足預置的漏洞確認條件,若是,則所述服務器確定所述待檢測應用程序存在安全漏洞。
第三方面,本方面實施例還提供一種服務器,包括:輸入裝置、輸出裝置、存儲器和處理器;
所述處理器用于執(zhí)行所述存儲器中的程序,具體如下步驟:
確定待檢測應用程序;
將所述待檢測應用程序安裝至與所述服務器相連的檢測終端,使得所述檢測終端運行所述待檢測應用程序;
控制所述輸入模塊獲取所述待檢測應用程序在運行過程中產生的數據文件;
從所述應用程序的數據文件中提取目標關鍵信息;
判斷所述目標關鍵信息是否滿足預置的漏洞確認條件,若是,則所述服務器確定所述待檢測應用程序存在安全漏洞。
從以上技術方案可以看出,本發(fā)明實施例具有以下優(yōu)點:
本發(fā)明實施例中,提供了一種安全漏洞檢測的方法,該方法主要應用于ios中,服務器確定待檢測應用程序,再將待檢測應用程序安裝至與服務器相連的檢測終端,使得檢測終端運行待檢測應用程序,然后獲取待檢測應用程序在運行過程中產生的數據文件,接著從應用程序的數據文件中提取目標關鍵信息,最后判斷目標關鍵信息是否滿足預置的漏洞確認條件,若是,則服務器確定待檢測應用程序存在安全漏洞。通過上述方法進行安全漏洞的檢測,可以在應用程序運行的過程中對生成的數據文件進行漏洞檢測,從而極大地減小了不安全的數據文件對用戶信息安全所構成的威脅,提升了方案的安全性和實用性。
附圖說明
圖1為本發(fā)明實施例中安全漏洞檢測的方法一個實施例示意圖;
圖2為本發(fā)明實施例中安全漏洞檢測的審計架構示意圖;
圖3為本發(fā)明實施例中數據文件安全檢測的流程示意圖;
圖4為本發(fā)明實施例中網絡傳輸安全檢測的流程示意圖;
圖5為本發(fā)明實施例中安全漏洞檢測的方法另一個實施例示意圖;
圖6為本發(fā)明實施例中靜態(tài)安全檢測的流程示意圖;
圖7為本發(fā)明實施例中自定義安全漏洞檢測方法的流程示意圖;
圖8為本發(fā)明實施例中安全漏洞檢測的整體審計架構示意圖;
圖9a為本發(fā)明應用場景中應用程序審計報告的代碼分析示意圖;
圖9b為本發(fā)明應用場景中應用程序審計報告的數據安全分析示意圖;
圖9c為本發(fā)明應用場景中應用程序審計報告的網絡安全分析示意圖;
圖9d為本發(fā)明應用場景中應用程序審計報告的開放端口分析示意圖;
圖9e為本發(fā)明應用場景中應用程序審計報告的其他內容分析示意圖;
圖9f為本發(fā)明應用場景中應用程序審計報告的自定義分析示意圖;
圖10為本發(fā)明實施例中服務器一個實施例示意圖;
圖11為本發(fā)明實施例中服務器另一個實施例示意圖;
圖12為本發(fā)明實施例中服務器另一個實施例示意圖;
圖13為本發(fā)明實施例中服務器另一個實施例示意圖;
圖14為本發(fā)明實施例中服務器另一個實施例示意圖;
圖15為本發(fā)明實施例中服務器另一個實施例示意圖;
圖16為本發(fā)明實施例中服務器的一個結構示意圖。
具體實施方式
本發(fā)明實施例提供了一種安全漏洞檢測的方法以及裝置,用于在應用程序運行的過程中對生成的數據文件進行漏洞檢測,從而極大地減小了不安全的數據文件對用戶信息安全所構成的威脅,提升了方案的安全性和實用性。
本發(fā)明的說明書和權利要求書及上述附圖中的術語“第一”、“第二”、“第三”、“第四”等(如果存在)是用于區(qū)別類似的對象,而不必用于描述特定的順序或先后次序。應該理解這樣使用的數據在適當情況下可以互換,以便這里描述的本發(fā)明的實施例例如能夠以除了在這里圖示或描述的那些以外的順序實施。此外,術語“包括”和“具有”以及他們的任何變形,意圖在于覆蓋不排他的包含,例如,包含了一系列步驟或單元的過程、方法、系統(tǒng)、產品或設備不必限于清楚地列出的那些步驟或單元,而是可包括沒有清楚地列出的或對于這些過程、方法、產品或設備固有的其它步驟或單元。
應理解,本發(fā)明實施例可以應用于ios,ios是由蘋果公司開發(fā)的操作系統(tǒng),它主要是給蘋果手機(英文全稱:iphone)、蘋果多媒體播放設備(英文全稱:ipodtouch)以及蘋果平板電腦(英文全稱:ipad)使用。ios的系統(tǒng)架構分為四個層次:核心操作系統(tǒng)層、核心服務層、媒體層和可輕觸層。ios是安全性非常高的系統(tǒng),從打開設備的那一刻起,ios就能提供內置的安全性。ios專門設計了低層級的硬件和固件功能,用以防止惡意軟件和病毒,同時還設計有高層級的源代碼開放(英文全稱:opensource,英文縮寫:os)功能,有助于在訪問個人信息和企業(yè)數據時確保安全性。為了保護用戶的隱私,從日歷、通訊錄、提醒事項和照片獲取位置信息的應用程序(英文全稱:application,英文縮寫:app)必須先獲得用戶的許可。用戶還可以設置密碼鎖,以防止有人未經授權訪問設備,并進行相關配置,允許設備在多次嘗試輸入密碼失敗后刪除所有數據。該密碼還會為存儲的郵件自動加密和提供保 護,并能允許第三方app為其存儲的數據加密。ios支持加密網絡通信,它可供app用于保護傳輸過程中的敏感信息。
然而,雖然ios具有如此多的安全性功能,但是許多用戶依舊會通過使用“越獄”工具來獲取設備的最高權限,“越獄”就是破解系統(tǒng),破解之后就能免費安裝蘋果軟件商店里的收費app,還能安裝在蘋果軟件商店里被禁止的一些涉及到系統(tǒng)底層的app。
在這樣的一個環(huán)境下,對于用戶在“越獄”后的設備上安裝app時,就需要有安全漏洞的檢測方式,以保證用戶信息的安全。
請參閱圖1,本發(fā)明實施例中安全漏洞檢測的方法一個實施例包括:
101、服務器確定待檢測應用程序;
本實施例中,用戶可以通過終端設備向服務器發(fā)起應用程序的檢測指令,服務器能夠根據檢測指令,確定待檢測的應用程序。
如果是在ios的環(huán)境下檢測應用程序,那么這類應用程序是蘋果應用程序文件(英文全稱:iphoneapplication,英文縮寫:ipa),ipa可安裝于使用ios的設備中。而檢測應用程序的目的是為了檢測安全漏洞,并測試在硬件、軟件和協(xié)議的具體實現,或系統(tǒng)安全策略上是否存在的缺陷,從而防止攻擊者在未授權的情況下訪問或破壞系統(tǒng)。安全漏洞是受限制的計算機、組件、應用程序或其他聯(lián)機資源的無意中留下的不受保護的入口點。
102、服務器將待檢測應用程序安裝至與服務器相連的檢測終端,使得檢測終端運行待檢測應用程序;
本實施例中,服務器確定了待檢測的應用程序后,將該待檢測應用程序安裝至與該服務器相連的檢測終端,檢測終端會運行待檢測應用程序,
如果是在ios的環(huán)境下檢測應用程序,那么檢測終端就可以是一臺經過越獄后的ios設備,例如越獄后的iphone或者ipad,因為越獄后的蘋果設備能夠獲取蘋果公司ios的最高權限,用戶使用越獄這種技術及軟件可以獲取到ios的最高權限。
103、服務器獲取待檢測應用程序在運行過程中產生的數據文件;
本實施例中,服務器可以獲取待檢測應用程序在運行過程中產生的數據文件,從而實現動態(tài)安全漏洞檢測過程的自動化。其中,數據文件通常是為 應用程序的配置文件或者是數據存儲文件。
104、服務器從應用程序的數據文件中提取目標關鍵信息;
本實施例中,服務器獲取了待檢測應用程序在運行過程中生成的數據文件后,再從應用程序的數據文件中提取目標關鍵信息,目標關鍵信息是用于確定應用程序是否有安全漏洞的一個重要信息。
105、服務器判斷目標關鍵信息是否滿足預置的漏洞確認條件,若是,則服務器確定待檢測應用程序存在安全漏洞。
本實施例中,服務器進而判斷目標關鍵信息是否滿足預置的漏洞確認條件,如果目標關鍵信息滿足預置的漏洞確認條件,那么服務器就確定待檢測應用程序確實存在安全漏洞。
為了便于更好地理解如何實現動態(tài)安全漏洞檢測,還可以參考一種具體的安全漏洞檢測的審計架構,請參閱圖2,圖2為本發(fā)明實施例中安全漏洞檢測的審計架構示意圖,系統(tǒng)專門編寫了一個提供基礎功能支持的自動化審計接口,包括了基于移動設備第三方庫(英文全稱:libimobiledevice)實現的app安裝與卸載,以及應用截屏功能的實現,其中,libimobiledevice庫主要用于第三方訪問ios設備的接口封裝。還有使用安全外殼協(xié)議(英文全稱:secureshell,英文縮寫:ssh)進行連接,以實現文件的上傳和下載,執(zhí)行ios系統(tǒng)命令等功能。此外,自動化審計接口還封裝了一些常用接口,例如有應用日志(英文全稱:log)的獲取,動態(tài)生成文件的拉取,和類轉儲(英文全稱:classdump)等功能,由此便于檢測時調用。
本發(fā)明實施例中,提供了一種安全漏洞檢測的方法,該方法主要應用于ios中,服務器確定待檢測應用程序,再將待檢測應用程序安裝至與服務器相連的檢測終端,使得檢測終端運行待檢測應用程序,然后獲取待檢測應用程序在運行過程中產生的數據文件,接著從應用程序的數據文件中提取目標關鍵信息,最后判斷目標關鍵信息是否滿足預置的漏洞確認條件,若是,則服務器確定待檢測應用程序存在安全漏洞。通過上述方法進行安全漏洞的檢測,可以在應用程序運行的過程中對生成的數據文件進行漏洞檢測,從而極大地減小了不安全的數據文件對用戶信息安全所構成的威脅,提升了方案的安全性和實用性。
為了便于介紹,下面將針對目標關鍵信息中所攜帶的不同信息分別進行描述,下面將從服務器的角度對本發(fā)明實施例中安全漏洞檢測的方法進行描述:
一、目標關鍵信息包括目標關鍵字;
可選地,在上述圖1對應的實施例的基礎上,本發(fā)明實施例提供的安全漏洞檢測的方法第一個可選實施例中,目標關鍵信息包括目標關鍵字;
服務器判斷目標關鍵信息是否滿足預置的漏洞確認條件,可以包括:
服務器將目標關鍵字與預存儲的關鍵字進行比對;
若目標關鍵字與預存儲的關鍵字一致,則服務器確定目標關鍵信息滿足漏洞確認條件。
本實施例中,將介紹一種數據文件安全檢測的方法,通過該方法可以分析與處理用于應用程序中的數據文件,檢測明文傳輸或者存儲敏感數據的漏洞,以及數據文件未保護缺點。服務器采用關鍵字檢測方法對數據文件中存儲的明文敏感信息進行檢測,具體可以是通過文本搜索命令(英文全稱:grep)對數據文件進行遍歷查找是否存在指定的關鍵字。
具體為,服務器在遍歷應用程序中的所有數據文件,當得到一個目標關鍵字“age.”時,則與預存儲在服務器后臺的關鍵字進行比對,且當比對得到服務器后臺的關鍵字中也正有“age.”時,則服務器確定目標關鍵信息是敏感信息,并滿足漏洞確認條件。
需要說明的是,應用程序中的數據文件可以是指采用以下后綴的文件:例如.plist,或者.db,或者.xml,或者.txt,或者.sqlite3,也可以是應用程序的配置文件,或者是數據存儲文件,故此處不對數據文件的具體內容進行限定。
其次,本發(fā)明實施例中,將目標關鍵信息設定為是目標關鍵字,于是本方案的一種具體實現方式可是為,服務器將目標關鍵字與預存儲的關鍵字進行比對,若目標關鍵字與預存儲的關鍵字一致,則確定目標關鍵信息滿足漏洞確認條件,從而找出應用程序的安全漏洞。通過上述方法對應用程序的數據文件中存儲的明文敏感信息進行檢測,不但可以清楚地通過明文信息確實是否存在安全漏洞,還可以通過簡單的比對方式來實現,使得方案更加的容易操作,提升方案的實用性和可行性。
二、目標關鍵信息包括文件保護級別;
可選地,在上述圖1對應的實施例的基礎上,本發(fā)明實施例提供的安全漏洞檢測的方法第二個可選實施例中,目標關鍵信息包括文件保護級別;
服務器判斷目標關鍵信息是否滿足預置的漏洞確認條件,可以包括:
服務器判斷文件保護級別是否低于預置級別;
若文件保護級別低于預置級別,則服務器確定目標關鍵信息滿足漏洞確認條件。
本實施例中,將介紹另一種數據文件安全檢測的方法,當目標關鍵信息為數據文件的文件保護級別時,服務器首先獲取各個數據文件對應的文件保護級別,再判斷文件保護級別是否低于預置級別,如果低于了預置級別,那么服務器就可以確定目標關鍵信息滿足漏洞確認條件,換言之,即確定當前的應用程序可能存在安全漏洞。
具體為,可以使用保護類查看器(英文全稱:protectionclassviewer)對數據文件的文件保護級別進行檢測,當文件保護級別為無保護網絡仿真文件(英文全稱:networksimulatorfileprotectionnone,英文縮寫:nsfileprotectionnone)時,則表示文件未使用安全的應用程序編程接口(英文全稱:applicationprogramminginterface,英文縮寫:api)進行保護,在越獄的情況下,數據文件隨時可以被訪問,存在著信息泄露的風險。當文件保護級別為完成保護網絡仿真文件(英文全稱:networksimulatorfileprotectioncomplete,英文縮寫:nsfileprotectioncomplete)或更高的級別時,則數據文件受到保護,無法被訪問。
為了便于理解,請參閱圖3,圖3為本發(fā)明實施例中數據文件安全檢測的流程示意圖,如圖所示,首先用戶操作ios的應用程序,此時可以進入數據文件的動態(tài)檢測,在服務器器中的數據審計模塊將下載該ipa的所有文件到本地,并過濾提取數據文件的列表,也就是說從所有的文件中找到應用程序的配置文件,或者是數據存儲文件等,制成列表的格式進行檢測。服務器將針對每個數據文件的文件保護級別做檢測,具體為判斷文件保護級別是否為nsfileprotectionnone,若是,則可能存在安全漏洞,可以對nsfileprotectionnone的數據文件做記錄。服務器也可以讀取數據文件里所包含的內容,具體 為檢測數據文件中是否存在了綁定特征,該綁定特征可以是目標關鍵字,若存在,則可能存在安全漏洞,可以對存在綁定特征的數據文件做記錄,最后根據所有安全漏洞記錄過的內容,輸出對應的數據文件安全檢測結果。
其次,本發(fā)明實施例中,將目標關鍵信息設定為是文件保護級別,于是本方案的另一種具體實現方式可是為,服務器判斷文件保護級別是否低于預置級別,若文件保護級別低于預置級別,則確定目標關鍵信息滿足漏洞確認條件。通過上述方法先獲取應用程序中數據文件的文件保護級別,如果文件保護級別沒有達到預置級別,就可以對該數據文件進行修改,相反地,達到預置級別的數據文件就不能被輕易更改,從而更具有安全性,使得安全漏洞的檢測條件有了另一種實現方式,以此提升方案的實用性和靈活性。
三、目標關鍵信息包括用戶隱私數據;
可選地,在上述圖1對應的實施例的基礎上,本發(fā)明實施例提供的安全漏洞檢測的方法第三個可選實施例中,目標關鍵信息包括用戶隱私數據;
服務器判斷目標關鍵信息是否滿足預置的漏洞確認條件,可以包括:
服務器判斷用戶隱私數據與預置數據庫中隱私數據是否匹配;
若用戶隱私數據與預置數據庫中隱私數據不匹配,則服務器確定目標關鍵信息滿足漏洞確認條件。
本實施例中,將介紹一種網絡傳輸安全檢測的方法,網絡傳安全檢測主要用于分析和處理應用程序在運行過程中生成的網絡請求,可以檢測明文傳輸敏感信息。當目標關鍵信息為用戶隱私數據,服務器判斷用戶隱私數據與預置數據庫中隱私數據是否匹配,若用戶隱私數據與預置數據庫中隱私數據不匹配,則服務器確定目標關鍵信息滿足漏洞確認條件。
具體為,服務器獲取應用程序發(fā)起的所有網絡請求,網絡請求中就包含了用戶的用戶隱私數據,例如用戶名、密碼、手機號碼或郵箱地址等隱私數據,這些隱私數據可以通過超文本傳送協(xié)議(英文全稱:hypertexttransferprotocol,英文縮寫:http)進行明文傳輸。假設服務器從網絡請求中獲取到了用戶名“peter123”,則需要判斷該用戶名是否與預置數據庫中的隱私數據匹配,如果預置數據庫中的用戶名也有“peter123”,可以認為匹配成功,否則服務器確定用戶隱私數據滿足漏洞確認條件,且該應用程序可能存在安全 漏洞。
為了便于理解,請參閱圖4,圖4為本發(fā)明實施例中網絡傳輸安全檢測的流程示意圖,如圖所示,首先用戶操作ios的應用程序,此時可以進入網絡傳輸的動態(tài)檢測,服務器通過鉤子函數獲取應用程序的網絡請求,網絡請求可以是發(fā)送郵件或者好友申請等請求,根據網絡請求將網絡請求對應的代碼輸出至系統(tǒng)日志,服務器通過解析系統(tǒng)日志中的網絡請求來匹配該網絡請求中的特征,并輸出相應的網絡傳輸安全檢測結果。
其次,本發(fā)明實施例中,將目標關鍵信息設定為用戶隱私數據,于是本方案的另一種具體實現方式可是為,服務器判斷用戶隱私數據與預置數據庫中隱私數據是否匹配,若用戶隱私數據與預置數據庫中隱私數據不匹配,則確定目標關鍵信息滿足漏洞確認條件。通過上述方法可以在網絡傳輸的過程中避免用戶的隱私數據遭到惡意截獲,同時可以使得用戶及時發(fā)現上述情況,并給予相應的處理,從而提升了方案的安全性,以及更好地保護了用戶的隱私數據,增強用戶體驗。
可選地,在上述圖1對應的第三個實施例的基礎上,本發(fā)明實施例提供的安全漏洞檢測的方法第四個可選實施例中,服務器判斷用戶隱私數據與預置數據庫中隱私數據是否匹配之前,還可以包括:
服務器通過鉤子函數hook獲取待檢測應用程序在運行過程中產生的網絡請求;
服務器從應用程序的網絡請求中提取用戶隱私數據。
本實施例中,服務器可以通過鉤子函數(英文全稱:hookfunction,英文縮寫:hook)獲取應用程序發(fā)送的所有網絡請求,然后在系統(tǒng)日志里打印出來,利用腳本去讀取系統(tǒng)日志提取應用程序的網絡請求中的用戶隱私數據,最后進行數據的特征匹配,當匹配到有例如“username”、“password”或“email”等用戶隱私數據時,則輸出存在風險的安全提示。
具體地,可以通過一個簡單的應用程序登錄請求在系統(tǒng)日志中的示例來理解本實施例中,請參閱如下程序段:
以上應用程序在登錄過程明文傳輸了用戶名和密碼,當用戶處于不安全的網絡環(huán)境中,就容易受到中間人的攻擊,從而導致敏感信息泄露,因此,需要通過比對這些敏感信息來確定應用程序是否處于一個安全的運行環(huán)境。
再次,本發(fā)明實施例中,服務器在判斷用戶隱私數據與預置數據庫中隱私數據是否匹配之前,還可以通過hook獲取待檢測應用程序在運行過程中產生的網絡請求,再從應用程序的網絡請求中提取用戶隱私數據。以此說明了一種具體的解決方式,從而提升了方案的實用性。
請參閱圖5,本發(fā)明實施例中安全漏洞檢測的方法另一個實施例包括:
201、服務器確定待檢測應用程序;
本實施例中,服務器根據應用程序被觸發(fā)時生成的指令,確定待檢測的應用程序。
202、服務器將待檢測應用程序安裝至與服務器相連的檢測終端,使得檢測終端運行待檢測應用程序;
本實施例中,服務器確定了待檢測的應用程序后,將該待檢測應用程序安裝至與該服務器相連的檢測終端,檢測終端會運行待檢測應用程序,
203、服務器獲取待檢測應用程序在運行過程中產生的數據文件;
本實施例中,服務器獲取待檢測應用程序在運行過程中生成的數據文件,其過程與上述圖1對應的實施例中步驟103類似,故此處不作贅述。
204、服務器從應用程序的數據文件中提取目標關鍵信息;
本實施例中,服務器獲取了待檢測應用程序在運行過程中生成的數據文件后,再從應用程序的數據文件中提取目標關鍵信息,其中,目標關鍵信息可以是目標關鍵字、文件保護級別和用戶隱私數據中的至少一項。
205、服務器根據第一預置檢測內容服務器判斷目標關鍵信息是否滿足預置的漏洞確認條件,其中,第一預置檢測內容為自定義配置的應用程序的漏洞確認規(guī)則。
本實施例中,服務器預先存儲了至少一種預置檢測內容,預置檢測內容用于告知服務器在檢測安全漏洞時應遵循的規(guī)則,例如,只進行數據文件的安全漏洞檢測,或者只進行網絡傳輸的安全漏洞檢測,或者兩者都進行,當然,在實際應用中,除了這兩種動態(tài)檢測安全漏洞的方式以外,還可以通過設置其他的預置檢測內容來豐富其檢測內容,此處不作限定。
當服務器選擇了第一預置檢測內容作為檢測安全漏洞的規(guī)則時,則服務器根據第一預置檢測內容服務器判斷目標關鍵信息是否滿足預置的漏洞確認條件,第一預置檢測內容即為自定義配置的應用程序的動態(tài)漏洞確認規(guī)則,如果目標關鍵信息滿足預置的漏洞確認條件,那么服務器就確定待檢測應用程序確實存在安全漏洞。
再次,本發(fā)明實施例中,服務器可以根據第一預置檢測內容服務器判斷目標關鍵信息是否滿足預置的漏洞確認條件,其中,第一預置檢測內容是用戶自定義配置的應用程序漏洞確認規(guī)則,由此,用戶不但可以根據實際情況修改應用程序漏洞確認的規(guī)則,以提升方案的實際運行效率,還可以根據需要增添或者刪除一些漏洞確認的規(guī)則,對某些安全性較低的應用程序可以增添更多的檢測規(guī)則,而對某些安全性較高的應用程序可以刪除一些功能性不強的檢測規(guī)則,從而增加方案的實用性和靈活性。
可選地,在上述圖1以及圖1對應的第一至第四個中任一項實施例的基礎上,本發(fā)明實施例提供的安全漏洞檢測的方法第五個可選實施例中,服務器獲取待檢測應用程序在運行過程中產生的數據文件之前,還可以包括:
服務器獲取待檢測應用程序的二進制文件;
服務器通過預設命令獲取二進制文件的目標文件信息;
服務器判斷目標文件信息是否滿足預置的漏洞確認條件,若是,則服務 器確定待檢測應用程序存在安全漏洞。
本實施例中,服務器獲取待檢測應用程序在運行過程中產生的數據文件,可以理解為是運行過程中進行的動態(tài)檢測,然而在實際應用中,也可以在動態(tài)檢測之前進行靜態(tài)檢測,需要說明的是,靜態(tài)檢測的發(fā)生時間可以是在動態(tài)檢測之前,也可以是在動態(tài)檢測之后,還可以是與動態(tài)檢測同時進行,此處不作限定。
具體地,服務器先獲取待檢測應用程序的二進制文件(英文全稱:binary,英文縮寫:bin),二進制文件的用途依系統(tǒng)或應用而定。其后綴為“.bin”,bin有多種含義,包括虛擬光驅格式.bin,用于科研計算的數據格式為bin格式。另外文件傳輸協(xié)議(英文全稱:filetransferprotocol,英文縮寫:ftp)在傳送文件時也有bin這種格式,其他的通常使用bin格式,例如圖像文件、壓縮文件或者可執(zhí)行文件等。
服務器通過預設命令獲取bin文件的目標文件信息,其中,預設命令可以是otool命令、string命令或xxd命令等,otool命令主要用于otool查看程序依賴哪些動態(tài)庫信息,反編代碼段,string命令主要用于操作字符串,xxd命令主要用于用二進制或十六進制顯示文件的內容,因此服務器可以通過不同的命令獲取bin文件的不同信息,這些信息稱為目標文件信息,包括bin文件的頭部信息、加載命令、段、鏈接信息、字符串以及匯編代碼等信息,最后,服務器再判斷這些目標文件信息是否滿足預置的漏洞確認條件,即根據目標文件信息的特征與預置的文件信息的漏洞特征進行匹配和對比,如果匹配上了,說明待檢測應用程序存在著安全漏洞。
為了便于理解,請參閱圖6,圖6為本發(fā)明實施例中靜態(tài)安全檢測的流程示意圖,如圖所示,首先上傳ipa的文件,此時可以進入安全漏洞的靜態(tài)檢測,服務器解壓縮ipa文件,并通過讀取info.plist文件獲取相應的應用信息。再采用otool命令反編譯bin文件信息,具體操作可以包括檢測加密缺陷,檢測不安全隨機數和檢測不安全編譯。服務器還需對bin文件匯編代碼進行分析,具體操作可以是通過特征與常見漏洞特征進行匹配來檢測。采用string提取bin文件字符串,具體操作可以是通過第三方庫進行檢測,匹配字符串與第三方庫中存儲的字符串是否一致來進行檢測,最后,服務器還可以采用現有 技術對私有api進行檢測,故此處不作贅述。
進一步地,本發(fā)明實施例中,服務器不但進行動態(tài)安全漏洞的檢測,而且還能夠進一步地進行靜態(tài)安全漏洞的檢測。實現方式可以為,服務器獲取待檢測應用程序的二進制文件,并通過預設命令獲取二進制文件的目標文件信息,最后判斷目標文件信息是否滿足預置的漏洞確認條件,若是,則確定待檢測應用程序存在安全漏洞。通過上述具體的實現方式,為本發(fā)明提供了更為安全且全面的檢測方案,有利于提升安全漏洞的可靠性和實用性。
可選地,在上述圖1以及圖1對應的第一至第五個中任一項實施例的基礎上,本發(fā)明實施例提供的安全漏洞檢測的方法第六個可選實施例中,服務器判斷目標文件信息是否滿足預置的漏洞檢測條件,可以包括:
服務器根據第二預置檢測內容判斷目標文件信息是否滿足預置的漏洞確認條件,其中,第二預置檢測內容為自定義配置的應用程序的動態(tài)漏洞確認規(guī)則。
本實施例中,服務器在對待檢測應用程序做靜態(tài)安全漏洞檢測的時候,仍然可以根據預置的規(guī)則來操作,假設確定采用預置檢測規(guī)則中的第二預置檢測內容,則服務器根據第二預置檢測內容判斷目標文件信息是否滿足預置的漏洞確認條件,其中,第二預置檢測內容為自定義配置的應用程序的動態(tài)漏洞確認規(guī)則。
具體地,自定義配置檢測規(guī)則主要用于擴展已有的檢測規(guī)則,可以通過修改一個直譯式腳本語言對象表示法(英文全稱:javascriptobjectnotation,英文縮寫:json)格式的文件,來實現自定義檢測規(guī)則的配置,當系統(tǒng)啟動時,會事先匹配配置文件中的漏洞檢測規(guī)則,
其中,為了便于理解,請參閱下面的示例,通過下面的程序可以實現漏洞檢測規(guī)則的配置,程序如下:
而采用本實施例中的方法配置漏洞檢測規(guī)則的流程可以參考圖7,圖7為本發(fā)明實施例中自定義安全漏洞檢測方法的流程示意圖。首先,需要將審計系統(tǒng)做初始化處理,然后加載json文件,并通過json文件來配置自定義檢測規(guī)則,其中,自定義檢測規(guī)則可以包括bin文件的分析,文本文件的分析,數據庫中文件的分析,網絡請求的分析符合指定端口的檢測,最后服務器將這個五種檢測的結果進行匯總,并輸出相應的檢測報告。
需要說明的是,這五種自定義檢測規(guī)則僅僅為一個示意,在實際應用中還可以合理的增加其他的檢測規(guī)則,或者減少圖中的一部分檢測內容,此處不作限定。
更進一步地,本發(fā)明實施例中,針對靜態(tài)安全漏洞的檢測也可以通過自定義的方式來實現,用戶可以通過擴展已有的檢測規(guī)則來使的服務器完成相應的靜態(tài)安全漏洞檢測內容,也可以配置其他的檢測規(guī)則以完成相應的檢測內容,優(yōu)化其檢測能力,提升方案的實用性和可靠性。隨著漏洞檢測規(guī)則的更新與擴展,我們可以實現對增加新漏洞的發(fā)現能能力,優(yōu)化已有的檢測規(guī)則。
上述各個實施例的基礎上,我們可以得出一個具體的審計框架,該審計框架僅僅為一個示意,并非對本發(fā)明方案的限定,請參閱圖8,圖8為本發(fā)明實施例中安全漏洞檢測的整體審計架構示意圖,本審計架構主要基于python語音和django框架開發(fā),用戶只需要在網站中上傳需要檢測的ipa安裝包,服務器系統(tǒng)就會自動對該ipa進行安全檢測,最終輸出檢測結果,同時用戶可以上傳多個應用程序進行批量檢測,還可以自定義審計的內容,如,只進行靜態(tài)分析或者私有api檢測等,相比完整檢測流程,檢測速度更快。最后所有檢測結果可以直接查看導出,或者批量刪除。采用圖8對應的審計架構, 可以檢測以下三個主要項目,分別是:
(1)bin文件分析,包括有不安全編譯風險的分析;不安全隨機函數的分析;加密算法的分析;xcodeghost病毒加測;ibackdoor后門檢測;youmi惡意軟件開發(fā)包檢測;afnetworking數據庫的安全套接層(英文全稱:securesocketslayer,英文縮寫:ssl)中間人漏洞;第三方庫檢測;私有api檢測;
(2)數據文件安全分析:不安全文件保護級別;文件明文存儲敏感信息;
(3)網絡傳輸安全分析:網絡明文傳輸敏感信息。
為便于理解,下面以一個具體應用場景對本發(fā)明中一種安全漏洞檢測的方法進行詳細描述,具體為:
自2015年以來,隨著ios上常用的第三方網絡訪問庫afnetworking發(fā)生中間人漏洞,手機病毒xcodeghost的出現,以及在任意的傳輸控制協(xié)議(英文全稱:transmissioncontrolprotocol,英文縮寫:tcp)端口開啟后門的ibackdoor安全事件的曝光等,曾經看起來似乎ios應用安全問題也逐漸受到關注。于是我們采用本發(fā)明方案中動態(tài)加靜態(tài)的安全漏洞檢測方案。以迅雷的ios版本審計報告為例進行說明。
在前端界面上顯示了迅雷的基本文件信息,其中,基本文件信息中包括文件名稱,例如為迅雷-5.9(越獄應用).ipa;應用名,例如為迅雷;數據包名,例如com.xunlei.ithunder;應用版本,例如為5.9.1.2268,文件大小,例如為38.53兆,多維標度分析,例如為14b328cfa07a80bd50c1836dfa326d;漏洞數目,例如4個;安全評級,例如危險;檢測時間,例如2016/2/2215:39:49。
上述為前端顯示界面所顯示的內容,那么下面將具體針對迅雷中的各項檢測信息進行分析。
請參閱圖9a,圖9a為本發(fā)明應用場景中應用程序審計報告的代碼分析示意圖,從圖9a中得知,在檢測項目為“不安全隨機函數”中存在風險,且顯示漏洞詳情為,“若程序使用偽隨機數進行加密可能導致被暴力破解,建議使用蘋果的安全隨機函數secrandomcopybytes,經檢測發(fā)現程序使用以下不安全隨機函數,random和srand”。此外,在檢測項目為“afnetworkingssl中間人漏洞”中發(fā)現高危漏洞,具體為,“程序使用低版本第三方庫afnetworking<v2.5.3,存在ssl中間人攻擊的風險,可能導致網絡傳輸的敏 感信息泄露,請盡快升級到2.5.3或其以上的版本”。
請參閱圖9b,圖9b為本發(fā)明應用場景中應用程序審計報告的數據安全分析示意圖,從圖9b中得知,在數據安全審計中存在多個檢測項目,而檢測方式主要是通過判斷每個檢測的文件是否為nsfileprotectionnone的文件等級,如果是,則表示該文件安全,反之,則可能存在風險。檢測項目中的待檢測文件可以是這幾種類型:后綴名為.txt的文件,后綴名為.plist的文件,后綴名為.xml的文件。
請參閱圖9c,圖9c為本發(fā)明應用場景中應用程序審計報告的網絡安全分析示意圖,從圖9c中得知,在網絡安全審計中分別對網絡請求進行檢測,其中,get是指從服務器上獲取數據,post是指向服務器傳輸數據。根據審計報告的內容可知,未通過網絡請求檢測到ssl中間人攻擊漏洞。
請參閱圖9d,圖9d為本發(fā)明應用場景中應用程序審計報告的開放端口分析示意圖,從圖9d中得知,檢測的內容還包括了開放端口的審計,迅雷開啟了多個進程,進程名為ithunder,所有進程均通過tcp進行數據傳輸,其中,tcp連接狀態(tài)顯示為established時,標識打開一個連接,tcp連接狀態(tài)顯示為listen時,標識偵聽來自遠方的tcp端口的連接請求。
請參閱圖9e,圖9e為本發(fā)明應用場景中應用程序審計報告的其他內容分析示意圖,從圖9e中得知,審計報告中的其他內容可以包括app日志審計,即下載app運行日志,查看classdump文件,以及進行私有api檢測。其中,在私有api檢測中發(fā)現了4個疑似私有api的業(yè)務。
請參閱圖9f,圖9f為本發(fā)明應用場景中應用程序審計報告的自定義分析示意圖,從圖9f中得知,為了便于檢測安全漏洞的全面性,用戶還可以自定義審計,自定義審計的檢測項目可以是微信公眾好密鑰泄露,本地存儲密碼漏洞,數據庫明文存儲和明文傳輸密碼的檢測,針對該迅雷軟件,得到其微信公眾號密碼泄露。
至此,整個安全漏洞審計的報告生成,用戶可以通過查看報告來得知應用程序是否存在安全漏洞,以及安全漏洞的具體內容。解決了傳統(tǒng)ios應用漏洞檢測系統(tǒng)無法檢測應用動態(tài)生成的數據與網絡請求問題,并擁有可擴展的自定義審計功能與私有api檢測功能,經測試相比傳統(tǒng)工具擁有更高的準 確率。本系統(tǒng)可用于ios應用安全測試及ios應用提交蘋果應用商店審核前的自查,能夠有效提升ios應用安全性與審核通過率。
下面對本發(fā)明中的服務器進行詳細描述,請參閱圖10,本發(fā)明實施例中的服務器40包括:
確定模塊401,用于確定待檢測應用程序;
安裝模塊402,用于將所述確定模塊401確定的所述待檢測應用程序安裝至與所述服務器相連的檢測終端,使得所述檢測終端運行所述待檢測應用程序;
獲取模塊403,用于所述安裝模塊402將所述待檢測應用程序安裝至與所述服務器相連的檢測終端之后,獲取所述待檢測應用程序在運行過程中產生的數據文件;
提取模塊404,用于從所述獲取模塊403獲取的所述應用程序的數據文件中提取目標關鍵信息;
判斷模塊405,用于判斷所述提取模塊404提取的所述目標關鍵信息是否滿足預置的漏洞確認條件,若是,則所述服務器確定所述待檢測應用程序存在安全漏洞。
本實施例中,確定模塊401確定待檢測應用程序,安裝模塊402將所述確定模塊401確定的所述待檢測應用程序安裝至與所述服務器相連的檢測終端,使得所述檢測終端運行所述待檢測應用程序,所述安裝模塊402將所述待檢測應用程序安裝至與所述服務器相連的檢測終端之后,獲取模塊403獲取所述待檢測應用程序在運行過程中產生的數據文件,提取模塊404從所述獲取模塊403獲取的所述應用程序的數據文件中提取目標關鍵信息,判斷模塊405判斷所述提取模塊404提取的所述目標關鍵信息是否滿足預置的漏洞確認條件,若是,則所述服務器確定所述待檢測應用程序存在安全漏洞。
本發(fā)明實施例中,提供了一種安全漏洞檢測的方法,該方法主要應用于ios中,服務器確定待檢測應用程序,再將待檢測應用程序安裝至與服務器相連的檢測終端,使得檢測終端運行待檢測應用程序,然后獲取待檢測應用程序在運行過程中產生的數據文件,接著從應用程序的數據文件中提取目標關鍵信息,最后判斷目標關鍵信息是否滿足預置的漏洞確認條件,若是,則服 務器確定待檢測應用程序存在安全漏洞。通過上述方法進行安全漏洞的檢測,可以在應用程序運行的過程中對生成的數據文件進行漏洞檢測,從而極大地減小了不安全的數據文件對用戶信息安全所構成的威脅,提升了方案的安全性和實用性。
可選地,在上述圖10所對應的實施例的基礎上,請參閱圖11,本發(fā)明實施例提供的服務器的另一實施例中,所述目標關鍵信息包括目標關鍵字;
所述判斷模塊405包括:
比對單元4051,用于將所述目標關鍵字與所述預存儲的關鍵字進行比對;
第一確定單元4052,用于若所述比對單元4051比對得到所述目標關鍵字與所述預存儲的關鍵字一致,則確定所述目標關鍵信息滿足所述漏洞確認條件。
其次,本發(fā)明實施例中,將目標關鍵信息設定為是目標關鍵字,于是本方案的一種具體實現方式可是為,服務器將目標關鍵字與預存儲的關鍵字進行比對,若目標關鍵字與預存儲的關鍵字一致,則確定目標關鍵信息滿足漏洞確認條件,從而找出應用程序的安全漏洞。通過上述方法對應用程序的數據文件中存儲的明文敏感信息進行檢測,不但可以清楚地通過明文信息確實是否存在安全漏洞,還可以通過簡單的比對方式來實現,使得方案更加的容易操作,提升方案的實用性和可行性。
可選地,在上述圖10所對應的實施例的基礎上,請參閱圖12,本發(fā)明實施例提供的服務器的另一實施例中,所述目標關鍵信息包括文件保護級別;
所述判斷模塊405包括:
級別判斷單元4053,用于判斷所述文件保護級別是否低于預置級別;
第二確定單元4054,用于若所述級別判斷單元4053判斷得到所述文件保護級別低于預置級別,則確定所述目標關鍵信息滿足所述漏洞確認條件。
其次,本發(fā)明實施例中,將目標關鍵信息設定為是文件保護級別,于是本方案的另一種具體實現方式可是為,服務器判斷文件保護級別是否低于預置級別,若文件保護級別低于預置級別,則確定目標關鍵信息滿足漏洞確認條件。通過上述方法先獲取應用程序中數據文件的文件保護級別,如果文件保護級別沒有達到預置級別,就可以對該數據文件進行修改,相反地,達到 預置級別的數據文件就不能被輕易更改,從而更具有安全性,使得安全漏洞的檢測條件有了另一種實現方式,以此提升方案的實用性和靈活性。
可選地,在上述圖10所對應的實施例的基礎上,請參閱圖13,本發(fā)明實施例提供的服務器的另一實施例中,所述目標關鍵信息包括用戶隱私數據;
所述判斷模塊405包括:
數據判斷單元4055,用于判斷所述用戶隱私數據與預置數據庫中隱私數據是否匹配;
第三確定單元4056,用于若所述數據判斷單元4055判斷得到所述用戶隱私數據與預置數據庫中隱私數據不匹配,則確定所述目標關鍵信息滿足所述漏洞確認條件。
其次,本發(fā)明實施例中,將目標關鍵信息設定為用戶隱私數據,于是本方案的另一種具體實現方式可是為,服務器判斷用戶隱私數據與預置數據庫中隱私數據是否匹配,若用戶隱私數據與預置數據庫中隱私數據不匹配,則確定目標關鍵信息滿足漏洞確認條件。通過上述方法可以在網絡傳輸的過程中避免用戶的隱私數據遭到惡意截獲,同時可以使得用戶及時發(fā)現上述情況,并給予相應的處理,從而提升了方案的安全性,以及更好地保護了用戶的隱私數據,增強用戶體驗。
可選地,在上述圖13所對應的實施例的基礎上,本發(fā)明實施例提供的服務器的另一實施例中,所述服務器40還包括:
所述獲取模塊403,還用于所述判斷模塊405判斷所述用戶隱私數據與預置數據庫中隱私數據是否匹配之前,通過鉤子函數hook獲取所述待檢測應用程序在運行過程中產生的網絡請求;
所述提取模塊404,還有用于從所述獲取模塊403獲取的所述應用程序的網絡請求中提取所述用戶隱私數據。
再次,本發(fā)明實施例中,服務器在判斷用戶隱私數據與預置數據庫中隱私數據是否匹配之前,還可以通過hook獲取待檢測應用程序在運行過程中產生的網絡請求,再從應用程序的網絡請求中提取用戶隱私數據。以此說明了一種具體的解決方式,從而提升了方案的實用性。
可選地,在上述圖10至13中任一項所對應的實施例的基礎上,請參閱 圖14,本發(fā)明實施例提供的服務器的另一實施例中,
所述判斷模塊包括:
第四確定單元4057,用于根據第一預置檢測內容判斷所述目標關鍵信息是否滿足預置的漏洞確認條件,其中,所述第一預置檢測內容為自定義配置的所述應用程序的漏洞確認規(guī)則。
再次,本發(fā)明實施例中,服務器可以根據第一預置檢測內容服務器判斷目標關鍵信息是否滿足預置的漏洞確認條件,其中,第一預置檢測內容是用戶自定義配置的應用程序漏洞確認規(guī)則,由此,用戶不但可以根據實際情況修改應用程序漏洞確認的規(guī)則,以提升方案的實際運行效率,還可以根據需要增添或者刪除一些漏洞確認的規(guī)則,對某些安全性較低的應用程序可以增添更多的檢測規(guī)則,而對某些安全性較高的應用程序可以刪除一些功能性不強的檢測規(guī)則,從而增加方案的實用性和靈活性。
可選地,在上述圖10所對應的實施例的基礎上,本發(fā)明實施例提供的服務器的另一實施例中,所述服務器40還包括:
所述獲取模塊403,還用于獲取所述待檢測應用程序在運行過程中產生的數據文件之前,獲取所述待檢測應用程序的二進制文件;
通過預設命令獲取所述二進制文件的目標文件信息;
所述判斷模塊405,還用于判斷所述目標文件信息是否滿足預置的漏洞確認條件,若是,則所述服務器確定所述待檢測應用程序存在安全漏洞。
進一步地,本發(fā)明實施例中,服務器不但進行動態(tài)安全漏洞的檢測,而且還能夠進一步地進行靜態(tài)安全漏洞的檢測。實現方式可以為,服務器獲取待檢測應用程序的二進制文件,并通過預設命令獲取二進制文件的目標文件信息,最后判斷目標文件信息是否滿足預置的漏洞確認條件,若是,則確定待檢測應用程序存在安全漏洞。通過上述具體的實現方式,為本發(fā)明提供了更為安全且全面的檢測方案,有利于提升安全漏洞的可靠性和實用性。
可選地,在上述圖10所對應的實施例的基礎上,請參閱圖15,本發(fā)明實施例提供的服務器的另一實施例中,所述服務器40還包括:
所述判斷模塊405包括:
信息判斷單元4058,用于根據第二預置檢測內容判斷所述目標文件信息 是否滿足預置的漏洞確認條件,其中,所述第一預置檢測內容為自定義配置的所述應用程序的動態(tài)漏洞確認規(guī)則。
更進一步地,本發(fā)明實施例中,針對靜態(tài)安全漏洞的檢測也可以通過自定義的方式來實現,用戶可以通過擴展已有的檢測規(guī)則來使的服務器完成相應的靜態(tài)安全漏洞檢測內容,也可以配置其他的檢測規(guī)則以完成相應的檢測內容,優(yōu)化其檢測能力,提升方案的實用性和可靠性。隨著漏洞檢測規(guī)則的更新與擴展,我們可以實現對增加新漏洞的發(fā)現能能力,優(yōu)化已有的檢測規(guī)則。
圖16是本發(fā)明實施例提供的一種服務器結構示意圖,該服務器500可因配置或性能不同而產生比較大的差異,可以包括一個或一個以上中央處理器(英文全稱:centralprocessingunits,英文縮寫:cpu)522(例如,一個或一個以上處理器)和存儲器532,一個或一個以上存儲應用程序542或數據544的存儲介質530(例如一個或一個以上海量存儲設備)。其中,存儲器532和存儲介質530可以是短暫存儲或持久存儲。存儲在存儲介質530的程序可以包括一個或一個以上模塊(圖示沒標出),每個模塊可以包括對服務器中的一系列指令操作。更進一步地,中央處理器522可以設置為與存儲介質530通信,在服務器500上執(zhí)行存儲介質530中的一系列指令操作。
服務器500還可以包括一個或一個以上電源526,一個或一個以上有線或無線網絡接口550,一個或一個以上輸入輸出接口558,和/或,一個或一個以上操作系統(tǒng)541,例如windowsservertm,macosxtm,unixtm,linuxtm,freebsdtm等等。
上述實施例中由服務器所執(zhí)行的步驟可以基于該圖16所示的服務器結構。
中央處理器522用于:
確定待檢測應用程序;
將待檢測應用程序安裝至與服務器500相連的檢測終端,使得檢測終端運行待檢測應用程序;
控制輸入輸出接口558獲取待檢測應用程序在運行過程中產生的數據文件;
從應用程序的數據文件中提取目標關鍵信息;
判斷目標關鍵信息是否滿足預置的漏洞確認條件,若是,則服務器500確定待檢測應用程序存在安全漏洞。
所屬領域的技術人員可以清楚地了解到,為描述的方便和簡潔,上述描述的系統(tǒng),裝置和單元的具體工作過程,可以參考前述方法實施例中的對應過程,在此不再贅述。
在本申請所提供的幾個實施例中,應該理解到,所揭露的系統(tǒng),裝置和方法,可以通過其它的方式實現。例如,以上所描述的裝置實施例僅僅是示意性的,例如,所述單元的劃分,僅僅為一種邏輯功能劃分,實際實現時可以有另外的劃分方式,例如多個單元或組件可以結合或者可以集成到另一個系統(tǒng),或一些特征可以忽略,或不執(zhí)行。另一點,所顯示或討論的相互之間的耦合或直接耦合或通信連接可以是通過一些接口,裝置或單元的間接耦合或通信連接,可以是電性,機械或其它的形式。
所述作為分離部件說明的單元可以是或者也可以不是物理上分開的,作為單元顯示的部件可以是或者也可以不是物理單元,即可以位于一個地方,或者也可以分布到多個網絡單元上??梢愿鶕嶋H的需要選擇其中的部分或者全部單元來實現本實施例方案的目的。
另外,在本發(fā)明各個實施例中的各功能單元可以集成在一個處理單元中,也可以是各個單元單獨物理存在,也可以兩個或兩個以上單元集成在一個單元中。上述集成的單元既可以采用硬件的形式實現,也可以采用軟件功能單元的形式實現。
所述集成的單元如果以軟件功能單元的形式實現并作為獨立的產品銷售或使用時,可以存儲在一個計算機可讀取存儲介質中?;谶@樣的理解,本發(fā)明的技術方案本質上或者說對現有技術做出貢獻的部分或者該技術方案的全部或部分可以以軟件產品的形式體現出來,該計算機軟件產品存儲在一個存儲介質中,包括若干指令用以使得一臺計算機設備(可以是個人計算機,服務器,或者網絡設備等)執(zhí)行本發(fā)明各個實施例所述方法的全部或部分步驟。而前述的存儲介質包括:u盤、移動硬盤、只讀存儲器(rom,read-onlymemory)、隨機存取存儲器(ram,randomaccessmemory)、 磁碟或者光盤等各種可以存儲程序代碼的介質。
以上所述,以上實施例僅用以說明本發(fā)明的技術方案,而非對其限制;盡管參照前述實施例對本發(fā)明進行了詳細的說明,本領域的普通技術人員應當理解:其依然可以對前述各實施例所記載的技術方案進行修改,或者對其中部分技術特征進行等同替換;而這些修改或者替換,并不使相應技術方案的本質脫離本發(fā)明各實施例技術方案的精神和范圍。