日本免费全黄少妇一区二区三区-高清无码一区二区三区四区-欧美中文字幕日韩在线观看-国产福利诱惑在线网站-国产中文字幕一区在线-亚洲欧美精品日韩一区-久久国产精品国产精品国产-国产精久久久久久一区二区三区-欧美亚洲国产精品久久久久

詳細了解Windows Vista內(nèi)核的安全性( 四 )


6.受保護的進程 下一代多媒體內(nèi)容 , 如 HD-DVD、BluRay 和高級訪問內(nèi)容系統(tǒng) (AACS) 下許可的其他格式 , 在以后幾年內(nèi)會變得更加常見 。Windows Vista 包括許多技術(shù) , 統(tǒng)稱為受保護的媒體路徑 (PMP) , AACS 標準要求在播放此類內(nèi)容時使用這些技術(shù) 。PMP 包括受保護的用戶模式音頻 (PUMA) 和受保護的視頻路徑 (PVP) , 它們一直為音頻和視頻驅(qū)動程序及媒體播放機應用程序提供機制 , 以防止未授權(quán)軟件或硬件捕獲高清晰度格式的內(nèi)容 。PUMA 和 PVP 定義特定于音頻和視頻播放機、設(shè)備驅(qū)動程序和硬件的接口和支持 , 但是 PMP 也依賴在 Windows Vista 中引入的一般內(nèi)核機制 , 即稱為受保護的進程 。受保護的進程以標準的 Windows 進程構(gòu)造為基礎(chǔ) , 該構(gòu)造封裝了運行的可執(zhí)行映像、其 DLL、安全上下文(進程運行所在的帳戶及其安全權(quán)限) , 及在進程內(nèi)執(zhí)行代碼但阻止某些訪問類型的線程 。標準進程實施訪問控制模式 , 允許使用“調(diào)試程序”權(quán)限完全訪問進程所有者和管理帳戶 。完全訪問允許用戶查看和修改進程的地址空間 , 包括映射到進程的代碼和數(shù)據(jù) 。用戶也可以將線程注入進程 。這些訪問類型與 PMP 的要求不一致 , 因為它們允許未授權(quán)代碼獲取存儲在播放內(nèi)容的進程中的高清晰度內(nèi)容和數(shù)字版權(quán)管理 (DRM) 密鑰的訪問權(quán)限 。受保護的進程限制訪問一組受限的信息和進程管理界面 , 包括查詢進程的映像名和終止或掛起進程 。但是 , 內(nèi)核通過一般的進程查詢功能(返回有關(guān)系統(tǒng)上所有進程的數(shù)據(jù))為受保護的進程提供診斷信息 , 因此不要求直接訪問進程 。訪問可能會損壞只允許通過其他受保護的進程訪問的媒體 。此外 , 為避免從內(nèi)部受到危害 , 加載到受保護進程的所有可執(zhí)行代碼(包括其可執(zhí)行映像和 DLL)必須由 Microsoft (WHQL) 使用受保護的環(huán)境 (PE) 標記簽名 , 或者(如果是音頻編解碼器)由開發(fā)人員使用從 Microsoft 獲得的 DRM 簽名證書簽名 。因為內(nèi)核模式代碼可以獲取任何進程的完全訪問權(quán)限(包括受保護的進程) , 并且 32 位 Windows 允許加載未簽名的內(nèi)核模式代碼 , 所以內(nèi)核可為受保護的進程提供 API , 以查詢內(nèi)核模式環(huán)境的“清潔度” , 并僅在沒有加載未簽名代碼時使用結(jié)果解除對高級內(nèi)容的鎖定 。沒有特定識別受保護進程的 API , 但是您可以間接地根據(jù)有關(guān)它們的受限信息以及甚至無法從管理帳戶進行調(diào)試來識別它們 。音頻設(shè)備圖形隔離進程 (%Systemroot%System32Audiodg.exe) 用于播放使用內(nèi)容加密系統(tǒng) (CSS) 編碼的 DVD , 并在“任務管理器”窗格中標識為受保護的進程 。事實上 , 即使使用管理權(quán)限運行 , 任務管理器也無法獲得其命令行、虛擬化和數(shù)據(jù)執(zhí)行保護狀態(tài) 。
7.地址空間加載隨機化
不管采取什么措施 , 如數(shù)據(jù)執(zhí)行保護和增強的編譯器錯誤檢查 , 惡意軟件作者都會繼續(xù)找到緩沖區(qū)溢出漏洞 , 這些漏洞使他們能夠感染面向網(wǎng)絡的進程(如 Internet Explorer、Windows 服務及第三方應用程序) , 獲得進入系統(tǒng)的立足點 。不過 , 在設(shè)法感染進程后 , 他們必須使用 Windows API 通過修改用戶或系統(tǒng)配置設(shè)置來完成讀取用戶數(shù)據(jù)或建立永久存在的最終目的 。使用 DLL 導出的 API 入口點連接應用程序 , 通常由操作系統(tǒng)加載器處理 , 但是這些類型的惡意軟件感染不會從加載器的服務中受益 。惡意軟件在以前的 Windows 版本中還沒有出現(xiàn)過此類問題 , 因為對于任何特定的 Windows 版本 , 系統(tǒng)可執(zhí)行映像和 DLL 總在同一個位置加載 , 讓惡意軟件假定 API 駐留在固定的地址 。Windows Vista 地址空間加載隨機化 (ASLR) 功能使惡意軟件不可能知道 API 的位置 , 方法是通過每次系統(tǒng)啟動時在不同位置加載系統(tǒng) DLL 和可執(zhí)行文件 。在啟動進程早期 , 內(nèi)存管理器會從用戶模式地址空間頂部 16MB 區(qū)域的 256 個 64KB 對齊地址中隨機選取一個作為 DLL 映像加載偏差 。由于在映像標頭中有新的動態(tài)重新定位標記的 DLL 加載到進程中 , 因此內(nèi)存管理器會從映像加載偏差地址開始并繼續(xù)將 DLL 選取到內(nèi)存中 。具有標記組的可執(zhí)行文件會得到類似的處理 , 在存儲在其映像標頭中的 16MB 基本加載地址內(nèi)以隨機的 64KB 對齊點加載 。此外 , 如果使用給定的 DLL 或可執(zhí)行文件的所有進程卸載后再次加載它 , 內(nèi)存管理器會重新選擇一個隨機的加載位置 。圖 7 所示為一個 32 位 Windows Vista 系統(tǒng)的示例地址空間布局 , 包括 ASLR 選取映像加載偏差和可執(zhí)行文件加載地址的區(qū)域 。

推薦閱讀