【服务】交互式服务

概述:交互式服务是什么?

参考链接:

0x01 说明

交互式服务是windows的一个服务程序。

交互式服务检测是[Microsoft Windows](https://baike.baidu.com/item/Microsoft Windows/0?fromModule=lemma_inlink)对Windows Vista以前的交互式服务在Windows Vista及以后的操作系统中无法正常工作的问题(Session 0隔离)给出的应对方案。然而,此方案并不能较好的解决问题(需切换窗口站),故不建议使用在Windows Vista及以后的系统中使用交互式服务。

服务描述:启用交互服务需要用户输入时进行用户通知,这样,便可以在交互服务创建的对话框出现时访问这些对话框。如果停止此服务,则对新交互服务对话框的通知将无法正常运行,而且可能无法访问这些交互服务对话框。如果已禁用此服务,则不再有新的交互服务对话框通知,也无法访问这些对话框

image-20240205141310464

通俗简单的说就是,服务一般都是控制台应用程序,有时候可能需要与用户交互,由此设计了一个专门为在没有图形用户界面(GUI)的情况下可以实现交互的服务。而这个服务就是 UIDDetect ,也即 Interactive Services Detection

❗❗❗ 从 Windows Vista 起,服务无法直接与用户进行交互。因此,不应在新代码中使用标题为“使用交互服务”一节中提到的技术。

使用及注意事项

参考微软关于交互式服务的描述文章即可。交互式服务 - Win32 apps | Microsoft Learn

如何关闭

以下注册表项包含一个值 NoInteractiveServices,该值控制SERVICE_INTERACTIVE_PROCESS的效果:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Windows

  • NoInteractiveServices 值默认为 1,这意味着无论服务是否具有SERVICE_INTERACTIVE_PROCESS,都不允许以交互方式运行任何服务。

  • NoInteractiveServices 设置为 0 时,允许具有 SERVICE_INTERACTIVE_PROCESS 的服务以交互方式运行。


【服务】交互式服务
https://hodlyounger.github.io/A_OS/Windows/服务/【服务】交互式服务/
作者
mingming
发布于
2024年2月5日
许可协议