最近Vista又有了很多新聞,還有Vista中的新成員WMP11也閃亮登場(chǎng)。今天,我們就一起來看看Vista中是如何保護(hù)賬戶安全的。
通常在提到微軟的操作系統(tǒng)時(shí),我們最關(guān)心的永遠(yuǎn)都是安全性。因?yàn)槠占奥史浅8撸偌由先驘o數(shù)各種水平的用戶都在使用它,同時(shí)在微軟的操作系統(tǒng)上運(yùn)行有大量質(zhì)量良莠不齊的應(yīng)用程序,這一切結(jié)合起來就讓微軟產(chǎn)品的安全問題非常突出。
例如前兩年曾肆虐網(wǎng)絡(luò)的沖擊波、振蕩波、斯文等病毒,都是利用了微軟產(chǎn)品的漏洞以及用戶的粗心大意傳播開的。
微軟自然不會(huì)讓這種問題繼續(xù)下去。在去年很長的一段時(shí)間里,微軟全部的開發(fā)人員都停下了手頭的開發(fā)工作,開始對(duì)現(xiàn)有產(chǎn)品進(jìn)行安全性檢查。這個(gè)檢查直接影響了Windows xp SP2和Vista的推出時(shí)間,不過從檢查之后發(fā)布的Windows XP SP2和Windows Server 2003 SP1來看,安全性確實(shí)得到了很大提高,長時(shí)間的等待是值得的。
雖然在打過補(bǔ)丁之后安全性得到了一定提高,不過這畢竟還是在現(xiàn)有漏洞上打補(bǔ)丁,總會(huì)讓人覺得不夠放心。那么全新的下一代操作系統(tǒng)在安全性方面會(huì)有什么進(jìn)步?我們可以通過Vista測(cè)試版體驗(yàn)一下。本文以5219版Vista為例,在該版本中,安全性方面最主要的一個(gè)改進(jìn)就是增加了一個(gè)叫做用戶賬戶保護(hù)的功能(User Account PRotection,UAP)。
Vista發(fā)展動(dòng)態(tài)
Vista新成員WMP11亮相
作為Windows捆綁的播放器,WMP一直擁有巨大的用戶群,它每一次新版本的發(fā)布都為很多Windows的粉絲們所關(guān)注。最近,WMP11的發(fā)布終于在Vista Beta1推出4個(gè)月后有了眉目。從截圖來看,WMP11增加了預(yù)覽功能,可以顯示視頻文件的縮略圖。其用戶界面大體上與前作相同,但在細(xì)節(jié)上,更突出了面板的質(zhì)感,和晶瑩剔透的Vista配合而相得益彰。
漂亮的Vista WMP11
你可能覺得,這是一套相當(dāng)安全并且方便的機(jī)制,因?yàn)橹灰诘卿浵到y(tǒng)的時(shí)候輸入一次用戶名和密碼,就可以在整個(gè)登錄過程中直接執(zhí)行任何具有權(quán)限的操作。同時(shí)只要保護(hù)好SAM數(shù)據(jù)庫,也就不用擔(dān)心系統(tǒng)的安全問題。然而事實(shí)遠(yuǎn)非如此,這樣的做法雖然方便,不過卻相當(dāng)不安全。
我們可以考慮這樣的情況:使用管理員賬戶登錄系統(tǒng)后,我們運(yùn)行的任何程序自然也將具有管理員權(quán)限。如果我們不小心運(yùn)行了網(wǎng)上下載的含有惡意程序的文件會(huì)怎樣?惡意程序在運(yùn)行的時(shí)候會(huì)使用當(dāng)前用戶的訪問憑據(jù),也就是說程序的進(jìn)程也具有了管理員權(quán)限,進(jìn)而該進(jìn)程可以對(duì)系統(tǒng)進(jìn)行任何操作。意識(shí)到其中包含的風(fēng)險(xiǎn)了吧。
所以很多介紹系統(tǒng)安全的文章都會(huì)建議,平時(shí)使用計(jì)算機(jī)的時(shí)候最好不要用管理員賬戶登錄,而是用權(quán)限小一些的賬戶,只有在偶爾需要進(jìn)行維護(hù)或者其他必要操作的時(shí)候才使用管理員賬戶,或者直接使用Runas命令。這樣才能保證系統(tǒng)安全。
小知識(shí):不得不提的Runas命令
這里再介紹一下Runas命令。通過該命令,我們可以在保持當(dāng)前用戶登錄的情況下使用其他用戶的身份運(yùn)行程序。例如,對(duì)于開始菜單中某個(gè)程序的快捷方式,我們只需要在該快捷方式上點(diǎn)擊鼠標(biāo)右鍵,然后點(diǎn)擊“運(yùn)行方式”命令,接著在彈出的對(duì)話框中選擇“下列用戶”選項(xiàng),指定一個(gè)用戶名并輸入密碼。這樣程序就可以使用指定的用戶身份運(yùn)行了。
當(dāng)然,如果你喜歡使用命令行方式,也可以運(yùn)行CMD打開命令提示符,使用類似這樣的命令:“runas user:要使用的用戶名 要運(yùn)行的程序的路徑和名稱”,按下回車,并輸入該用戶的密碼。例如通過“runas user:administrator regedit”這樣的命令就可以使用Administrator的身份運(yùn)行注冊(cè)表編輯器。
雖然我們可以在平時(shí)使用權(quán)限低的用戶名登錄,但在需要執(zhí)行特定操作的時(shí)候使用runas命令,不過這還是有些麻煩,同時(shí)需要進(jìn)行的額外操作也太多。為了解決這一問題,Vista中提供了UAP功能。
在介紹這個(gè)功能之前,我們先了解一下Windows中的各種權(quán)限是如何控制的。這部分主要以單機(jī)或工作組環(huán)境下的Windows XP Professional為例,同時(shí)也適用于Windows 2000/2003,不適用于Windows 98。
系統(tǒng)安裝好后,所有用戶的憑據(jù)信息(也就是用戶名和密碼)都被保存在本地SAM(Security Accounts Manager,安全賬戶管理器)數(shù)據(jù)庫中。當(dāng)用戶登錄系統(tǒng)時(shí),首先要輸入用戶名和密碼,這些信息由winlogon進(jìn)程獲取,并由LSA(Local Security Authority,本地安全驗(yàn)證)子系統(tǒng)提交到SAM數(shù)據(jù)庫中驗(yàn)證。
如果SAM數(shù)據(jù)庫中有符合條件的記錄,那么LSA子系統(tǒng)就會(huì)生成一個(gè)訪問令牌(access Token),并傳遞給用戶。當(dāng)該用戶需要運(yùn)行程序或訪問資源的時(shí)候,系統(tǒng)首先會(huì)在用戶持有的訪問令牌中查找相應(yīng)的權(quán)限信息,然后和想要進(jìn)行的操作所需要具有的權(quán)限進(jìn)行比較,如果權(quán)限足夠,那么就可以進(jìn)行操作;反之操作則會(huì)被禁止。
以運(yùn)行程序?yàn)槔?dāng)我們?cè)噲D啟動(dòng)一個(gè)程序的時(shí)候,系統(tǒng)會(huì)使用我們的訪問令牌來啟動(dòng)程序,這樣被啟動(dòng)的程序就擁有了和令牌所有者一樣的權(quán)限。為了證實(shí)這一點(diǎn),我們可以打開Windows任務(wù)管理器的進(jìn)程選項(xiàng)卡。該選項(xiàng)卡下列出了當(dāng)前系統(tǒng)中的所有進(jìn)程,每個(gè)進(jìn)程在“用戶名”一欄就顯示了該進(jìn)程的“身份”。
以圖1中的幾個(gè)進(jìn)程為例,csrss.exe是系統(tǒng)進(jìn)程,因此用戶名一欄顯示的是“SYSTEM”;emeditor.exe是當(dāng)前登錄用戶啟動(dòng)的程序,因此用戶名一欄顯示的是當(dāng)前用戶的用戶名;emule.exe雖然也是當(dāng)前用戶啟動(dòng)的,不過在啟動(dòng)的時(shí)候使用了Runas命令,因此看起來該程序就好像其他用戶啟動(dòng)的。當(dāng)然,因?yàn)檫@三個(gè)進(jìn)程使用了不同的訪問令牌(也就是用戶身份),那么這三個(gè)程序的權(quán)限也就會(huì)有所不同。
進(jìn)程顯示
啟用該功能之后,Vista實(shí)際上自動(dòng)運(yùn)行在一個(gè)被減少了很多特權(quán)的安全級(jí)別上。如果因?yàn)槟承┎僮鳎到y(tǒng)需要更高的權(quán)限,就會(huì)顯示一個(gè)對(duì)話框,并要你輸入密碼。這個(gè)密碼只能用于發(fā)起這次請(qǐng)求的操作,隨后你進(jìn)行的其他操作,哪怕是由此前的操作導(dǎo)致的額外操作,全部都是以最低的權(quán)限運(yùn)行的。
默認(rèn)情況下UAP是被禁用的,要啟用該功能,在開始菜單中點(diǎn)擊“All Programs(所有程序)”,然后點(diǎn)擊“Turn UAP settings On or Off(打開或關(guān)閉UAP)”,你將能看到圖2所示界面,點(diǎn)擊Yes按鈕即可打開UAP,隨后我們需要注銷并重新登錄。
試試看更改一下系統(tǒng)設(shè)置吧,例如隨便打開控制面板中任何一個(gè)控制程序,你都將會(huì)看到圖3所示的對(duì)話框,要求你輸入管理員用戶的密碼。
彈出警告框
需要輸入管理員密碼
有人擔(dān)心這個(gè)功能在啟用后會(huì)不會(huì)造成使用上的不便,其實(shí)擔(dān)心是沒必要的,UAP只是一種保護(hù),而不是單純的限制。假設(shè)我們已經(jīng)啟用了UAP功能,并要執(zhí)行某個(gè)需要一定特權(quán)才能執(zhí)行的操作,例如修改注冊(cè)表,那么可能有兩種情況:如果當(dāng)前登錄的賬戶已經(jīng)有了修改注冊(cè)表的權(quán)限,那么Vista會(huì)彈出一個(gè)對(duì)話框,詢問用戶是否繼續(xù)該操作,用戶可以作出選擇;如果當(dāng)前登錄的用戶沒有修改注冊(cè)表的權(quán)限,Vista會(huì)彈出一個(gè)對(duì)話框,告知用戶這一情況,并允許用戶輸入一個(gè)具有相應(yīng)權(quán)限的賬戶的用戶名和密碼,驗(yàn)證成功后一樣可以進(jìn)行操作。
如果你覺得這樣還不夠直觀,也可以通過編輯注冊(cè)表打開UAP的另一個(gè)界面。在注冊(cè)表編輯器中定位到HKEY_LOCAL_MACHINESoftwareMicrosoftWindowsCurrentVersionPoliciesSystem,將ConsentPromptBehavior的數(shù)值改為“1”,重啟動(dòng)系統(tǒng)。這樣當(dāng)運(yùn)行一個(gè)需要一定特權(quán)的程序時(shí),首先會(huì)看到圖4所示對(duì)話框,如果確實(shí)打算執(zhí)行該操作,那么可以點(diǎn)擊“I want to complete this action(我想要執(zhí)行該操作)”,否則可以點(diǎn)擊“I do not want to complete this action(我不想執(zhí)行該操作)”,返回到桌面。
選擇項(xiàng)
UAP是個(gè)相當(dāng)好的改進(jìn),在保持了易用性的同時(shí)又增強(qiáng)了安全性,建議每個(gè)用戶都使用。然而該功能最大的一個(gè)不足就是和現(xiàn)有程序的兼容問題,因?yàn)閁AP是Vista中一個(gè)新增的功能,因此有些老程序(尤其是工作在系統(tǒng)底層的程序,例如老版本的殺毒軟件、防火墻、備份軟件等)在啟用UAP后可能無法正常工作,或者存在問題。
例如我們安裝的McAfee VirusScan Enterprise 8,雖然并沒有針對(duì)Vista進(jìn)行優(yōu)化,不過在默認(rèn)設(shè)置下完全可以在Vista中安裝和使用。但是啟用UAP之后卻有個(gè)小問題,不管用什么賬戶登錄系統(tǒng)(包括管理員和來賓),當(dāng)McAfee殺毒軟件啟動(dòng)的時(shí)候都需要用戶輸入具有管理員權(quán)限的用戶密碼。
其實(shí)仔細(xì)想想,這也是不可避免的,畢竟Vista太新了,大部分程序在設(shè)計(jì)的時(shí)候并沒有考慮過這些新特性。不過這個(gè)問題并不嚴(yán)重,畢竟以微軟在個(gè)人電腦操作系統(tǒng)領(lǐng)域的絕對(duì)統(tǒng)治地位來說,軟件開發(fā)商如果不能及時(shí)發(fā)布適應(yīng)新版操作系統(tǒng)的應(yīng)用程序,那必定會(huì)被用戶所拋棄;相反,如果能緊跟微軟腳步,在第一時(shí)間推出能夠用在微軟最新操作系統(tǒng)上的應(yīng)用程序,那則會(huì)大獲成功。
因此可以肯定,當(dāng)Vista正式發(fā)布之后,相應(yīng)的應(yīng)用程序都會(huì)在第一時(shí)間里發(fā)布針對(duì)Vista設(shè)計(jì)的新版本,或者為老版本提供補(bǔ)丁程序。
編后:Vista中新增的或者改進(jìn)的安全功能當(dāng)然不止如此,其他諸如驗(yàn)證方式、防惡意軟件、網(wǎng)絡(luò)訪問保護(hù)、防火墻、Windows服務(wù)加固、增強(qiáng)的IE,以及數(shù)據(jù)保護(hù)等功能無不令Vista更加安全。雖然這些功能目前可能還不夠完善,甚至有些還處于開發(fā)階段,本報(bào)會(huì)在以后的文章中向大家詳細(xì)介紹這些內(nèi)容。
新聞熱點(diǎn)
疑難解答
圖片精選