簡體   English   中英

服務中是否有與WndProc等效的安全性?

[英]Is there a secure equivalent to a WndProc in a service?

此問題“ 在服務中接收Windows消息”解決了我遇到的問題,建議不要創建wndProc以避免破碎攻擊。 問題是我有一個Windows應用程序,想要轉換為使用異步Winsock的服務,因此需要運行wndProc。

考慮到我不在乎顯示該窗口,以下內容是否可以確保其免受破碎攻擊? 我照原樣復制了wndProc,但是將默認處理程序(當前對DefWindowProc()的調用)替換為簡單的return 0;

除非標記為“交互式”,否則每個服務都在其自己的窗口站中運行,因此,除非您的代碼做一些奇怪的事情(例如更改窗口站關聯或弄亂窗口站的權限和/或混亂),否則對服務本身的崩潰攻擊就不會成為問題。桌面。

換句話說,您無需更改任何內容; 只要確保在安裝服務時不要設置“交互式”標志即可。 您提到的答案在這方面有誤導性。

(即使設置了“交互式”標志,在Windows Vista中以及以后通過會話0隔離也嚴格限制了風險;只有在特權較低的服務的上下文中運行不受信任的代碼時,才有可能發生粉碎攻擊。特權較低的服務已被攻擊者成功破壞。)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM