Я пытаюсь провести тестирование проникновения REST Api с использованием ZAP. Api использует проверку подлинности Windows [домен \ имя пользователя] и размещается локально на определенном порту.
Сначала я сделал тест с использованием почтальона, чтобы попытаться подключиться и сделать пример запроса. Мой конфиг выглядел так:
![enter image description here](https://i.stack.imgur.com/MnxpS.png)
Я решил повторить эту настройку в OWASP zap. Я настроил моего пользователя:
![enter image description here](https://i.stack.imgur.com/rIOYi.png)
затем я устанавливаю параметры аутентификации в свойствах сеанса:
![enter image description here](https://i.stack.imgur.com/8zvUt.png)
и опции управления сессиями:
![enter image description here](https://i.stack.imgur.com/QrQTO.png)
При попытке выполнить активное сканирование в ZAP я получаю несанкционированные ответы и ответы BadRequest. Я пробовал разные имена пользователей и порты, но мне кажется, что в моей конфигурации отсутствует какая-то небольшая часть. Я наткнулся на ссылку на их странице GitHub:
HTTP / 1.1 401 Несанкционированный
но это не решило мою проблему.
Как мне настроить ZAP для использования аутентификации NTLM? Я удивлен, что мне удалось установить в Почтальоне за 5 минут , но в ZAP это заняло у меня уже два дня и все еще ничего.
Да, и не говоря уже о том, что в коде C # это также 10 минут работы с использованием учетных данных по умолчанию, введенных в httpclient через класс httpclienthandler:
ICredentials credentials = CredentialCache.DefaultCredentials;
var clientHandler = new HttpClientHandler()
{
Credentials = credentials
};
var client = new HttpClient(clientHandler);
var resp = client.GetAsync(new Uri(apiUrl)).Result;
Любая помощь приветствуется.
Спасибо