3

我是 WCF 和命名管道的新手。我们创建了一个 WCF 服务、一个宿主应用程序来宿主 WCF 服务和 UI 应用程序。UI 应用程序需要调用 WCF 服务的方法来执行某些操作,还需要从服务接收消息。主机应用程序和 UI 应用程序都在同一台机器上运行。

在宿主应用程序(宿主 WCF 服务)中,我们使用 netNamedPipeBinding 创建命名管道。下面是代码截图

string address = 'net.pipe://localhost/xyz/WCFService';
NetNamedPipeBinding binding = new 
NetNamedPipeBinding(NetNamedPipeSecurityMode.Transport);
binding.ReceiveTimeout = TimeSpan.MaxValue;
EndpointAddress ep = new EndpointAddress(address);
channel = ChannelFactory<WCFServiceLib.ITest1Service>.CreateChannel(binding, 
ep);

通道.start();

但是当我尝试使用攻击面分析器工具@ http://www.microsoft.com/en-in/download/details.aspx?id=24487 它检测到“m_sf_namespace_pipe”漏洞

附加表面analyzer.exe 工具为我的UI 应用程序显示“发现以下进程对此有一个打开的句柄”消息“GENERIC_ALL GENERIC_WRITE WRITE_OWNER WRITE_DAC SECTION_MAP_WRITE”。

在 WCF 服务中,我们使用默认设置,这里有什么我可以控制的吗?有什么方法可以提供更好的安全性/访问控制,以便分析工具不应该检测到任何漏洞?

谢谢

4

0 回答 0