本發明專利技術提供一種Linux網絡訪問控制方法及裝置,其中,所述方法包括:接收應用程序的運行命令,并獲取應用程序的標識;加載預設的劫持函數庫和動態庫;運行所述應用程序并識別所述應用程序中的網絡訪問函數;根據所述操作函數和所述應用程序的標識查找所述劫持函數庫,所述劫持函數庫包括所述網絡訪問函數、所述應用程序的標識和劫持函數之間的對應關系,若查找到與所述網絡訪問函數和所述應用程序的標識對應的劫持函數,則運行所述劫持函數,并根據所述劫持函數的運行結果判斷是否調用所述動態庫中的網絡訪問函數。本發明專利技術所提供的Linux網絡訪問控制方法,能夠在Linux系統中針對不同的應用程序對網絡訪問進行控制,提高網絡訪問控制的靈活性。
【技術實現步驟摘要】
Linux網絡訪問控制方法及裝置
本專利技術涉及信息安全
,特別是涉及一種Linux網絡訪問控制方法及裝置。
技術介紹
隨著互聯網應用的普及與發展,互聯網中存在的各種不安全因素也越來越多,尤其在設置了內部網絡的大型網絡中,如何控制對外部網絡的訪問,保證內部網絡的安全,是信息安全
的重要課題。目前,Linux下常用的進行網絡訪問控制的方法包括iptables和netfilter。如果Linux系統連接到互聯網的服務器或代理服務器,iptables有利于在Linux系統上更好的控制IP信息包過濾和防火墻配置。iptables組件是一種工具,也稱為用戶空間,它使插入、修改和除去信息包過濾表中的規則變得容易;netfilter組件也稱為內核空間,是內核的一部分,由一些信息包過濾表組成,這些表包含內核用來控制信息包過濾處理的規則集。現有的針對Linux系統下的網絡訪問控制的方法,基本上基于對iptables的二次開發和包裝,基于網絡五元組(協議號,源IP,源端口,目的IP和目的端口),并且針對所有使用Linux系統的程序統一控制網絡訪問,無法針對應用程序對Linux系統網絡訪問進行控制。
技術實現思路
基于此,有必要針對無法針對應用程序對Linux系統網絡訪問進行控制的問題,提供一種Linux網絡訪問控制方法,所述方法包括:接收應用程序的運行命令,并獲取應用程序的標識;加載預設的劫持函數庫和動態庫;運行所述應用程序并識別所述應用程序中的網絡訪問函數;根據所述操作函數和所述應用程序的標識查找所述劫持函數庫,所述劫持函數庫包括所述網絡訪問函數、所述應用程序的標識和劫持函數之間的對應關系,若查找到與所述網絡訪問函數和所述應用程序的標識對應的劫持函數,則運行所述劫持函數,并根據所述劫持函數的運行結果判斷是否調用所述動態庫中的網絡訪問函數。在其中一個實施例中,所述劫持函數庫的絕對路徑保存在后臺入口文件中。在其中一個實施例中,所述根據所述劫持函數的運行結果判斷是否禁止執行所述網絡訪問函數,包括:獲取所述網絡訪問函數中的網絡信息;根據所述網絡信息,調用外部服務程序,并根據所述外部服務程序的運行結果判斷是否禁止執行所述網絡訪問函數。在其中一個實施例中,所述調用外部服務程序,包括:查找預設的控制網絡庫;所述根據所述網絡信息,調用外部服務程序,并根據所述外部服務程序的運行結果判斷是否禁止執行所述網絡訪問函數,包括:根據所述網絡信息,查找預設的控制網絡庫,若預設的控制網絡庫的查找結果為禁止執行所述網絡訪問函數,則不執行所述網絡訪問函數;若預設的控制網絡庫的查找結果為不禁止執行所述網絡訪問函數,則調用所述動態庫中的網絡訪問函數。在其中一個實施例中,所述方法還包括:若預設的控制網絡庫的查找結果為不禁止執行所述網絡訪問函數且監控所述網絡訪問函數,則調用所述動態庫中的網絡訪問函數,并對所述網絡訪問函數進行監控。本專利技術所提供的Linux網絡訪問控制方法,能夠在Linux系統中針對不同的應用程序劫持所述應用程序的網絡訪問函數,并根據所述劫持函數的運行結果判斷是否對網絡訪問進行控制,提高網絡訪問控制的靈活性。在其中一個實施例中,本專利技術所提供的Linux網絡訪問控制方法,能夠通過外部服務程序對需要進行控制的應用程序進行定義及維護,提供了靈活方便的針對Linux系統網絡訪問的控制。本專利技術還提供一種Linux網絡訪問控制裝置,包括:應用程序接收模塊,用于接收應用程序的運行命令,并獲取應用程序的標識;函數加載模塊,用于加載預設的劫持函數庫和動態庫;函數識別模塊,用于運行所述應用程序并識別所述應用程序中的網絡訪問函數;訪問控制模塊,用于根據所述操作函數和所述應用程序的標識查找所述劫持函數庫,所述劫持函數庫包括所述網絡訪問函數、所述應用程序的標識和劫持函數之間的對應關系,若查找到與所述網絡訪問函數和所述應用程序的標識對應的劫持函數,則運行所述劫持函數,并根據所述劫持函數的運行結果判斷是否調用所述動態庫中的網絡訪問函數。在其中一個實施例中,函數加載模塊,用于加載預設的劫持函數庫,且所述劫持函數庫的絕對路徑保存在后臺入口文件中。在其中一個實施例中,所述訪問控制模塊,包括:網絡信息獲取單元,用于獲取所述網絡訪問函數中的網絡信息;訪問控制單元,用于根據所述網絡信息,調用外部服務程序,并根據所述外部服務程序的運行結果判斷是否禁止執行所述網絡訪問函數。在其中一個實施例中,所述調用外部服務程序,包括查找預設的控制網絡庫;所述訪問控制單元,用于根據所述網絡信息,查找預設的控制網絡庫,若預設的控制網絡庫的查找結果為禁止執行所述網絡訪問函數,則不執行所述網絡訪問函數;若預設的控制網絡庫的查找結果為不禁止執行所述網絡訪問函數,則調用所述動態庫中的網絡訪問函數。在其中一個實施例中,所述訪問控制單元,還用于若預設的控制網絡庫的查找結果為不禁止執行所述網絡訪問函數且監控所述網絡訪問函數,則調用所述動態庫中的網絡訪問函數,并對所述網絡訪問函數進行監控。本專利技術所提供的Linux網絡訪問控制裝置,能夠在Linux系統中針對不同的應用程序劫持所述應用程序的網絡訪問函數,并根據所述劫持函數的運行結果判斷是否對網絡訪問進行控制,提高網絡訪問控制的靈活性。在其中一個實施例中,本專利技術所提供的Linux網絡訪問控制裝置能夠通過外部服務程序對需要進行控制的應用程序進行定義及維護,提供了靈活方便的針對Linux系統網絡訪問的控制。附圖說明圖1為一個實施例中的Linux網絡訪問控制方法的流程圖;圖2為一個實施例中的Linux網絡訪問控制方法中劫持庫的位置示意圖;圖3為另一個實施例中的Linux網絡訪問控制方法的流程圖;圖4為又一個實施例中的Linux網絡訪問控制方法的流程圖;圖5為一個實施例中的Linux網絡訪問控制裝置的結構圖;圖6為另一個實施例中的Linux網絡訪問控制裝置的結構圖。具體實施方式圖1為一個實施例中的Linux網絡訪問控制方法的流程圖,如圖1所示的一個實施例中的Linux網絡訪問控制方法,包括:步驟S100,接收應用程序的運行命令,并獲取應用程序的標識。具體的,所述應用程序的標識是指用于區分不同應用程序的記號,或區分不同應用程序的特征的標記,包括應用程序的程序類別、名稱、版本號中的任意一種。步驟S200,加載預設的劫持函數庫和動態庫。具體的,所述預設的劫持函數庫,包括open系列函數,close函數,create系列函數,read函數,write函數,socket操作系列函數(socket,listen,bind,connect,send,recieve等),kill函數等。系統首先加載所述劫持函數庫,再加載動態庫,即常用的C庫。如圖2所示,本實施例所提供的劫持庫,加載后在Linux系統中位置。如圖2所示,在用戶應用層之下,劫持庫位于動態庫更加靠近用戶應用層的位置,以表示劫持庫中的劫持函數優先被調用,如劫持庫中沒有相應的劫持函數,則調用動態庫中的函數。圖2中,劫持庫和動態庫都連接到Linux底層的內核部分。不再贅述。步驟S300,運行所述應用程序并識別所述應用程序中的網絡訪問函數。具體的,運行所述應用程序后,對程序中的網路訪問函數進行識別,當識別到網絡訪問函數時,即進行后續本文檔來自技高網...

