Как передать идентификатор пользователя и пароль при автоматическом сканировании в OWASP ZAP

Передача идентификатора пользователя и пароля на страницу входа через OWASP ZAP

Привет, я провожу тест OWASP ZAP, создавая небольшое приложение с входом и целевой страницей, но не знаю, как передать идентификатор пользователя и пароль на страницу входа через автоматическое сканирование ZAP, чтобы оно могло сканировать целевую страницу, пожалуйста, помогите.


zap
person Sunil Dutt    schedule 16.08.2019    source источник


Ответы (1)


Для этого есть FAQ;) https://github.com/zaproxy/zaproxy/wiki/FAQformauth

Через пользовательский интерфейс:

  1. Изучите свое приложение во время проксирования через ZAP
  2. Войдите, используя действующее имя пользователя и пароль
  3. Определите контекст, например, щелкнув правой кнопкой мыши верхний узел вашего приложения на вкладке «Сайты» и выбрав «Включить в контекст».
  4. Найдите "Запрос на вход" на вкладке "Сайты" или "История".
  5. Щелкните его правой кнопкой мыши и выберите «Пометить как контекст» / «Запрос авторизации на основе формы».
  6. Убедитесь, что параметры имени пользователя и пароля установлены правильно - они почти наверняка не будут!
  7. Найдите в ответе строку, по которой можно определить, вошел ли пользователь в систему или нет.
  8. Выделите эту строку, щелкните правой кнопкой мыши и выберите «Пометить как контекст» / «Индикатор входа / выхода» в зависимости от ситуации - вам нужно установить только один из них, а не оба
  9. Дважды щелкните соответствующий узел контекста и перейдите на страницу «Пользователи» - проверьте правильность сведений о пользователе, добавьте любых других пользователей, которых вы хотите использовать, и включите их всех.
  10. Перейдите на страницу контекста «принудительный пользователь» и убедитесь, что выбран пользователь, которого вы хотите протестировать.
  11. Кнопка «Принудительный режим пользователя отключен - нажмите, чтобы включить» теперь должна быть включена.
  12. Нажатие этой кнопки заставит ZAP повторно отправлять запрос аутентификации всякий раз, когда он обнаруживает, что пользователь больше не вошел в систему, то есть с помощью индикатора «вошел в систему» ​​или «вышел из системы».

Через API процесс тот же, но с использованием вызовов API:

  1. контекст / includeInContext
  2. аутентификация / setAuthenticationMethod

Значения для

Параметры authMethodConfigParams должны быть закодированы в URL, в этом случае loginRequestData - это username = {% username%} & password = {% password%}.

person Simon Bennetts    schedule 16.08.2019
comment
Спасибо, Саймон, я попробую описанную тобой процедуру. - person Sunil Dutt; 16.08.2019