為了讓電腦安全、穩定、干凈運行,我定了以下幾個目標:第一,他不能安裝任何軟件,特別是那些亂七八糟的游戲和流氓軟件;第二,他不能運行任何未指定的程序,免得又中毒;第三,他不能打開任何未指定的文件類型(我電腦里有些源代碼文件是要保密的)。工具嘛,就用系統自帶的“組策略編輯器”來完成吧。
點擊“開始”→“運行”,輸入“gpedit.msc”回車打開組策略編輯器,我們會發現,在“計算機配置”和“用戶設置”下都各有一個軟件限制策略的條目。簡單地說,“計算機配置”下的設置會對所有登錄到本地計算機的用戶生效,“用戶配置”下的設置則只會對某個特定用戶或用戶組生效。為了防止夜長夢多,我選擇了“計算機配置”下的策略。
啟用安全護甲
WinXP操作系統,默認一般用戶就可以運行任何應用程序,所以我們必須先用組策略關閉這個安全大漏洞。
Step1開啟軟件運行限制
在組策略編輯器窗口中,依次展開“計算機配置”→“Windows設置”→“安全設置”→“軟件限制策略”。初次打開右邊窗口會顯示“沒有定義軟件限制策略”,只需右鍵單擊“軟件限制策略”,選擇“創建新的策略”即可。
創建好新的策略后,就可以看到“軟件限制策略”下增加了“安全級別”和“其它規則”以及三條屬性。
Step2默認不準通行
即使啟用了軟件限制策略,由于策略的默認安全級別為“不受限的”,仍不能滿足我的要求,必須將默認安全級別設為“不允許的”,讓未經授權的任何程序都無法運行。設置方法是打開“安全級別”,右鍵點擊“不允許的”,在彈出菜單中選擇“設置為默認”項。
Step3給自己留條后路
不過,這種限制方法會在限制小孩的同時,將自己也限制了,得留條后路。
我的做法是:首先雙擊右邊窗口中的“強制”屬性項目,勾選“除去庫文件之外的所有軟件文件”和“除本地管理員以外的所有用戶”兩個選項并“確定”,
然后給小孩創建了一個屬于Power User組的賬號。這樣他受限制,而作為管理員的我卻并沒有受到任何限制。
想如何限制,就如何限制
組策略可以通過不同的方式,讓使用者運行執行相應的程序,下面我就來為他開通QQ以及其他程序的使用權限。
1.指定地方程序才準執行
軟件限制策略啟用之后,非管理員賬號就只能執行系統目錄(\\Windows和\\Window\\System32)和\\ProgramFiles\\下的軟件。如果你的常用軟件安裝在其他目錄中,比如QQ安裝在D:\\Tools\\Tencent,就需要額外為該目錄開通運行權限才行。
右鍵點擊“軟件限制策略”下的“其它規則”,選擇“新路徑規則”。路徑設置為D:\\Tools(由于D:\\Tools下還安裝有其他常用軟件,所以小要只指定QQ安裝目錄),在安全級別中選擇“不受限的”,這樣Tencent目錄的QQ程序就能執行了。
2.開通開始菜單中程序的訪問權限
上述限制還有不合理的地方,比如默認配置下非管理員賬號訪問開始菜單中的任何程序,都會得到“由于一個軟件限制策略的阻止,Windows無法打開此程序”的錯誤提示。這是因為開始菜單中的程序都是快捷方式(LNK文件)受到限制,另外,URL是lE收藏夾中的網址,SHS則是Office的片段文件也受到限制,為了不影響開始菜單、IE收藏夾、Office的正常使用,還是取消限制為好。
展開“軟件限制策略”,雙擊右側的“指派的文件類型”,分別選中LNK、URL、SHS文件并刪除(如圖5)。
3.防止運行特定程序
以上設置還有漏洞,比如按照默認配置,\\ProgramFiles\\目錄下的程序都可以運行,可實際情況是,我的很多軟件都安裝在該目錄下,要是系統管理軟件也可以執行,我們做的這些限制估計很快就被攻破了……
我們可以為不允許執行程序的目錄加上數字簽名,這個簽名微軟稱之為“散列規則”。散列規則的優先級大于路徑規則,只要用散列規則規定Program Files目錄下的哪些程序文件不允許執行,那么用戶就無法執行它們了。
散列規則是以哈希值為依據的,程序升級后,文件的哈希值也會改變了,這時就必須修改散列規則。這樣雖然比較麻煩,但也有好處,比如程序文件被病毒感染了的話,它的哈希值也會改變,那么散列規則就會阻止用戶執行這些帶病
至于如何防止他誤刪我編寫的源程序、如何防止他訪問我的私人隱私資料,雖然可以通過組策略來實現(設置不允許訪問的路徑規則),但對于所有分區都是NTFS格式的我來說,采用NTFS權限限制更方便一些。比如我在“源代碼”目錄上單擊右鍵,選擇“安全和共享”,然后設置只允許管理員訪問就可以了.
在WinXP下,默認文件夾右鍵菜單是沒有“安全和共享”選項的,我們必須在菜單中選擇“工具”→“文件夾選項”,然后切換到“查看”頁面,找到“使用簡單文件夾共享”一項,把它前面的勾去掉。
最終效果大檢查
經過這番設置,我的電腦最終達到了什么效果呢?
簡單地說,親戚家的小孩使用我給他創建的賬號登錄系統后,沒法打開存放源代碼和隱私文件的文件夾;他上網時那些惡意的ActiveX控件也不能安裝,流氓軟件來不了;另外他下載了游戲或軟件也無法安裝,這樣他就沒法使用第三方的注冊表編輯器來破解組策略限制。總之,軟件限制策略是給你的組策略加了把鎖,讓組策略更安全。
未雨綢繆補漏洞
這樣設置后,我的系統還有漏洞嗎?答案是肯定的。
因為軟件限制策略作為組策略的一部分,各種配置對應的都是注冊表的一些鍵值,雖然軟件限制策略可以限制用戶無法使用任何未經允許的注冊表編輯工具,但是如果用戶能想辦法編輯注冊表,那么軟件限制策略也就會被攻破。比如SWF文件默認是不受限制的,如果有人用Flash做了個注冊表編輯器,那就慘了,除非我把SWF文件也加入受限制的行列。
另外一些默認受限制的文件格式,比如OCX、BAT、CMD、REG等等,如果用戶一時頭腦發熱,讓這些文件格式都不受限制了,那么用戶就可以使用基于ActiveX控件的在線注冊表編輯器,或者使用批處理文件以及注冊表文件來修改注冊表了。
還有,路徑規則也是軟件限制策略可以被破解的一大漏洞,如果沒有對用戶隱藏系統盤,那么用戶把程序拷貝到\\Program Files目錄下,就能執行了,當然,通過設置文件夾權限,也能讓其他用戶對\\Program Files目錄沒有寫入權限。
當然,還有更絕的一招,就是干脆用深山紅葉之類的維護光盤,啟動光盤上的Windows PE操作系統,使用里面帶的注冊表編輯器去搞破壞,那樣軟件限制策略是根本攔不住的。或者用Windows PE里的軟件清空了管理員的口令,然后用管理員身份登錄,在組策略編輯器里把軟件限制策略都取消掉也行。
另外有些軟件在一些環境下也能產生漏洞,比如我們可以利用Office 2000打開被組策略設置為隱藏和禁止訪問的驅動器,在沒打SPl補丁的Windows Server 2003系統中還可以利用McAfee殺毒軟件的查看日志文件存放位置的功能打開被隱藏的驅動器,甚至還可以往里面拷貝文件。
總之,把軟件限制策略、組策略和NTFS權限都用到,并且把事情考慮周到,就能讓系統的安全性上一個臺階。如果把軟件限制策略用到企業的無盤終端服務器上,也能讓終端服務器的系統更加安全可靠。當然,漏洞總會存在的,這就需要仔細觀察,仔細考慮,通過實踐來解決了。