用户界面特权隔离 用户界面特权隔离User Interface Privilege Isolation简称UIPI是从Windows NT 开始引入的技术其目的在于防止粉碎窗口攻击英语Shatter attack通过结合强制完整性控制用户界面特权隔离阻止较低等完整性级别Integrity level的进程向较高等完整性级别进程的窗口发送消息但也有一些消息不被阻止 Windows消息是一种进程间通信机制可被低等完整性级别的恶意软件利用在较高等完整性级别的进程上下文里执行任意代码可能允许特权提升 用户界面特权隔离和强制完整性控制都不是安全边界它并不能完全抵挡粉碎窗口攻击用户界面辅助功能程序可以通过在它们的应用程序清单manifest文件中将uiAccess设为TRUE来绕过用户界面特权隔离这些程序必须位于Program Files或Windows文件夹中且必须拥有有效的数字签名此外一些消息仍然被允许例如WMKEYDOWN以便低完整性级别的程序发送输入到提升后的命令提示符最后函数ChangeWindowMessageFilter允许中完整性级别的进程改变高完整性级别的进程能从低完整性级别的进程接收什么消息