本發(fā)明屬于一種操作系統(tǒng)安全保護方法。
背景技術:
目前黑客攻擊層出不窮,甚至愈演愈烈,針對網絡、操作系統(tǒng)、應用等各個層面的攻擊行為,最終目的是為了獲取主機中的資源和權限。對用戶來說核心是保護操作系統(tǒng)中的數據信息,保障操作系統(tǒng)安全是信息安全的基礎。
目前的操作系統(tǒng)環(huán)境下,使用超級用戶登陸可以控制任何應用系統(tǒng),每個應用系統(tǒng)之間無法做到完全隔離,如果擁有超級用戶的權限,就意味著可以在服務器中做任何事情,數據的保密性和完整性根本無法保證,更無法滿足信息系統(tǒng)安全要求。同時,如果操作系統(tǒng)中某一應用出現漏洞,就可能導致整個操作系統(tǒng)淪陷,從而讓整個服務器數據信息遭到破壞和竊取。
當前國內使用的操作系統(tǒng)主要是來自國外(如Windows/Linux/Unix),系統(tǒng)漏洞一直影響操作系統(tǒng)的安全,而系統(tǒng)漏洞是當初設計操作系統(tǒng)時有意或無意留下的缺陷,黑客根據危害程度不同的漏洞發(fā)動攻擊,輕則可以獲取系統(tǒng)敏感信息,重則可以獲取系統(tǒng)控制權限。
目前修復漏洞主要的途徑是通過更新廠商(如Microsoft、SUN、IBM、HP等)提供的補丁。由于多數商業(yè)服務器操作系統(tǒng)不開源,即使知道漏洞產生的原因,也不能對操作系統(tǒng)源碼進行修改并重新編譯;而開源的Linux操作系統(tǒng)出現漏洞,絕大多數用戶也無技術能力進行漏洞修復。所以一旦發(fā)現漏洞,只能完全依賴廠商發(fā)布補丁,如果在廠商未出補丁或維護人員沒有安裝補丁這段時間內遭受攻擊,操作系統(tǒng)將會面臨嚴重威脅。
在國內,當前很多實際的安全操作系統(tǒng)已經被設計和開發(fā)出來。其中,最為重要的是基于Flask體系結構的動態(tài)策略安全操作系統(tǒng),以及隨后出現的迄今最有影響力的安全操作系統(tǒng)Security Linux和它的實現機制LSM(Linux Security Modle)。
Flask體系結構由客體管理器和安全服務器組成,優(yōu)點是將策略實施與策略決策分開。主要目標是提供安全策略的靈活和可變通性,支持動態(tài)策略,在一個系統(tǒng)的安全策略需要修改的時候,不需要修改引用監(jiān)控器等其他關鍵組件,而只需要更新安全策略服務器中存儲的策略即可。
LSM采取了系統(tǒng)鉤子函數的方法來控制系統(tǒng)對核心客體(如進程、節(jié)點、打開文件、IPC等)的存取訪問。每當系統(tǒng)通過了Linux系統(tǒng)自帶的自主訪問控制DAC策略檢查而試圖對一個客體進行訪問時,借助于插入到核心代碼中的鉤子函數來仲裁對該客體的訪問。LSM并不為該函數提供具體的實現,僅僅是調用掛在它上面的某個具體安全模塊的函數。主體是否能對客體進行訪問完全取決于具體的安全模塊函數,安全模塊根據自己的安全策略來判斷訪問請求是通過還是拒絕并強制返回一個錯誤碼。
現有的安全操作系統(tǒng)在訪問控制方面表現不錯,但是在系統(tǒng)資源統(tǒng)一管理、進程名單管控、文件最小特權訪問、防火墻動態(tài)策略更新和進程運行域管理方面存在缺陷:系統(tǒng)資源管理與操作系統(tǒng)耦合度較低,不能依據資源狀態(tài)感知系統(tǒng)安全;進程管控依賴鉤子函數,沒有將安全模塊完整內嵌進入系統(tǒng)內核;文件管理采用自主訪問控制,沒有啟用強制訪問控制策略;防火墻策略需要手動配置,不能實時更新。
技術實現要素:
發(fā)明目的:為了克服現有Linux操作系統(tǒng)在系統(tǒng)資源管理、進程管理、防火墻管理、用戶管理、文件管理、日志安全審計以及狀態(tài)監(jiān)控等方面不足的問題,本發(fā)明專利提供了一套采用黑白灰名單制管理的Linux操作系統(tǒng)安全保障方案。
技術方案:
本發(fā)明專利為了解決上述技術問題所采用的總體技術方案如下:通過重新編譯內核,將安全保障模塊嵌入在Linux系統(tǒng)內核中,在Linux系統(tǒng)內核加載階段即加載系統(tǒng)安全模塊,保證安全模塊處于內核級運行狀態(tài),不會被其他模塊關閉或者卸載。
所述安全模塊包括安全策略執(zhí)行模塊、安全策略仲裁模塊、安全日志記錄模塊以及自身保護模塊,安全策略執(zhí)行模塊將所有用戶請求加以攔截并提交安全策略仲裁模塊進行仲裁,當安全策略仲裁模塊仲裁為允許時,安全策略執(zhí)行模塊放行該請求,當安全策略仲裁模塊仲裁為禁止時,安全策略執(zhí)行模塊禁止該請求;用戶請求運行結束后,系統(tǒng)先將運行結果返回安全模塊,由安全模塊記錄信息后返回給用戶結果;系統(tǒng)運行全過程中,自身保護模塊實時檢測安全模塊運行狀態(tài),一旦發(fā)現安全模塊運行出錯立即凍結系統(tǒng)狀態(tài),檢查并重新運行安全模塊,直到安全模塊恢復后再恢復系統(tǒng)狀態(tài);安全日志記錄模塊記錄系統(tǒng)全部操作日志,實時備份操作日志并加密。
進一步的,在本發(fā)明中,所述安全模塊對用戶進程、系統(tǒng)防火墻、系統(tǒng)資源、文件系統(tǒng)均采用建立黑白灰名單進行管理:
對于用戶進程,安全模塊為用戶進程建立用戶進程白名單、黑名單和灰名單,當系統(tǒng)試圖運行某個進程時,安全模塊對該用戶進程進行仲裁:針對屬于進程白名單中的用戶進程,安全模塊允許系統(tǒng)調用該用戶進程,并提醒用戶該用戶進程已經運行;針對屬于進程黑名單中的用戶進程,安全模塊禁止系統(tǒng)調用該用戶進程,并提醒用戶該用戶進程已經禁止運行;針對屬于進程灰名單中的用戶進程,安全模塊定期詢問用戶是否允許該用戶進程運行,如果用戶許可運行,則將其從用戶進程灰名單中刪除并加入用戶進程白名單中,如果用戶不允許運行,則將其從用戶進程灰名單中刪除并加入用戶進程黑名單中;
對任意一個用戶進程,當該用戶進程首次運行時,安全模塊針對該用戶進程記錄用戶進程的狀態(tài),包括:文件讀寫、進程調用、運行線程和網絡訪問,后續(xù)該用戶進程再次運行時,若發(fā)現有與首次運行時記錄的用戶進程的狀態(tài)不同的行為,則將該用戶進程放入用戶進程灰名單中,并提醒用戶該用戶進程的越權行為,并再次請求用戶許可;
對于系統(tǒng)防火墻,安全模塊為用戶進程的網絡訪問請求建立系統(tǒng)防火墻白名單、黑名單和灰名單,設置初始的系統(tǒng)防火墻策略為禁止所有的內外部網絡訪問請求;當某個用戶進程試圖訪問網絡時,安全模塊對該網絡訪問請求進行仲裁:針對屬于系統(tǒng)防火墻白名單中的網絡訪問請求,安全模塊允許該網絡訪問請求,并更新系統(tǒng)防火墻策略,將該網絡訪問請求所對應的防火墻策略加入系統(tǒng)防火墻策略表,并提醒用戶已經放行該網絡訪問請求,當該網絡訪問請求結束時,立即再次更新系統(tǒng)防火墻策略,將該網絡訪問請求所對應的防火墻策略從系統(tǒng)防火墻策略表中移除;針對屬于系統(tǒng)防火墻黑名單中的網絡訪問請求,安全模塊阻止該網絡訪問請求,并提醒用戶已經禁止該網絡訪問請求;針對屬于系統(tǒng)防火墻灰名單中的網絡訪問請求,安全模塊實時詢問用戶是否許可該網絡訪問請求,若用戶許可,則將該網絡訪問請求加入系統(tǒng)防火墻白名單,若用戶不許可,則將該網絡訪問請求加入系統(tǒng)防火墻黑名單;
對任意一個網絡訪問請求,當其在首次加入系統(tǒng)防火墻白名單時,安全模塊針對網絡訪問請求記錄該網絡訪問請求的狀態(tài),包括:IP地址、端口號、協(xié)議以及調用后運行的時間和流量消耗統(tǒng)計,在后續(xù)該網絡訪問請求再次請求時,若發(fā)現有與首次加入系統(tǒng)防火墻白名單時所記錄的該網絡訪問請求的狀態(tài)不同的行為,則重新將網絡訪問請求放入系統(tǒng)防火墻灰名單中,并提醒用戶該網絡訪問請求的越權行為,再次請求用戶許可;
對于系統(tǒng)資源,安全模塊建立包括CPU占用率、內存占用率、硬盤占用率在內的系統(tǒng)資源表,實時監(jiān)控查詢各類系統(tǒng)資源占用情況;同時,為用戶進程建立系統(tǒng)資源占用白名單、黑名單和灰名單,系統(tǒng)資源占用白名單、黑名單和灰名單中分別記錄位于其中的用戶進程對于各個類型系統(tǒng)資源的最大請求數目,許可范圍為每類系統(tǒng)資源的最大請求數目不超過該類系統(tǒng)資源總體的50%,針對系統(tǒng)資源占用白名單中的用戶進程所請求的系統(tǒng)資源占用給予放行,針對系統(tǒng)資源占用黑名單中的用戶進程所請求的系統(tǒng)資源請求禁止運行,針對系統(tǒng)資源占用灰名單中的用戶進程所請求的系統(tǒng)資源請求主動問詢用戶是否放行;
對于任意一個用戶進程首次運行時,安全模塊記錄該用戶進程的資源請求狀態(tài)和資源訪問,并不斷監(jiān)控后續(xù)該用戶進程運行時對系統(tǒng)資源的占用情況,并根據其運行狀態(tài)動態(tài)調整系統(tǒng)資源占用,一旦某次調整前后的可占用系統(tǒng)資源的百分比的差值超過5%,則重新將該用戶進程放入系統(tǒng)資源占用灰名單中,并提醒用戶該用戶進程的越權行為,再次請求用戶許可;
一旦出現總體系統(tǒng)資源異常情況,則主動凍結系統(tǒng)狀態(tài),逐一檢查系統(tǒng)資源占用情況,將出現異常資源占用的用戶進程從系統(tǒng)資源占用白名單中移除并放入系統(tǒng)資源占用灰名單,然后恢復系統(tǒng)運行,同時提醒用戶這一異常,如果用戶許可,再將該用戶進程重新加入系統(tǒng)資源占用白名單中;
對于文件系統(tǒng),安全模塊建立文件系統(tǒng)管理表,實時監(jiān)控查詢文件系統(tǒng)讀寫情況;同時,為用戶進程建立文件讀寫請求白名單、黑名單和灰名單,采用最小特權許可的文件訪問請求,針對文件讀寫請求白名單中的用戶進程的文件讀寫請求給予放行,針對文件讀寫請求黑名單中的用戶進程的文件讀寫請求禁止運行,針對文件讀寫請求灰名單中的用戶進程的文件讀寫請求主動問詢用戶是否放行,直到用戶許可后才會放行該文件讀寫請求;
對于任意一個用戶進程首次運行時,安全模塊記錄該用戶進程的文件請求狀態(tài)和文件訪問狀態(tài),包括:文件名、讀寫請求、文件屬性、文件大小變動,并不斷監(jiān)控后續(xù)該用戶進程運行時對文件請求的使用情況,一旦出現異常讀寫情況,則重新將用戶進程放入文件讀寫請求灰名單中,并提醒用戶該用戶進程的越權行為,再次請求用戶許可;
一旦出現總體文件系統(tǒng)異常情況,安全模塊主動凍結系統(tǒng)狀態(tài),逐一檢查文件系統(tǒng)訪問情況,將出現異常文件訪問的用戶進程從文件讀寫請求白名單中移除并加入文件讀寫請求灰名單中,然后恢復系統(tǒng)運行,同時提醒用戶這一異常,如果用戶許可,再重新將該用戶進程從文件讀寫請求灰名單中移除并加入文件讀寫請求白名單中;
安全模塊針對所有用戶進程建立單獨的運行用戶、創(chuàng)建獨立的用戶名,并設定專用運行域,專用運行域中記錄的內容包括該用戶進程可調用的其他用戶進程或系統(tǒng)進程、可請求的線程數目、可占用的系統(tǒng)資源類型和數量、可使用的網絡訪問請求以及可訪問文件區(qū)域;初始化專用運行域,建立前述用戶進程、系統(tǒng)防火墻、系統(tǒng)資源、文件系統(tǒng)4種黑白灰名單,將4種黑白灰名單中的成員首先全部加入至各自對應的灰名單中,后續(xù)根據用戶對于每一項請求的許可或者禁止情況再加入各自對應的白名單或者黑名單中;
情況1:用戶進程第一次運行時,將其從用戶進程灰名單加入用戶進程白名單、從系統(tǒng)資源占用灰名單加入系統(tǒng)資源占用白名單中,然后許可該用戶進程運行;如果整個運行過程中,該用戶進程不產生網絡訪問且系統(tǒng)資源占用不超過許可范圍,同時不產生文件系統(tǒng)的讀寫,則不產生其他名單變化;
情況2:若情況1中的用戶進程運行產生了網絡訪問請求,則記錄該用戶進程的運行狀態(tài),并臨時停止該用戶進程,同時將該用戶進程分別從用戶進程白名單移入用戶進程灰名單、從系統(tǒng)資源占用白名單移入系統(tǒng)資源占用灰名單;如果用戶允許該網絡訪問請求,則恢復該用戶進程的運行狀態(tài)并將該用戶進程分別從用戶進程灰名單中移入用戶進程白名單、從系統(tǒng)資源占用灰名單移入系統(tǒng)資源占用白名單,并將該網絡訪問請求加入系統(tǒng)防火墻白名單;如果用戶禁止該網絡訪問請求,則將該用戶進程完全停止,并將其分別從用戶進程灰名單移入用戶進程黑名單、從系統(tǒng)資源占用灰名單移入系統(tǒng)資源占用黑名單;
情況3:若情況1中的用戶進程運行產生了文件讀寫請求,則記錄該用戶進程的運行狀態(tài),并臨時停止該用戶進程,同時將該用戶進程分別從用戶進程白名單移入用戶進程灰名單、從系統(tǒng)資源占用白名單移入系統(tǒng)資源占用灰名單;如果該用戶進程產生過情況2中的網絡訪問請求,將該用戶進程的網絡訪問請求從系統(tǒng)防火墻白名單移入系統(tǒng)防火墻灰名單;如果用戶允許該用戶進程進行文件讀寫,則恢復該用戶進程的運行狀態(tài),并將用戶進程分別從用戶進程灰名單移入用戶進程白名單、從系統(tǒng)資源占用灰名單移入用戶進程白名單;如果該用戶進程產生了情況2中的網絡訪問請求,則將該用戶進程的網絡訪問請求從系統(tǒng)防火墻灰名單移入系統(tǒng)防火墻白名單,并將該用戶進程從文件讀寫請求灰名單移入文件讀寫請求白名單;如果用戶禁止該用戶進程進行文件讀寫,則將該用戶進程停止,并將該用戶進程分別從用戶進程灰名單移入用戶進程黑名單、從系統(tǒng)資源占用灰名單移入系統(tǒng)資源占用黑名單,將該用戶進程的網絡訪問請求從系統(tǒng)防火墻灰名單移入系統(tǒng)防火墻黑名單;
情況4:若情況1中的用戶進程在情況2中描述的網絡訪問請求發(fā)生并被用戶允許后再一次發(fā)生網絡訪問請求,若本次網絡訪問請求與情況2中的網絡訪問請求的IP或者端口不同,則將本次該用戶進程的網絡訪問請求從系統(tǒng)防火墻白名單移入系統(tǒng)防火墻灰名單;如果用戶允許了該用戶進程的本次網絡訪問請求,將該用戶進程的本次網絡訪問請求從系統(tǒng)防火墻灰名單移入系統(tǒng)防火墻白名單,并允許該用戶進程的本次網絡訪問請求;如果用戶禁止了該用戶進程的本次網絡訪問請求,則將該用戶進程的本次網絡訪問請求從系統(tǒng)防火墻灰名單移入系統(tǒng)防火墻黑名單中,并禁止該用戶進程的本次網絡訪問請求;
情況5:若情況1中的用戶進程在情況3中描述的文件讀寫請求發(fā)生并被用戶允許后再一次發(fā)生文件讀寫請求,若本次文件讀寫請求與情況3中的文件讀寫請求不同,則將本次文件讀寫請求的用戶進程加入文件讀寫請求灰名單;如果用戶允許了該用戶進程的本次文件讀寫請求,將本次文件讀寫請求的用戶進程從文件讀寫請求灰名單移入文件讀寫請求白名單,并允許該用戶進程的本次文件讀寫請求;如果用戶禁止了該用戶進程的本次文件讀寫請求,將本次文件讀寫請求的用戶進程從文件讀寫請求灰名單移入文件讀寫請求黑名單,并禁止該用戶進程的本次文件讀寫請求。
進一步的,在本發(fā)明中,安全模塊針對系統(tǒng)運行日志和安全日志進行實時審計,建立專用的日志審計管理用戶,非審計用戶不能刪除、修改日志;同時,在系統(tǒng)多個位置建立日志存儲區(qū)域,實時同步記錄完整日志,并采用高級加密標準AES對日志進行加密。
有益效果:
本發(fā)明的面向Linux操作系統(tǒng)的主動安全保障方法作為可以獨立運行的安全模塊將嵌入系統(tǒng)內核,與操作系統(tǒng)緊密結合,克服現有Linux操作系統(tǒng)在系統(tǒng)資源管理、進程管理、防火墻管理、用戶管理、文件管理、日志安全審計以及狀態(tài)監(jiān)控等方面不足的問題,采用多模塊工作方式,將策略執(zhí)行、策略仲裁、策略保存、日志記錄相互獨立,確保系統(tǒng)正常工作;具體優(yōu)點如下:
本發(fā)明專利在系統(tǒng)資源管理方面,改進了原有Linux系統(tǒng)不能統(tǒng)一管理系統(tǒng)資源的缺陷,采用內核嵌入模塊方式進行實時系統(tǒng)資源接口查詢和管理,能夠實時檢測并統(tǒng)一管理系統(tǒng)資源。
本發(fā)明專利在進程管理方面,改進了原有Linux系統(tǒng)不能實時檢測并分析進程的缺陷,能夠實時檢測并設計了進程黑白灰名單機制,針對進程行為進行分析,能夠方便安全保證系統(tǒng)進程安全;
本發(fā)明專利在防火墻管理方面,改進了原有Linux系統(tǒng)不能夠實時動態(tài)更新策略的缺陷,能夠實時動態(tài)更新系統(tǒng)防火墻策略并針對系統(tǒng)進程設計防火墻黑白名單進行分析,保證操作系統(tǒng)網絡安全。
本發(fā)明專利在用戶管理方面,改進了原有Linux系統(tǒng)用戶管理策略不能動態(tài)改進的缺陷,將所有的用戶進程建立不同的用戶和運行域,保證所有的用戶進程運行在單獨的用戶名下并設立獨立的運行域,保證用戶權限安全和用戶隱私安全;
本發(fā)明專利在文件管理方面,改進了原有Linux系統(tǒng)文件訪問時沒有專門的用戶訪問權限管理機制的缺陷,采用最小權限機制實現安全文件訪問;
本發(fā)明專利在日志安全審計方面,改進了原有Linux系統(tǒng)僅能記錄日志,沒有安全分析,沒有日志安全保障的缺陷,能夠實現安全日志獨立審計和獨立存儲,對系統(tǒng)日志進行安全分析,查看各類安全事件。
附圖說明
圖1為本發(fā)明的各部分之間結構示意圖;
圖2為本發(fā)明的流程示意圖。
具體實施方式
下面結合附圖對本發(fā)明做更進一步的解釋。
本發(fā)明的安全保障方法提供了一種全局安全策略,主要包括以下9個方面:
1、重新編譯內核,將安全保障模塊嵌入在Linux內核中。
2、在Linux系統(tǒng)內核加載階段即加載系統(tǒng)安全模塊。
3、安全策略執(zhí)行模塊將所有用戶請求(包括進程執(zhí)行、網絡訪問、文件讀寫等)加以攔截并提交安全策略仲裁進行判斷。
4、策略仲裁為白名單項目時,執(zhí)行模塊放行該請求。
5、策略仲裁為黑名單項目時,執(zhí)行模塊會禁止該請求。
6、策略仲裁為灰名單項目時,執(zhí)行模塊會禁止該請求,然后請求用戶是否允許該請求。如果用戶許可,加入白名單,如果用戶禁止,加入黑名單。
7、運行結束后,系統(tǒng)將運行結果返回安全模塊,由安全模塊記錄信息后返回給用戶結果。
8、系統(tǒng)運行全過程中,自身保護模塊實時檢測安全模塊運行狀態(tài),一旦發(fā)現安全模塊運行出錯會立即凍結系統(tǒng)狀態(tài),檢查并重新運行安全模塊功能,直到安全模塊恢復后恢復系統(tǒng)狀態(tài)。
9、系統(tǒng)運行全過程中,安全日志記錄模塊記錄系統(tǒng)全部操作日志,多個位置實時備份日志并加密。
具體來說,所述安全模塊對用戶進程、系統(tǒng)防火墻、系統(tǒng)資源、文件系統(tǒng)均采用建立黑白灰名單進行管理:
對于用戶進程,安全模塊為用戶進程建立用戶進程白名單、黑名單和灰名單,當系統(tǒng)試圖運行某個進程時,安全模塊對該用戶進程進行仲裁:針對屬于進程白名單中的用戶進程,安全模塊允許系統(tǒng)調用該用戶進程,并提醒用戶該用戶進程已經運行;針對屬于進程黑名單中的用戶進程,安全模塊禁止系統(tǒng)調用該用戶進程,并提醒用戶該用戶進程已經禁止運行;針對屬于進程灰名單中的用戶進程,安全模塊定期詢問用戶是否允許該用戶進程運行,如果用戶許可運行,則將其從用戶進程灰名單中刪除并加入用戶進程白名單中,如果用戶不允許運行,則將其從用戶進程灰名單中刪除并加入用戶進程黑名單中;
對任意一個用戶進程,當該用戶進程首次運行時,安全模塊針對該用戶進程記錄用戶進程的狀態(tài),包括:文件讀寫、進程調用、運行線程和網絡訪問,后續(xù)該用戶進程再次運行時,若發(fā)現有與首次運行時記錄的用戶進程的狀態(tài)不同的行為,則將該用戶進程放入用戶進程灰名單中,并提醒用戶該用戶進程的越權行為,并再次請求用戶許可;
對于系統(tǒng)防火墻,安全模塊為用戶進程的網絡訪問請求建立系統(tǒng)防火墻白名單、黑名單和灰名單,設置初始的系統(tǒng)防火墻策略為禁止所有的內外部網絡訪問請求;當某個用戶進程試圖訪問網絡時,安全模塊對該網絡訪問請求進行仲裁:針對屬于系統(tǒng)防火墻白名單中的網絡訪問請求,安全模塊允許該網絡訪問請求,并更新系統(tǒng)防火墻策略,將該網絡訪問請求所對應的防火墻策略加入系統(tǒng)防火墻策略表,并提醒用戶已經放行該網絡訪問請求,當該網絡訪問請求結束時,立即再次更新系統(tǒng)防火墻策略,將該網絡訪問請求所對應的防火墻策略從系統(tǒng)防火墻策略表中移除;針對屬于系統(tǒng)防火墻黑名單中的網絡訪問請求,安全模塊阻止該網絡訪問請求,并提醒用戶已經禁止該網絡訪問請求;針對屬于系統(tǒng)防火墻灰名單中的網絡訪問請求,安全模塊實時詢問用戶是否許可該網絡訪問請求,若用戶許可,則將該網絡訪問請求加入系統(tǒng)防火墻白名單,若用戶不許可,則將該網絡訪問請求加入系統(tǒng)防火墻黑名單;
對任意一個網絡訪問請求,當其在首次加入系統(tǒng)防火墻白名單時,安全模塊針對網絡訪問請求記錄該網絡訪問請求的狀態(tài),包括:IP地址、端口號、協(xié)議以及調用后運行的時間和流量消耗統(tǒng)計,在后續(xù)該網絡訪問請求再次請求時,若發(fā)現有與首次加入系統(tǒng)防火墻白名單時所記錄的該網絡訪問請求的狀態(tài)不同的行為,則重新將網絡訪問請求放入系統(tǒng)防火墻灰名單中,并提醒用戶該網絡訪問請求的越權行為,再次請求用戶許可;
對于系統(tǒng)資源,安全模塊建立包括CPU占用率、內存占用率、硬盤占用率在內的系統(tǒng)資源表,實時監(jiān)控查詢各類系統(tǒng)資源占用情況;同時,為用戶進程建立系統(tǒng)資源占用白名單、黑名單和灰名單,系統(tǒng)資源占用白名單、黑名單和灰名單中分別記錄位于其中的用戶進程對于各個類型系統(tǒng)資源的最大請求數目,許可范圍為每類系統(tǒng)資源的最大請求數目不超過該類系統(tǒng)資源總體的50%,針對系統(tǒng)資源占用白名單中的用戶進程所請求的系統(tǒng)資源占用給予放行,針對系統(tǒng)資源占用黑名單中的用戶進程所請求的系統(tǒng)資源請求禁止運行,針對系統(tǒng)資源占用灰名單中的用戶進程所請求的系統(tǒng)資源請求主動問詢用戶是否放行;
對于任意一個用戶進程首次運行時,安全模塊記錄該用戶進程的資源請求狀態(tài)和資源訪問,包括CPU占用率、內存占用率、硬盤占用率,并不斷監(jiān)控后續(xù)該用戶進程運行時對系統(tǒng)資源的占用情況,并根據其運行狀態(tài)動態(tài)調整系統(tǒng)資源占用,一旦某次調整前后的可占用系統(tǒng)資源的百分比的差值超過5%,則重新將該用戶進程放入系統(tǒng)資源占用灰名單中,并提醒用戶該用戶進程的越權行為,再次請求用戶許可;
一旦出現總體系統(tǒng)資源異常情況,則主動凍結系統(tǒng)狀態(tài),逐一檢查系統(tǒng)資源占用情況,將出現異常資源占用的用戶進程從系統(tǒng)資源占用白名單中移除并放入系統(tǒng)資源占用灰名單,然后恢復系統(tǒng)運行,同時提醒用戶這一異常,如果用戶許可,再將該用戶進程重新加入系統(tǒng)資源占用白名單中;
對于文件系統(tǒng),安全模塊建立文件系統(tǒng)管理表,實時監(jiān)控查詢文件系統(tǒng)讀寫情況;同時,為用戶進程建立文件讀寫請求白名單、黑名單和灰名單,采用最小特權許可的文件訪問請求,針對文件讀寫請求白名單中的用戶進程的文件讀寫請求給予放行,針對文件讀寫請求黑名單中的用戶進程的文件讀寫請求禁止運行,針對文件讀寫請求灰名單中的用戶進程的文件讀寫請求主動問詢用戶是否放行,直到用戶許可后才會放行該文件讀寫請求;
對于任意一個用戶進程首次運行時,安全模塊記錄該用戶進程的文件請求狀態(tài)和文件訪問狀態(tài),包括:文件名、讀寫請求、文件屬性、文件大小變動,并不斷監(jiān)控后續(xù)該用戶進程運行時對文件請求的使用情況,一旦出現異常讀寫情況,則重新將用戶進程放入文件讀寫請求灰名單中,并提醒用戶該用戶進程的越權行為,再次請求用戶許可;
一旦出現總體文件系統(tǒng)異常情況,安全模塊主動凍結系統(tǒng)狀態(tài),逐一檢查文件系統(tǒng)訪問情況,將出現異常文件訪問的用戶進程從文件讀寫請求白名單中移除并加入文件讀寫請求灰名單中,然后恢復系統(tǒng)運行,同時提醒用戶這一異常,如果用戶許可,再重新將該用戶進程從文件讀寫請求灰名單中移除并加入文件讀寫請求白名單中;
安全模塊針對所有用戶進程建立單獨的運行用戶、創(chuàng)建獨立的用戶名,并設定專用運行域,專用運行域中記錄的內容包括該用戶進程可調用的其他用戶進程或系統(tǒng)進程、可請求的線程數目、可占用的系統(tǒng)資源類型和數量、可使用的網絡訪問請求以及可訪問文件區(qū)域;初始化專用運行域,建立前述用戶進程、系統(tǒng)防火墻、系統(tǒng)資源、文件系統(tǒng)4種黑白灰名單,將4種黑白灰名單中的成員首先全部加入至各自對應的灰名單中,后續(xù)根據用戶對于每一項請求的許可或者禁止情況再加入各自對應的白名單或者黑名單中;
情況1:用戶進程第一次運行時,將其從用戶進程灰名單加入用戶進程白名單、從系統(tǒng)資源占用灰名單加入系統(tǒng)資源占用白名單中,然后許可該用戶進程運行;如果整個運行過程中,該用戶進程不產生網絡訪問且系統(tǒng)資源占用不超過許可范圍,同時不產生文件系統(tǒng)的讀寫,則不產生其他名單變化;
情況2:若情況1中的用戶進程運行產生了網絡訪問請求,則記錄該用戶進程的運行狀態(tài),包括:IP地址、端口號,協(xié)議,以及調用后運行的時間和流量消耗統(tǒng)計,并臨時停止該用戶進程,同時將該用戶進程分別從用戶進程白名單移入用戶進程灰名單、從系統(tǒng)資源占用白名單移入系統(tǒng)資源占用灰名單;如果用戶允許該網絡訪問請求,則恢復該用戶進程的運行狀態(tài)并將該用戶進程分別從用戶進程灰名單中移入用戶進程白名單、從系統(tǒng)資源占用灰名單移入系統(tǒng)資源占用白名單,并將該網絡訪問請求加入系統(tǒng)防火墻白名單;如果用戶禁止該網絡訪問請求,則將該用戶進程完全停止,并將其分別從用戶進程灰名單移入用戶進程黑名單、從系統(tǒng)資源占用灰名單移入系統(tǒng)資源占用黑名單;
情況3:若情況1中的用戶進程運行產生了文件讀寫請求,則記錄該用戶進程的運行狀態(tài),包括:文件名、讀寫請求、文件屬性、文件大小變動,并臨時停止該用戶進程,同時將該用戶進程分別從用戶進程白名單移入用戶進程灰名單、從系統(tǒng)資源占用白名單移入系統(tǒng)資源占用灰名單;如果該用戶進程產生過情況2中的網絡訪問請求,將該用戶進程的網絡訪問請求從系統(tǒng)防火墻白名單移入系統(tǒng)防火墻灰名單;如果用戶允許該用戶進程進行文件讀寫,則恢復該用戶進程的運行狀態(tài),并將用戶進程分別從用戶進程灰名單移入用戶進程白名單、從系統(tǒng)資源占用灰名單移入用戶進程白名單;如果該用戶進程產生了情況2中的網絡訪問請求,則將該用戶進程的網絡訪問請求從系統(tǒng)防火墻灰名單移入系統(tǒng)防火墻白名單,并將該用戶進程從文件讀寫請求灰名單移入文件讀寫請求白名單;如果用戶禁止該用戶進程進行文件讀寫,則將該用戶進程停止,并將該用戶進程分別從用戶進程灰名單移入用戶進程黑名單、從系統(tǒng)資源占用灰名單移入系統(tǒng)資源占用黑名單,將該用戶進程的網絡訪問請求從系統(tǒng)防火墻灰名單移入系統(tǒng)防火墻黑名單;
情況4:若情況1中的用戶進程在情況2中描述的網絡訪問請求發(fā)生并被用戶允許后再一次發(fā)生網絡訪問請求,若本次網絡訪問請求與情況2中的網絡訪問請求的IP或者端口不同,則將本次該用戶進程的網絡訪問請求從系統(tǒng)防火墻白名單移入系統(tǒng)防火墻灰名單;如果用戶允許了該用戶進程的本次網絡訪問請求,將該用戶進程的本次網絡訪問請求從系統(tǒng)防火墻灰名單移入系統(tǒng)防火墻白名單,并允許該用戶進程的本次網絡訪問請求;如果用戶禁止了該用戶進程的本次網絡訪問請求,則將該用戶進程的本次網絡訪問請求從系統(tǒng)防火墻灰名單移入系統(tǒng)防火墻黑名單中,并禁止該用戶進程的本次網絡訪問請求;
情況5:若情況1中的用戶進程在情況3中描述的文件讀寫請求發(fā)生并被用戶允許后再一次發(fā)生文件讀寫請求,若本次文件讀寫請求與情況3中的文件讀寫請求不同,則將本次文件讀寫請求的用戶進程加入文件讀寫請求灰名單;如果用戶允許了該用戶進程的本次文件讀寫請求,將本次文件讀寫請求的用戶進程從文件讀寫請求灰名單移入文件讀寫請求白名單,并允許該用戶進程的本次文件讀寫請求;如果用戶禁止了該用戶進程的本次文件讀寫請求,將本次文件讀寫請求的用戶進程從文件讀寫請求灰名單移入文件讀寫請求黑名單,并禁止該用戶進程的本次文件讀寫請求。
整個運行過程中,安全模塊針對系統(tǒng)運行日志和安全日志進行實時審計,包括進程情況、防火墻情況、文件訪問情況、系統(tǒng)資源情況、用戶和角色、安全域變化等,建立專用的日志審計管理用戶,非審計用戶不能刪除、修改日志;同時,在系統(tǒng)多個位置建立日志存儲區(qū)域,實時同步記錄完整日志,并采用高級加密標準AES對日志進行加密。
根據上述實施例,可以更好的理解本發(fā)明。然而,本領域的技術人員容易理解,實施例所描述的具體的物料配比、工藝條件及其結果僅用于說明本發(fā)明,而不應當也不會限制權利要求書中所詳細描述的本發(fā)明。