一種計算機終端網絡安全防護的控制方法和系統的製作方法
2023-05-18 15:45:16 2
專利名稱:一種計算機終端網絡安全防護的控制方法和系統的製作方法
技術領域:
本發明涉及計算機技術領域,尤其涉及一種計算機終端網絡安全防護的控制方法 和系統。
背景技術:
hternet的出現及其迅速發展給現代人的生產和生活都帶來了前所未有的飛躍, 它促進了信息的廣泛交流,大大提高了工作效率,豐富了人們的精神生活。然而,隨著計算 機網絡技術的突飛猛進,網絡安全的問題已經日益突出地擺在各類用戶的面前,網絡的安 全防護成為最為關注的重點。隨著網絡安全問題日益嚴重,網絡安全產品逐漸被人們重視 起來。通過對網絡信息進行監控以實現安全防護。比如用禁止特定埠的方法設置對外通 信來防止木馬;或者禁止來自特殊站點的訪問,從而防止來自入侵者的所有通信。目前個人 用戶對網絡安全防護的需求在不斷增加,而Windows作業系統是使用最為廣泛的PC操作系 統,因此如何在Windows作業系統下開發網絡防護功能顯得尤為重要了。現有的一些安全 防護產品都是通過分析數據包來實現判斷的,並不能檢測到木馬程序在讀那些文件。
發明內容
本發明的目的在於提出一種計算機終端網絡安全防護的控制方法和系統,能夠主 動檢測所有進程網絡事件、讀寫事件和窗口觸發事件,提高了計算機終端網絡的安全性。為達此目的,本發明採用以下技術方案一種計算機終端網絡安全防護的控制方法,包括以下步驟A、接收 WINDOWS 消息;B、接收SPI發送的網絡事件消息;C、判斷所述網絡事件是否存在潛在威脅,如果否,則放行,如果是,則轉至步驟D ;D、判斷所述網絡事件的PID是否在黑白名單裡,如果在黑名單裡,則阻止,如果在 白名單裡,則放行,如果不在黑白名單裡,則轉至步驟E ;E、判斷所述網絡事件的PID是否在阻止放行鍊表中,如果在阻止鍊表中,則阻止, 如果在放行鍊表中,則放行,如果不在阻止放行鍊表中,則轉至步驟F ;F、彈出對話框,顯示是否阻止信息,讓用戶選擇是否阻止;G、將用戶選擇結果保存到阻止放行鍊表或者黑白名單中,並返回選擇結果。還包括以下步驟接收FileMon發送的讀事件消息;按照文件類型過濾消息內容,將過濾結果保存在結構體中;起線程AfxRefreshReadList,更新讀事件鍊表。還包括以下步驟接收鍵盤滑鼠事件發送的消息;將獲取的消息內容保存在鍊表中。
步驟C進一步包括以下步驟檢測當前網絡事件hfoPID是否存在潛在威脅功能函數;遍歷窗口操作PID鍊表,判斷當前網絡事件hfoPID在預定時間內是否操作過;如果是,則判斷當前網絡事件hfoPID是合法網絡事件,則放行;如果否,則遍歷窗口操作PID鍊表,判斷當前網絡事件hfoPID是否有讀操作;如果否,則判斷當前網絡事件hfoPID是合法網絡事件,則放行;如果是,則判斷當前網絡事件hfoPID是異常PID,返回當前網絡事件PID。—種計算機終端網絡安全防護的控制系統,包括文件讀寫過濾驅動模塊、網絡事 件監控模塊、觸發窗口事件監控模塊、黑白名單管理模塊、進程鍊表實時監控模塊和危險進 程監控模塊,進程鍊表實時監控模塊分別與文件讀寫過濾驅動模塊、網絡事件監控模塊和 觸發窗口事件監控模塊連接,危險進程監控模塊與黑白名單管理模塊連接,文件讀寫過濾 驅動模塊、網絡事件監控模塊和觸發窗口事件監控模塊分別與危險進程監控模塊連接,其 中,文件讀寫過濾驅動模塊用於實時監控計算機所有進程對文件的讀操作,同時過濾 作業系統進程對文件的操作,以及系統白名單中文件的類型,並記錄相應的進程的PID、所 操作的文件的路徑、操作的時間,通過WINDOWS消息機制傳遞給數據防火牆主進程;網絡事件監控模塊用於通過SPI檢測控制網絡事件,分析進程鍊表中所有進程, 記錄發生過網絡操作的事件的PID ;觸發窗口事件監控模塊用於維護動態鍊表以實時檢測、更新、存儲觸發窗口事件 的進程,並通過WINDOWS消息,把觸發鍵盤滑鼠操作事件的進程PID和操作時間記錄下來, 存儲在一個窗口 PID鍊表中;黑白名單管理模塊用於將經常使用的網絡程序設置到白名單,避免監控,將危險 進程設置到黑名單,計算機屏蔽掉所述危險進程的所有網絡事件;進程鍊表實時監控模塊用於實時管理、監控任務管理器列表中所有的進程的網絡 事件信息、窗口操作信息和文件讀寫信息;危險進程監控模塊用於根據實時監控收集到的數據信息,實時動態監控、發現危 險操作,並給用戶響應的信息提示,讓用戶判斷是否允許所述進程網絡操作。文件讀寫過濾驅動模塊採用基於Filemon的WINDOWS文件過濾系統驅動。採用了本發明的技術方案,通過主動檢測所有進程網絡事件、讀寫事件和窗口觸 發事件,若發現非本機主動激發的各類進程事件,即可進行分析篩選,並根據一定的檢測策 略,判別其合法性,如不合法,則立刻給出提示信息,由用戶決定是否放行和允許該進程運 行並傳遞數據信息,否則就放行,從而有效地阻止了非法網絡程序對本機信息的竊取。
圖1是本發明具體實施方式
中計算機終端網絡安全防護的控制系統的結構示意圖。圖2是本發明具體實施方式
中計算機終端網絡安全防護的控制流程圖。
具體實施例方式下面結合附圖並通過具體實施方式
來進一步說明本發明的技術方案。
通過對大量的木馬、病毒等惡意程序竊取網絡數據行為進行綜合分析,發現其主 要的原理有以下特性1、讀取、修改、刪除用戶電腦文件信息,包括文本文件、資料庫文件、圖片、視頻文 件等存儲重要密碼信息的文件數據。2、有網絡發包行為,通過解析主要基於TCP、UDP等協議。3、通常都是基於後臺操作,即沒有窗口彈出;或存儲在獨立的exe程序中,或以 DLL的形式注入到其他進程中。根據上述研究,可以通過制定相應的策略實時檢測任務管理 器中的各個進程,分析其行為特徵,判斷其危險等級,以提供給用戶來決策,並協助用戶阻 止危險操作的發生。數據安全整體設計思想通過檢測所有進程網絡事件、讀寫事件,以及窗口觸發事 件,按照一定的策略檢測、分析當前進程是否存在潛在危險,如果存在危險告知用戶,並提 供給用戶相應的解決辦法。圖1是本發明具體實施方式
中計算機終端網絡安全防護的控制系統的結構示意 圖。如圖1所示,該計算機終端網絡安全防護的控制系統包括文件讀寫過濾驅動模塊103、 網絡事件監控模塊104、觸發窗口事件監控模塊105、黑白名單管理模塊102、進程鍊表實時 監控模塊101和危險進程監控模塊106。進程鍊表實時監控模塊分別與文件讀寫過濾驅動模塊、網絡事件監控模塊和觸發 窗口事件監控模塊連接,危險進程監控模塊與黑白名單管理模塊連接,文件讀寫過濾驅動 模塊、網絡事件監控模塊和觸發窗口事件監控模塊分別與危險進程監控模塊連接。其中,文件讀寫過濾驅動模塊、網絡事件監控模塊和觸發窗口事件監控模塊是獨 立的模塊,它們由進程鍊表實時監控模塊聯繫起來,協同工作。以進程鍊表實時監控模塊 和黑白名單管理模塊為基礎,危險進程監控模塊完成系統功能。用戶將使用信息傳給黑白 名單管理模塊,黑白名單管理模塊將信息傳給危險進程監控模塊;進程鍊表實時監控模塊 將信息傳給文件讀寫過濾驅動模塊、網絡事件監控模塊和觸發窗口事件監控模塊,文件讀 寫過濾驅動模塊、網絡事件監控模塊和觸發窗口事件監控模塊將信息傳給危險進程監控模 塊,危險進程監控模塊匯總和分析信息後返回給用戶。文件讀寫過濾驅動模塊用於實時監控計算機所有進程對文件的讀操作,同時過濾 作業系統進程對文件的操作,以及系統白名單中文件的類型,並記錄相應的進程的PID、所 操作的文件的路徑、操作的時間,通過WINDOWS消息機制傳遞給數據防火牆主進程;網絡事件監控模塊用於通過SPI檢測控制網絡事件,分析進程鍊表中所有進程, 記錄發生過網絡操作的事件的PID ;觸發窗口事件監控模塊用於維護動態鍊表以實時檢測、更新、存儲觸發窗口事件 的進程,並通過WINDOWS消息,把觸發鍵盤滑鼠操作事件的進程PID和操作時間記錄下來, 存儲在一個窗口 PID鍊表中;黑白名單管理模塊用於將經常使用的網絡程序設置到白名單,避免監控,將危險 進程設置到黑名單,計算機屏蔽掉所述危險進程的所有網絡事件;進程鍊表實時監控模塊用於實時管理、監控任務管理器列表中所有的進程的網絡 事件信息、窗口操作信息和文件讀寫信息;危險進程監控模塊用於根據實時監控收集到的數據信息,實時動態監控、發現危險操作,並給用戶響應的信息提示,讓用戶判斷是否允許所述進程網絡操作。文件讀寫過濾驅動模塊採用基於Filemon的WINDOWS文件過濾系統驅動。圖2是本發明具體實施方式
中計算機終端網絡安全防護的控制流程圖。如圖2所 示,該計算機終端網絡安全防護的控制流程包括以下步驟步驟201、接收WINDOWS消息。步驟202、接收SPI發送的網絡事件消息。步驟203、判斷網絡事件是否存在潛在威脅,如果否,則放行,如果是,則轉至步驟 204。判斷網絡事件是否存在潛在威脅進一步包括以下步驟檢測當前網絡事件hfoPID是否存在潛在威脅功能函數;遍歷窗口操作PID鍊表,判斷當前網絡事件hfoPID在預定時間內是否操作過;如果是,則判斷當前網絡事件hfoPID是合法網絡事件,則放行;如果否,則遍歷窗口操作PID鍊表,判斷當前網絡事件hfoPID是否有讀操作;如果否,則判斷當前網絡事件hfoPID是合法網絡事件,則放行;如果是,則判斷當前網絡事件hfoPID是異常PID,返回當前網絡事件PID。步驟204、判斷所述網絡事件的PID是否在黑白名單裡,如果在黑名單裡,則阻止, 如果在白名單裡,則放行,如果不在黑白名單裡,則轉至步驟205。步驟205、判斷所述網絡事件的PID是否在阻止放行鍊表中,如果在阻止鍊表中, 則阻止,如果在放行鍊表中,則放行,如果不在阻止放行鍊表中,則轉至步驟206。步驟206、彈出對話框,顯示是否阻止信息,讓用戶選擇是否阻止。步驟207、將用戶選擇結果保存到阻止放行鍊表或者黑白名單中,並返回選擇結^ ο還可以包括以下步驟301、接收FileMon發送的讀事件消息。302、按照文件類型過濾消息內容,將過濾結果保存在結構體中。303、起線程AfxRefreshReadList,更新讀事件鍊表。還可以包括以下步驟401、接收鍵盤滑鼠事件發送的消息。402、將獲取的消息內容保存在鍊表中。下面具體描述各個模塊的具體工作流程。1、文件讀寫過濾驅動模塊WINDOWS文件過濾系統驅動開發,可用於硬碟還原,防病毒,文件安全防護,文件加 密等諸多領域。該系統採用基於Filemon的WINDOWS文件過濾系統驅動。Filemon的大致 架構為,在此驅動程序中,創建了兩類設備對象。一類設備對象用於和Filemon對應的exe 程序通信,以接收用戶輸入信息,比如掛接或監控哪個分區,是否要掛接,是否要監控,監控 何種操作等。此設備對象只創建了一個,在驅動程序的入口函數中。此類設備對象一般稱為 控制設備對象,並有名字,以方便應用層與其通信操作。第二類設備對象用於掛接到所須監 控的分區,比如c:,d:或e:,f:,以便攔截到引應用層對該分區所執行的讀,寫等操作。此 類設備對象為安全起見,一般不予命名,可根據須監控多少分區而創建一個或多個。
文件讀寫過濾模塊採用基於Filemon的WINDOWS文件過濾系統驅動,實時監控本 機所有進程對文件的讀操作,同時過濾作業系統進程對文件的操作,以及系統白名單中文 件的類型;並記錄相應的進程的PID,所操作的文件的路徑,操作的時間等信息。最後會通 過WINDOWS消息機制傳遞給數據防火牆主進程。2、網絡事件監控模塊通過SPI可以檢測控制網絡事件,分析進程列表中所有進程,對於發生過網絡操 作的事件記錄其PID號。3、觸發窗口事件監控模塊維護動態列表用來實時檢測、更新、存儲觸發窗口事件的進程。在主監控進程中掛 一個全局鉤子,用來實時監控進程列表中所有關於滑鼠、鍵盤的進程的操作;鉤子實際上是 一個處理消息的程序段,通過系統調用,把它掛入系統。每當特定的消息發出,在沒有到達 目的窗口前,鉤子程序就先捕獲該消息,即鉤子函數先得到控制權。這時鉤子函數即可以加 工處理(改變)該消息,也可以不作處理而繼續傳遞該消息,還可以強制結束消息的傳遞。通過WINDOWS消息,把觸發滑鼠、鍵盤操作事件的進程PID、操作時間等記錄下來, 存儲在一個窗口 PID列表中。主監控程序通過監控線程,實時更新進程PID鍊表,窗口顯示 列表,配置文件內容等信息;窗口事件鍊表維護邏輯每接收一個窗口操作PID,都要更新 其PID窗口操作列表,首先遍歷一遍進程PID鍊表,判斷當前元素是否在鍊表中,如已經存 在列表中則替換以前的值,否則在列表末尾追加操作。4、黑白名單管理模塊用戶電腦有許多日常網絡程序,為了方便用戶管理,同時不影響客戶正常網絡程 序的使用。該系統設置了黑白名單管理功能,可對某些經常使用的網絡程序設置到白名單, 避免了許多不必要監控。另一方面,對於一些危險進程可以直接將其設置到黑名單,系統自 動屏蔽掉該進程所有網絡事件,最大程度地保護用戶電腦的安全。該功能主要通過實時監控、修改後臺的配置文件,當有第一次檢測到危險進程時, 主程序會彈出提示框,並允許用戶選擇是否永久阻止或者放行該程序,即可把當前程序添 加到黑白名單當中。該方式非常人性化,便於普通用戶使用。同時,項目實施人員也可以直 接通過修改配置文件,來添加黑白名單;功能非常靈活方便。主程序會實時檢測該文件,任 何時候對文件的修改,主程序都會檢測到,並自動執行相應的策略,無需重啟主程序。5、進程列表實時監控模塊該系統的核心操作是要實時管理、監控任務管理器列表中所有的進程的網絡事件 信息、窗口操作信息、文件讀寫信息,實時、準確地獲取這些信息就變的非常重要。該系統主 要通過三個獨立的線程分別管理三個PID鍊表,實現對進程的實時監控。進程AfxCheckPidThread用來實時記錄更新的所有進程基本信息,以及記錄主界 面中列表框中顯示的進程信息。線程RefreshDeleteRead用來刪除過期的讀操作鍊表中的數據,保證讀寫鍊表中 的PID信息都是在允許的操作周期內。線程AfxRefreshThread實時更新鍵盤、滑鼠操作的 PID鍊表,網絡事件鍊表。線程AfxRefreshReadLiStHiread用來更新讀PID鍊表。6、危險進程監控模塊通過實時監控收集到的數據信息,該系統有一套智能策略算法,實時動態監控、發現危險操作,並給用戶響應的信息提示,例如潛在危險進程的名稱、PID號、進程路徑、屬 性信息等。供用戶來決斷是否允許該進程網絡操作。該監控模塊首先會通過分析當前有網絡發包的進程,判斷在允許的時間範圍內 (例如1分鐘)其窗口是否被操作過;如果沒有相關操作,則立即放行,否則繼續判斷是否 有讀取本機文件的相關操作,如果被操作過,則立即放行,否則即可判斷該進程是危險進 程,立即通知用戶該操作有潛在的危險。以上所述,僅為本發明較佳的具體實施方式
,但本發明的保護範圍並不局限於此, 任何熟悉該技術的人在本發明所揭露的技術範圍內,可輕易想到的變化或替換,都應涵蓋 在本發明的保護範圍之內。因此,本發明的保護範圍應該以權利要求的保護範圍為準。
權利要求
1.一種計算機終端網絡安全防護的控制方法,其特徵在於,包括以下步驟A、接收WINDOWS消息;B、接收SPI發送的網絡事件消息;C、判斷所述網絡事件是否存在潛在威脅,如果否,則放行,如果是,則轉至步驟D;D、判斷所述網絡事件的PID是否在黑白名單裡,如果在黑名單裡,則阻止,如果在白名 單裡,則放行,如果不在黑白名單裡,則轉至步驟E ;E、判斷所述網絡事件的PID是否在阻止放行鍊表中,如果在阻止鍊表中,則阻止,如果 在放行鍊表中,則放行,如果不在阻止放行鍊表中,則轉至步驟F ;F、彈出對話框,顯示是否阻止信息,讓用戶選擇是否阻止;G、將用戶選擇結果保存到阻止放行鍊表或者黑白名單中,並返回選擇結果。
2.根據權利要求1所述的一種計算機終端網絡安全防護的控制方法,其特徵在於,還 包括以下步驟接收FileMon發送的讀事件消息; 按照文件類型過濾消息內容,將過濾結果保存在結構體中; 起線程AfxRefreshReadList,更新讀事件鍊表。
3.根據權利要求1所述的一種計算機終端網絡安全防護的控制方法,其特徵在於,還 包括以下步驟接收鍵盤滑鼠事件發送的消息; 將獲取的消息內容保存在鍊表中。
4.根據權利要求1所述的一種計算機終端網絡安全防護的控制方法,其特徵在於,步 驟C進一步包括以下步驟檢測當前網絡事件hfoPID是否存在潛在威脅功能函數;遍歷窗口操作PID鍊表,判斷當前網絡事件hfoPID在預定時間內是否操作過;如果是,則判斷當前網絡事件hfoPID是合法網絡事件,則放行;如果否,則遍歷窗口操作PID鍊表,判斷當前網絡事件hfoPID是否有讀操作;如果否,則判斷當前網絡事件hfoPID是合法網絡事件,則放行;如果是,則判斷當前網絡事件^偽?皿是異常PID,返回當前網絡事件PID。
5.一種計算機終端網絡安全防護的控制系統,其特徵在於,包括文件讀寫過濾驅動模 塊、網絡事件監控模塊、觸發窗口事件監控模塊、黑白名單管理模塊、進程鍊表實時監控模 塊和危險進程監控模塊,進程鍊表實時監控模塊分別與文件讀寫過濾驅動模塊、網絡事件 監控模塊和觸發窗口事件監控模塊連接,危險進程監控模塊與黑白名單管理模塊連接,文 件讀寫過濾驅動模塊、網絡事件監控模塊和觸發窗口事件監控模塊分別與危險進程監控模 塊連接,其中,文件讀寫過濾驅動模塊用於實時監控計算機所有進程對文件的讀操作,同時過濾操作 系統進程對文件的操作,以及系統白名單中文件的類型,並記錄相應的進程的PID、所操作 的文件的路徑、操作的時間,通過WINDOWS消息機制傳遞給數據防火牆主進程;網絡事件監控模塊用於通過SPI檢測控制網絡事件,分析進程鍊表中所有進程,記錄 發生過網絡操作的事件的PID;觸發窗口事件監控模塊用於維護動態鍊表以實時檢測、更新、存儲觸發窗口事件的進程,並通過WINDOWS消息,把觸發鍵盤滑鼠操作事件的進程PID和操作時間記錄下來,存儲 在一個窗口 PID鍊表中;黑白名單管理模塊用於將經常使用的網絡程序設置到白名單,避免監控,將危險進程 設置到黑名單,計算機屏蔽掉所述危險進程的所有網絡事件;進程鍊表實時監控模塊用於實時管理、監控任務管理器列表中所有的進程的網絡事件 信息、窗口操作信息和文件讀寫信息;危險進程監控模塊用於根據實時監控收集到的數據信息,實時動態監控、發現危險操 作,並給用戶響應的信息提示,讓用戶判斷是否允許所述進程網絡操作。
6.根據權利要求5所述的一種計算機終端網絡安全防護的控制系統,其特徵在於,文 件讀寫過濾驅動模塊採用基於Filemon的WINDOWS文件過濾系統驅動。
全文摘要
本發明公開了一種計算機終端網絡安全防護的控制方法和系統,接收WINDOWS消息;接收SPI發送的網絡事件消息;判斷網絡事件是否存在潛在威脅,如果否,放行,如果是,判斷網絡事件PID是否在黑白名單裡,如果在黑名單裡,阻止,如果在白名單裡,放行,如果不在黑白名單裡,判斷網絡事件PID是否在阻止放行鍊表中,如果在阻止鍊表中,阻止,如果在放行鍊表中,放行,如果不在阻止放行鍊表中,彈出對話框,顯示是否阻止信息,讓用戶選擇是否阻止;將用戶選擇結果保存到阻止放行鍊表或者黑白名單中,並返回選擇結果。採用了本發明的技術方案,能夠主動檢測所有進程網絡事件、讀寫事件和窗口觸發事件,提高了計算機終端網絡的安全性。
文檔編號G06F21/00GK102063588SQ20101060613
公開日2011年5月18日 申請日期2010年12月15日 優先權日2010年12月15日
發明者林皓 申請人:北京北信源軟體股份有限公司