微塵
沒有經過數字簽名認證的程序是不安全的,嘗試在Windows系統中安裝多個沒有經過數字簽名認證的程序,會給系統的穩定運行帶來威脅。日后,Windows系統在運行過程中遇到故障時,這些沒有數字簽名的程序或驅動,或許就是“罪槐禍首”,而且有時即使知道它們是禍首,也分不清楚究竟是哪個沒有數字簽名的程序在“惹禍”。
為了保護系統安全,Windows系統引進了數字簽名技術,并以此判斷系統中的一些核心文件是否受到攻擊或破壞。而不少殺毒軟件也紛紛將數字簽名看成是白名單,通過掃描檢測數字簽名來判斷系統的安全狀況。那么如何才能知道某些程序或驅動已經通過微軟數字簽名認證呢?如何有效判斷數字簽名是假冒的、不安全的呢?當數字簽名影響日常操作時,又該如何化解呢?本文下面的內容,會幫助大家用好Windows系統中的數字簽名功能。
用UAC判斷數字簽名安全
從Vista系統開始,UAC(用戶賬號控制)功能作為一項提高系統安全的新技術,被集成到Windows系統中,它要求用戶在執行一些可能存在安全風險的操作之前,必須擁有相關的操作權限,通過在這些操作啟動前對其進行驗證。該功能具有指明特定程序名稱和發行者的有效數字簽名功能,利用它我們也能判斷出某些陌生程序的數字簽名是否安全。例如,對于安全、可信的系統進程,UAC(用戶賬號控制)功能會彈出綠色提示框,對于帶有陌生數字簽名的進程,它會彈出黃色提示框,對于被阻止的數字簽名進程會彈出紅色提示框。默認狀態下,UAC功能會將所有系統文件數字簽名簽署者識別為Microsoft Windows,倘若識別到某個系統文件沒有數字簽名信息,那就會認為該文件被非法攻擊或破壞,這時需要采取相關安全措施進行應對。
Vista系統默認已經啟用了UAC功能,當發現其沒有運行時,可以進行如下操作開啟它的運行狀態:首先依次單擊“開始”、“控制面板”命令,彈出系統控制面板窗口,逐一雙擊其中的“用戶賬戶”、“更改用戶賬戶控制設置”按鈕,打開如圖1所示的設置對話框。檢查移動滑塊位于哪個位置,如果發現其位于“從不通知”位置處時,那就表示UAC功能當前沒有啟動運行,此時,只要用鼠標將其拖動到“始終通知”位置處,再單擊“確定”按鈕保存設置操作。
查找沒有數字簽名程序
大家知道,沒有經過數字簽名認證的程序是不安全的,嘗試在Windows系統中安裝多個沒有經過數字簽名認證的程序,會給系統的穩定運行帶來威脅。日后,Windows系統在運行過程中遇到故障時,這些沒有數字簽名的程序或驅動,或許就是“罪槐禍首”,而且有時即使知道它們是禍首,也分不清楚究竟是哪個沒有數字簽名的程序在“惹禍”。有鑒于此,我們需要在平時定期查看Windows系統,看看究竟有哪些程序或驅動沒有經過數字簽名驗證,找到這些沒有數字簽名的程序或驅動后,及時刪除或卸載它們,就能保證系統運行穩定了。
在Windows 7系統中查找沒有數字簽名程序時,可以依次點擊“開始”、“運行”命令,在其后彈出的系統運行對話框中,執行“Sigverif”命令,切換到如圖2所示的設置對話框。在這里,不需要進行任何復雜的設置,只要單擊地按下“開始”按鈕,Windows 7系統就能自動掃描分析計算機中的所有設備驅動文件和系統文件。掃描任務完成后,那些沒有數字簽名的程序或驅動,就會全部顯示在結果界面中,及時記錄這些驅動或程序的具體文件名稱,日后Windows系統遇到無法解決的故障現象時,我們就能嘗試從網上找到通過數字簽名認證的設備驅動或系統文件,來替代這些沒有數字簽名的文件,或者索性刪除這些不穩定的沒有數字簽名文件,以確保Windows系統可以安全、穩定地運行。
當然,如果僅想查看Windows系統中的設備驅動程序是否經過數字簽名認證時,也可以利用系統自帶的“Verifier”命令,對硬件設備驅動程序進行快速校驗,這種方法可以將隱藏在計算機中的無效硬件驅動程序“揪”出來。在使用“Verifier”命令來查找未簽名設備驅動時,可以依次點擊“開始”、“運行”命令,彈出系統運行對話框,輸入“Verifier”字符串命令并回車,選中其后界面中的“創建標準設置”選項,并按“下一步”按鈕,打開如圖3所示的設置對話框,在這里我們會發現Windows系統為用戶提供了多個選項。默認狀態下,Windows系統會將“自動選擇未經簽名的驅動程序”選項選中,來掃描檢查本地計算機中的設備驅動文件是否通過了數字簽名認證。
取消驅動程序強制簽名
在安裝了Windows 8系統的工作環境中,嘗試為舊設備安裝版本較低的驅動程序時,系統會彈出“第三方INF不包含數字簽名信息”之類的提示,并強行終止驅動安裝操作,這么說來我們就無法在Windows 8系統中安裝使用低版本驅動程序了?其實,經過一些合適設置,取消Windows 8系統的驅動程序強制簽名功能,就能在該系統中正常安裝使用舊設備或驅動了。
首先登錄進入Windows 8系統Metro界面,將鼠標移動到屏幕右側區域,彈出Charm菜單,點擊“設置”按鈕,進入電腦設置頁面,選擇“常規”標簽,在對應標簽頁面選擇最后一項立即重啟。當系統彈出啟動菜單時,點擊“疑難解答”選項,之后進入高級選項設置頁面,按下“啟動設置”按鈕,進入如圖4所示的啟動設置列表區域,選中“禁用驅動程序強制簽名”選項,重新啟動計算機后,Windows 8系統日后就不會攔截沒有數字簽名的驅動程序文件了。
當然,在某些版本的Windows 8系統中,也可以通過修改系統組策略相關配置,來取消驅動程序強制簽名。在進行該操作時,可以依次點擊“開始”、“運行”命令,彈出系統運行對話框,輸入“gpedit.msc”命令并回車,開啟系統組策略編輯器運行狀態。在組策略編輯窗口左側列表中,將鼠標定位到“本地計算機策略”、“用戶配置”、“管理模板”、“系統”、“驅動程序安裝”、“設備驅動程序的代碼簽名”組策略選項上,并用鼠標雙擊該選項,打開對應選項組策略屬性對話框,選中“已啟用”選項,確認后保存設置操作。endprint
判斷數字簽名是否假冒
為了躲避各種殺毒軟件的圍剿追殺,一些狡猾的網絡病毒,經常會假冒名氣較大軟件的數字簽名,以此讓殺毒軟件識別不出來。那么怎樣才能準確判斷數字簽名是否假冒,從而保護本地計算機不受病毒木馬程序的非法攻擊呢?其實,利用“文件數字簽名驗證程序”插件,配合SREng這款安全軟件,就能輕松掃描分析本地計算機系統中各種文件的簽名信息,并準確判斷它們的真假。首先從網上下載獲得“文件數字簽名驗證程序”插件和SREng這款工具的安裝程序,按照默認設置安裝好SREng這款工具后,將“文件數字簽名驗證程序”插件中的所有文件,全部解壓釋放到SREng安裝目錄的“plugins”子文件夾中。從系統“開始”菜單中開啟SREng這款工具的運行狀態,按下對應程序界面中的“擴展”按鈕,就能發現“文件數字簽名驗證程序”的身影,用鼠標雙擊該插件,開啟目標插件程序的運行狀態。
切換到目標插件對話框,單擊其中的“選擇目標”按鈕,彈出文件夾選擇對話框,將需要掃描分析的文件夾選中并添加進來,例如要判斷系統文件夾中的系統文件數字簽名真假時,只要將“C:\Windows\system”或“C:\Windows\system32”等文件夾導入進來,再按“開始掃描”按鈕,“文件數字簽名驗證程序”就能邊掃描分析,邊顯示判斷結果了。倘若某個系統文件的數字簽名掃描分析結果顯示為“0x00000000”時,那就表示該數字簽名是真實安全的。相反,如果掃描分析結果顯示為“0x800b0100”時,那就意味著目標文件的數字簽名存在問題,出現這種現象有兩種可能,一是數字簽名的確存在但處于異常狀態,二是目標文件根本不存在數字簽名。凡是數字簽名被識別為“0x800b0100”時,那很可能是系統文件已經受到病毒木馬的破壞,或者目標文件就是病毒木馬程序,我們應該及時將它們從系統中刪除掉,以避免系統的運行穩定受到威脅。
此外,我們也可以使用Microsoft MVP開發的FileDigitalSignVerify工具,快速判斷某個程序文件數字簽名的真假。比方說,要判斷本地計算機中的畫圖程序簽名信息是否為假冒時,可以先下載安裝目標工具,之后以系統管理員身份運行“cmd”命令,切換到DOS命令行狀態,在該狀態下執行命令“FileDigitalSignverify.EXE %SystemRoot%\system32\mspaint.exe -p”,如果命令返回“0x00000000”提示信息,那就表示該程序的數字簽名是有效的。如果數字簽名是假冒的,那命令會返回“0x800b0100”提示信息。endprint