您好,登錄后才能下訂單哦!
本篇內容介紹了“conhost.exe是什么”的有關知識,在實際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領大家學習一下如何處理這些情況吧!希望大家仔細閱讀,能夠學有所成!
conhost.exe是命令行程序的宿主進程,conhost全稱是Console Host Process;conhost.exe是微軟出于安全考慮,在windows7和Windows server 2008中引進的新的控制臺應用程序處理機制。
conhost.exe是什么進程?
命令行程序的宿主進程。
全稱是Console Host Process, 即命令行程序的宿主進程。簡單的說他是微軟出于安全考慮,在windows 7和Windows server 2008中引進的新的控制臺應用程序處理機制。
來歷及作用
原先,win7之前的宿主程序是由csrss.exe來完成的,,所有命令行進程都使用session唯一的csrss.exe進程。而到了win7則改成每個命令行進程都有一個獨立的conhost作為宿主了。 這樣當然有很多好處了,比如各進程之間不會相互影響,也不會影響到csrss,畢竟csrss還有其他更重要的任務要做。 當然最最重要的還是安全性的考慮,因為csrss是運行在local system賬號下的,如果要處理Windows message,就要承擔很多威脅,比如著名的Windows Message Shatter Attack。而如果用用戶權限的conhost來處理,則即使有攻擊,影響的也只是低權限的宿主進程。
其實,不論是作為普通用戶還是企業管理員,我們在日常的Windows應用和運維過程中都會或多或少的使用到控制臺應用程序。控制臺應用程序是沒有用戶界面的,我們需要通過命令提示符(CMD,這可不是DOS,很多人混淆不清)對其進行輸入、輸出操作。Windows自帶的控制臺應用程序 ,典型的有cmd.exe、nslookup.exe和telnet.exe等。
與Csrss.exe的關系
在早期的Windows版本中,所有代表非GUI活動的應用程序(即控制臺應用程序)要在桌面上運行時,都通過系統進程Csrss.exe進行協調。當控制臺應用程序需要接收字符時,會在Kernel32.dll中調用一個小型的“控制臺APIs”以讓Kernel32產生LPC來調用CSRSS。此時CSRSS會對控制臺窗口的輸入隊列進行檢查和校驗,并將字符模式的結果通過Kernel32返回給控制臺應用程序進行關聯。
這樣的處理機制就已經產生了一個問題:即使一個控制臺應用程序在普通用戶的上下文環境中執行,但Csrss.exe始終是運行在本地系統賬戶權限下的。因此,某些情況下“壞人”開發的惡意軟件就有可能通過本地系統賬戶權限執行的Csrss.exe獲取到更多特權。這種攻擊模式被稱為Shatter Attack。
而到了win7和Windows Server 2008 R2時代,所有控制臺應用程序都被放到了一個新的上下文進程ConHost.exe中來執行,而ConHost(控制臺主機)與控制臺程序運行在相同安全級的上下文環境當中,取代了發出LPC消息請求到CSRSS中進行處理這種機制,而是去請求ConHost。因此,任何應用程序企圖利用消息請求來導致特權的自動提升都不會成功。
conhost不是病毒···
conhost全稱是console host process, 即命令行程序的宿主進程. 大家都知道命令行程序是什么東西吧, 比如ipconfig.exe之類, 由于命令行程序自身沒有代碼來顯示UI, 我們平時看到的命令行窗口內容都是由宿主進程來完成的,包括窗口的顯示, window message的處理,等等.
“conhost.exe是什么”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業相關的知識可以關注億速云網站,小編將為大家輸出更多高質量的實用文章!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。