如何使用Titan Web代理调试ntml身份验证

时间:2019-04-25 14:29:36

标签: c# proxy ntlm-authentication titanium-web-proxy

我正在设置一个c#代理,该代理使用运行代理的用户凭据对所有http协商请求进行身份验证。 可悲的是,使用titanium web proxy我无法通过NTML / NTMLV2进行身份验证。

关于github存储库,此功能应立即可用(在设置EnableWinAuth = true时)。

在调试代码并通过Wireshark检查通信之后,我认为流量看起来还不错。代理使用secur32.dll获取type1和type2消息令牌。由于我无需代理即可通过网站进行身份验证(浏览器也使用secur32.dll),因此我确定指定的ntml协议有效。

  1. 代理将type1消息发送到托管受保护站点的Web服务器。 (检查type1消息时,域/工作站名称正确)
  2. Web服务器将type2消息发送到代理
  3. 代理能够从type2消息生成type3消息并将其发送到服务器(type3消息包括正确的用户名)
  4. Web服务器返回未经授权的401

启用iis功能以跟踪失败的请求后,我能够发现Web服务器拒绝了带有ErrorCode =“ Token的令牌,该函数提供的令牌无效(0x80090308)”“

我还尝试通过本地iis,远程iis上的网站进行身份验证,并在其他工作站上运行代理。

将本地网络安全策略更改为其他ntml协议也不起作用。

您是否知道如何进一步调查此案?

0 个答案:

没有答案