【技術保護點】
一種Linux網絡訪問控制方法,其特征在于,所述方法包括:接收應用程序的運行命令,并獲取應用程序的標識;加載預設的劫持函數庫和動態庫;運行所述應用程序并識別所述應用程序中的網絡訪問函數;根據所述操作函數和所述應用程序的標識查找所述劫持函數庫,所述劫持函數庫包括所述網絡訪問函數、所述應用程序的標識和劫持函數之間的對應關系,若查找到與所述網絡訪問函數和所述應用程序的標識對應的劫持函數,則運行所述劫持函數,并根據所述劫持函數的運行結果判斷是否調用所述動態庫中的網絡訪問函數。
【技術特征摘要】
1.一種Linux網絡訪問控制方法,其特征在于,所述方法包括:接收應用程序的運行命令,并獲取應用程序的標識;加載預設的劫持函數庫和動態庫;運行所述應用程序并識別所述應用程序中的網絡訪問函數;根據所述操作函數和所述應用程序的標識查找所述劫持函數庫,所述劫持函數庫包括所述網絡訪問函數、所述應用程序的標識和劫持函數之間的對應關系,若查找到與所述網絡訪問函數和所述應用程序的標識對應的劫持函數,則運行所述劫持函數,并根據所述劫持函數的運行結果判斷是否調用所述動態庫中的網絡訪問函數。2.根據權利要求1所述的Linux網絡訪問控制方法,其特征在于:所述劫持函數庫的絕對路徑保存在后臺入口文件中。3.根據權利要求1所述的Linux網絡訪問控制方法,其特征在于,所述根據所述劫持函數的運行結果判斷是否禁止執行所述網絡訪問函數,包括:獲取所述網絡訪問函數中的網絡信息;根據所述網絡信息,調用外部服務程序,并根據所述外部服務程序的運行結果判斷是否禁止執行所述網絡訪問函數。4.根據權利要求3所述的Linux網絡訪問控制方法,其特征在于,所述調用外部服務程序,包括:查找預設的控制網絡庫;所述根據所述網絡信息,調用外部服務程序,并根據所述外部服務程序的運行結果判斷是否禁止執行所述網絡訪問函數,包括:根據所述網絡信息,查找預設的控制網絡庫,若預設的控制網絡庫的查找結果為禁止執行所述網絡訪問函數,則不執行所述網絡訪問函數;若預設的控制網絡庫的查找結果為不禁止執行所述網絡訪問函數,則調用所述動態庫中的網絡訪問函數。5.根據權利要求4所述的Linux網絡訪問控制方法,其特征在于,所述方法還包括:若預設的控制網絡庫的查找結果為不禁止執行所述網絡訪問函數且監控所述網絡訪問函數,則調用所述動態庫中的網絡訪問函數,并對所述網絡訪問函數進行監控。6.一種Lin...
【專利技術屬性】
技術研發人員:劉思宇,
申請(專利權)人:北京瑞星信息技術股份有限公司,
類型:發明
國別省市:北京,11
還沒有人留言評論。發表了對其他瀏覽者有用的留言會獲得科技券。