網絡安全的防護方法及裝置與流程
2023-08-04 00:36:51 3
本發明涉及網際網路技術,尤其涉及一種網絡安全的防護方法及裝置。
背景技術:
目前,對網頁中惡意代碼的檢測主要有以下幾種方式:①基於URL的檢測方法,這種檢測方法由於對惡意URL庫的實時性不高且覆蓋範圍較窄,因此檢測的實際效果並不理想;②採用靜態檢測方法,由於這種檢測方法是基於字符串匹配、正則式等靜態掃描的方式進行檢測的,而網頁腳本是動態語言,因此這種檢測方法很容易被黑客規避。此外,為了提高靜態檢測的效果,部分靜態檢測方案中帶有一定的啟發式性質;造成一些殺毒軟體的啟發式引擎僅僅是看到代碼存在混淆就進行查殺,誤判風險非常高;③採用模擬瀏覽器環境並虛擬執行網頁腳本的檢測方法,由於虛擬執行需要對性能進行控制,但目前無法完全模擬真實的用戶環境,黑客仍然可以採用增加空循環迫使虛擬執行停止或者增加用戶環境參數的方式來規避檢測。
技術實現要素:
本發明的主要目的是提供一種網絡安全的防護方法及裝置,旨在解決惡意網頁代碼不易被查殺的問題。本發明實施例公開了一種網絡安全的防護方法,包括以下步驟:網關根據接收的數據包的數據類型,將防護代碼插入所述數據包中,並將包含所述防護代碼的數據包發送至客戶端;所述客戶端接收包含所述防護代碼的數據包,在執行所述數據包中數據的運行指令時,觸發所述防護代碼對所述數據包中數據的運行進行檢測;所述防護代碼若檢測到所述數據包中數據的運行滿足預設告警條件,則發出對應的告警提示信息,以提示所述客戶端選擇是否繼續運行所述數據包中的數據。優選地,所述網關根據接收的數據包的數據類型,將防護代碼插入所述數據包中包括:網關識別接收的數據包的數據類型;在所述數據包的數據類型滿足預設數據規則時,抓取所述數據包,並對抓取的數據包進行重組;識別到重組後的所述數據包有惡意傾向時,將所述防護代碼插入所述數據包中。優選地,所述網關根據接收的數據包的數據類型,將防護代碼插入所述數據包中包括:網關識別接收的數據包的數據類型;根據所述數據包的不同數據類型,將對應的所述防護代碼分別插入到不同數據類型的所述數據包中。優選地,所述發出對應的告警提示信息,以提示所述客戶端選擇是否繼續運行所述數據包中的數據之後還包括:將滿足預設告警條件的所述數據包中的數據發送至網關,供網關記錄備案。優選地,所述網關接收的數據包的數據類型包括網頁代碼、運行指令和任意含有可執行腳本的文件。本發明實施例還公開了一種網絡安全的防護裝置,包括:防護代碼插入模塊,用於根據接收的數據包的數據類型,將防護代碼插入所述數據包中,並將包含所述防護代碼的數據包發送至客戶端;惡意腳本檢測模塊,用於接收包含所述防護代碼的數據包,在執行所述數據包中數據的運行指令時,觸發所述防護代碼對所述數據包中數據的運行進行檢測;告警模塊,用於在所述防護代碼檢測到所述數據包中數據的運行滿足預設告警條件時,發出對應的告警提示信息,以提示所述客戶端選擇是否繼續運行所述數據包中的數據。優選地,所述防護代碼插入模塊還用於:識別接收的數據包的數據類型;在所述數據包的數據類型滿足預設數據規則時,抓取所述數據包,並對抓取的數據包進行重組;識別到重組後的所述數據包有惡意傾向時,將所述防護代碼插入所述數據包中。優選地,所述防護代碼插入模塊還用於:識別接收的數據包的數據類型;根據所述數據包的不同數據類型,將對應的所述防護代碼分別插入到不同數據類型的所述數據包中。優選地,本實施例網絡安全的防護裝置還包括:惡意腳本發送模塊,用於將滿足預設告警條件的所述數據包中的數據發送至網關,供網關記錄備案。優選地,所述網關接收的數據包的數據類型包括網頁代碼、運行指令和任意含有可執行腳本的文件。本發明通過網關根據接收的數據包的數據類型,將防護代碼插入所述數據包中,並將包含所述防護代碼的數據包發送至客戶端;所述客戶端接收包含所述防護代碼的數據包,在執行所述數據包中數據的運行指令時,觸發所述防護代碼對所述數據包中數據的運行進行檢測;所述防護代碼若檢測到所述數據包中數據的運行滿足預設告警條件,則發出對應的告警提示信息,以提示所述客戶端選擇是否繼續運行所述數據包中的數據的方法,具有實時檢測網頁、運行指令或含有可執行腳本的文件等中的惡意代碼並及時將可疑行為提示至客戶端的有益效果,提升了網頁中惡意代碼的檢測效果,降低了網關的負載;進一步地,若出現誤判的情況,則客戶端可以選擇執行,減輕了因誤判而造成的後果。附圖說明圖1是本發明網絡安全的防護方法一實施例流程示意圖;圖2是本發明網絡安全的防護方法具體應用場景一實施例結構部署示意圖;圖3是本發明網絡安全的防護方法中告警提示信息的顯示方式一實施例結構框圖;圖4是本發明網絡安全的防護方法又一實施例流程示意圖;圖5是本發明網絡安全的防護裝置一實施例功能模塊示意圖;圖6是本發明網絡安全的防護裝置又一實施例功能模塊示意圖。本發明目的的實現、功能特點及優點將結合實施例,參照附圖做進一步說明。具體實施方式以下結合說明書附圖及具體實施例進一步說明本發明的技術方案。應當理解,此處所描述的具體實施例僅僅用以解釋本發明,並不用於限定本發明。參照圖1,圖1是本發明網絡安全的防護方法一實施例流程示意圖;如圖1所示,本發明網絡安全的防護方法包括以下步驟:步驟S01、網關根據接收的數據包的數據類型,將防護代碼插入所述數據包中,並將包含所述防護代碼的數據包發送至客戶端;網關接收伺服器端發送的數據包,識別接收的數據包的數據類型;並根據所述數據包的不同數據類型,直接將對應的防護代碼插入上述數據包中;即網關先不識別上述數據包是否包含可疑代碼,為了更全面地進行網絡防護,直接將來自伺服器端的所有數據包均插入防護代碼。比如,針對數據包的數據類型分別為JavaScript、VisualBasicScript和ActionScript的數據包,則對應插入與上述數據包類型匹配的防護代碼。所述網關接收的數據包的數據類型包括網頁代碼、運行指令和任意含有可執行腳本的文件。網關插入防護代碼的形式包含直接將代碼或者將包含防護代碼的文件連結嵌入數據包中,本實施例對網關插入防護代碼的具體形式不作限定。在一優選的實施例中,所述網關根據接收的數據包的數據類型,將防護代碼插入所述數據包中還可以通過下述方式實現:網關識別接收的數據包的數據類型;在所述數據包的數據類型滿足預設數據規則時,抓取所述數據包,並對抓取的數據包進行重組;識別到重組後的所述數據包有惡意傾向時,將所述防護代碼插入所述數據包中。比如,網關識別接收的數據包的數據類型為text還是html;若所述數據包的數據類型為html(HypertextMarkupLanguage,超文本標記語言),且所述數據包中包含Title欄位,則網關對上述數據包進行抓包重組。同時,對網頁腳本是否有惡意傾向進行判別,比如,若識別出存在大量的字符串拼接,則對拼接形成的字符串變量用document.write或eval等;比如存在大量的常量字符串和字符串變量拼接,或調用document.write將經過多重處理的字符串變量寫入html(通過對腳本的解析和靜態分析實現);即針對存在惡意傾向的網頁插入防護代碼,如將document.write、eval函數的重載代碼插入到網頁代碼被調用前,從而確保在網頁代碼即將運行可疑代碼前,即可觸發防護代碼對其進行檢測。網關識別所述數據包是否有惡意傾向的識別規則可以由JavaScript內建的String.search函數實現,也可以採用JavaScript內建的正則庫或自行編寫檢測函數實現,或者採用JavaScript語言實現解釋器對網頁腳本邊執行邊檢測;本實施例對識別規則的具體內容和具體實現方式不作限定。網...