ZAP中的NTLM身份验证

时间:2018-08-31 11:45:54

标签: authentication ntlm owasp zap

我正在尝试使用ZAP对REST Api进行一些渗透测试。 Api使用Windows身份验证[domain \ username],并托管在本地的特定端口上。 首先,我使用邮递员进行了测试,以尝试连接并提出示例请求。我的配置看起来像这样:

enter image description here

我决定在OWASP zap中复制此设置。我设置了我的用户:

enter image description here

然后我在会话属性中设置身份验证选项:

enter image description here

和会话管理选项:

enter image description here

尝试在ZAP中执行主动扫描时,我收到未经授权和BadRequest响应。我尝试使用不同的用户名和端口,但似乎我的配置中缺少一些小片段。我在他们的github页面上看到了一个链接:

HTTP/1.1 401 Unauthorized

但是它不能解决我的问题。

我应该如何设置ZAP以使用NTLM身份验证?我很惊讶能够在5分钟之内在Postman中进行设置,但是在ZAP中,我已经花了两天的时间,仍然一无所获。

哦,更不用说在C#代码中,使用通过httpclienthandler类注入到httpclient的默认凭据也需要10分钟的工作

ICredentials credentials = CredentialCache.DefaultCredentials;
var clientHandler = new HttpClientHandler()
{
    Credentials = credentials
};

var client = new HttpClient(clientHandler);
var resp = client.GetAsync(new Uri(apiUrl)).Result;

任何帮助表示赞赏。 谢谢

1 个答案:

答案 0 :(得分:0)

陷入同样的​​问题,感谢上帝,经过4天的努力,只是找到一个小设置,它就解决了。

只需确保启用:强制用户模式 即使我在身份验证中仅选择了一个启用了用户的用户,也不确定为什么我需要选择它。但这也是有道理的,但是应该在身份验证弹出窗口中作为信息提及,以帮助像我这样的初学者。

enter image description here