本發明專利技術公開了一種進程行為控制的方法和裝置,其中所述方法包括:在檢測到鍵盤輸入或按鍵輸入行為時,底層驅動攔截消息鉤子對回調函數的調用;其中,所述消息鉤子與觸發當前鍵盤輸入或按鍵輸入行為的進程關聯;底層驅動將所述與消息鉤子關聯的進程的信息發送至應用層;底層驅動阻止或允許所述與消息鉤子關聯進程觸發的行為;應用層依據所述與消息鉤子關聯的進程的信息,判斷是否阻止或允許對應進程觸發的行為,并將判斷結果通知底層驅動;底層驅動根據應用層的判斷結果執行相應的阻止或允許對應進程觸發的行為的操作。本發明專利技術可以在攔截消息鉤子對回調函數的調用時,保證系統的穩定性。
【技術實現步驟摘要】
本專利技術涉及計算機設備安全的領域,具體涉及一種進程行為控制的方法,以及,一種進程行為控制的裝置,以及,一種進程行為控制的底層驅動系統。
技術介紹
Windows操作系統的廣泛應用導致其成為了遭受惡意軟件攻擊最嚴重的操作系統,它的安全性問題成為了用戶及計算機安全研究人員關注的焦點。惡意軟件是指在計算機系統上執行惡意任務的病毒、蠕蟲和特洛伊木馬。惡意軟件最常用的實現技術是鉤子技術,通過使用鉤子技術,惡意軟件可以改變操作系統正常的執行路徑,從而破壞系統或者竊取用戶信息。目前,常用的一種防護做法是通過對在Windows操作系統下的鉤子的檢測來實現對惡意軟件的防護設計。Windows操作系統下的鉤子通過調用回調函數來完成對系統的回調,因此,攔截對回調函數的調用就能獲取鉤子的進程信息,但是,對鉤子回調函數的調用的攔截處理不在很容易引起系統的卡死。因此,本領域技術人員迫切需要解決的技術問題是在攔截消息鉤子對回調函數的調用時,如何保證系統的穩定性。
技術實現思路
鑒于上述問題,提出了本專利技術以便提供一種克服上述問題或者至少部分地解決上述問題的一種進程行為控制的方法和相應的一種進程行為控制的裝置,以及相應的一種進程行為控制的底層驅動系統。依據本專利技術的一個方面,提供了一種進程行為控制的方法,包括在檢測到鍵盤輸入或按鍵輸入行為時,底層驅動攔截消息鉤子對回調函數的調用;其中,所述消息鉤子與觸發當前鍵盤輸入或按鍵輸入行為的進程關聯;底層驅動將所述與消息鉤子關聯的進程的信息發送至應用層;底層驅動阻止或允許所述與消息鉤子關聯進程觸發的行為;應用層依據所述與消息鉤子關聯的進程的信息,判斷是否阻止或允許對應進程觸發的行為,并將判斷結果通知底層驅動;底層驅動根據應用層的判斷結果執行相應的阻止或允許對應進程觸發的行為的操作。可選地,所述底層驅動阻止或允許所述與消息鉤子關聯進程觸發的行為的步驟包括應用層生成阻止或允許所述與消息鉤子關聯進程觸發的行為的信息,并發送至底層驅動;底層驅動依據所述信息阻止或允許對應進程觸發的行為。可選地,所述底層驅動根據應用層的判斷結果執行相應的阻止或允許對應進程觸發的行為的操作的步驟包括底層驅動根據應用層的判斷結果記錄相關規則,所述相關規則包括在應用層判斷為阻止對應進程觸發的行為時,底層驅動記錄為阻止對應進程觸發的行為的規則;在應用層判斷為允許對應進程觸發的行為時,底層驅動記錄為允許對應進程觸發的行為的規則;底層驅動根據所述相關規則執行相應的阻止或允許對應進程觸發的行為的操作,所述操作包括底層驅動根據記錄為阻止對應進程觸發的行為的規則執行阻止對應進程觸發的行為的操作; 底層驅動根據記錄為允許對應進程觸發的行為的規則執行允許對應進程觸發的行為的操作。可選地,所述應用層判斷是否阻止或允許對應進程觸發的行為的判斷結果,依據向用戶顯示與消息鉤子關聯的進程的信息,接收用戶選擇的阻止或允許該進程觸發行為的信息生成。根據本專利技術的另一方面,提供了一種進程行為控制的裝置,包括位于底層驅動的攔截模塊,用于在檢測到鍵盤輸入或按鍵輸入行為時,攔截消息鉤子對回調函數的調用;其中,所述消息鉤子與觸發當前鍵盤輸入或按鍵輸入行為的進程關聯;位于底層驅動的發送模塊,用于將所述與消息鉤子關聯的進程的信息發送至應用層;位于底層驅動的第一執行模塊,用于阻止或允許所述與消息鉤子關聯進程觸發的行為;位于應用層的判斷模塊,用于依據所述與消息鉤子關聯的進程的信息,判斷是否阻止或允許對應進程觸發的行為,并將判斷結果通知底層驅動;位于底層驅動的第二執行模塊,用于根據應用層的判斷結果執行相應的阻止或允許對應進程觸發的行為的操作。可選地,所述位于底層驅動的第一執行模塊包括位于應用層的判斷信息生成子模塊,用于生成阻止或允許所述與消息鉤子關聯進程觸發的行為的信息,并發送至底層驅動;位于底層驅動的第一執行子模塊,用于依據所述信息阻止或允許對應進程觸發的行為。可選地,所述位于底層驅動的第二執行模塊包括位于底層驅動的規則記錄子模塊,用于根據應用層的判斷結果記錄相關規則,所述相關規則包括在應用層判斷為阻止對應進程觸發的行為時,底層驅動記錄為阻止對應進程觸發的行為的規則;在應用層判斷為允許對應進程觸發的行為時,底層驅動記錄為允許對應進程觸發的行為的規則;位于底層驅動的第二執行子模塊,用于根據所述相關規則執行相應的阻止或允許對應進程觸發的行為的操作,所述操作包括底層驅動根據記錄為阻止對應進程觸發的行為的規則執行阻止對應進程觸發的行為的操作;底層驅動根據記錄為允許對應進程觸發的行為的規則執行允許對應進程觸發的行為的操作。根據本專利技術的另一方面,提供了一種進程行為控制的底層驅動系統,包括攔截模塊,用于在檢測到鍵盤輸入或按鍵輸入行為時,攔截消息鉤子對回調函數的調用;其中,所述消息鉤子與觸發當前鍵盤輸入或按鍵輸入行為的進程關聯; 發送模塊,用于將所述與消息鉤子關聯的進程的信息發送至應用層;第一執行模塊,用于阻止或允許所述與消息鉤子關聯進程觸發的行為;判斷結果接收模塊,用于接收應用層的判斷結果,所述判斷結果為應用層依據所述與消息鉤子關聯的進程的信息,判斷是否阻止或允許對應進程觸發的行為的判斷結果;第二執行模塊,用于根據應用層的判斷結果執行相應的阻止或允許對應進程觸發的行為的操作。可選地,所述第一執行模塊包括信息接收子模塊,用于接收應用層生成的阻止或允許所述與消息鉤子關聯進程觸發的行為的信息;第一執行子模塊,用于依據所述信息阻止或允許對應進程觸發的行為。可選地,所述第二執行模塊包括規則記錄子模塊,用于根據應用層的判斷結果記錄相關規則,所述相關規則包括在應用層判斷為阻止對應進程觸發的行為時,底層驅動記錄為阻止對應進程觸發的行為的規則;在應用層判斷為允許對應進程觸發的行為時,底層驅動記錄為允許對應進程觸發的行為的規則;第二執行子模塊,用于根據所述相關規則執行相應的阻止或允許對應進程觸發的行為的操作,所述操作包括根據記錄為阻止對應進程觸發的行為的規則執行阻止對應進程觸發的行為的操作;根據記錄為允許對應進程觸發的行為的規則執行允許對應進程觸發的行為的操作。根據本專利技術的一種進程行為控制機制可以正常攔截由消息鉤子產生的對回調函數的調用,使應用層可以在判斷過程中使用消息機制,避免由此帶來的系統暫時或永久卡死的情況,通過對消息鉤子所引發的回調函數的調用攔截時進行特殊處理,即在攔截到需要應用層處理的消息時,底層驅動直接放行(或阻止)后再通知應用層處理,或者,通知應用層后應用層如果需要用到系統消息機制,在使用任何消息機制的調用之前先行通知允許還是阻止對應進程觸發的行為。然后在經過應用層充分的自動判斷或詢問用戶后再再次通知驅動記錄相關規則。這樣能保證對惡意軟件的準確識別而系統不出現任何意外情況,從而保證了系統的穩定性,以及,用戶設備運行的安全性和穩定性。上述說明僅是本專利技術技術方案的概述,為了能夠更清楚了解本專利技術的技術手段,而可依照說明書的內容予以實施,并且為了讓本專利技術的上述和其它目的、特征和優點能夠更明顯易懂,以下特舉本專利技術的具體實施方式。附圖說明通過閱讀下文優選實施方式的詳細描述,各種其他的優點和益處對于本領域普通技術人員將變得清楚明了。附 圖僅用于示出優選實施方式的目的,而并不認為是對本專利技術的限制。而且在整本文檔來自技高網...
【技術保護點】
一種進程行為控制的方法,包括:在檢測到鍵盤輸入或按鍵輸入行為時,底層驅動攔截消息鉤子對回調函數的調用;其中,所述消息鉤子與觸發當前鍵盤輸入或按鍵輸入行為的進程關聯;底層驅動將所述與消息鉤子關聯的進程的信息發送至應用層;底層驅動阻止或允許所述與消息鉤子關聯進程觸發的行為;應用層依據所述與消息鉤子關聯的進程的信息,判斷是否阻止或允許對應進程觸發的行為,并將判斷結果通知底層驅動;底層驅動根據應用層的判斷結果執行相應的阻止或允許對應進程觸發的行為的操作。
【技術特征摘要】
【專利技術屬性】
技術研發人員:董杰,張曉霖,
申請(專利權)人:北京奇虎科技有限公司,奇智軟件北京有限公司,
類型:發明
國別省市:
還沒有人留言評論。發表了對其他瀏覽者有用的留言會獲得科技券。