Сканер прокси-сервера zap и параметры excregexes не устанавливаются с помощью флага -config?

Я пытаюсь установить конфиги при запуске zap.sh, как описано здесь.

docker run -p 8090:8090 -i owasp/zap2docker-stable zap.sh -daemon -port 8090 -host 0.0.0.0 -config api.key=0123456789 -config api.addrs.addr.name=.* -config api.addrs.addr.regex=true -config scanner.strength=INSANE -config scanner.threshold=HIGH -config context.excregexes='^(?:(?!https?:\/\/example\.com).*).$'

Но когда я запускаю сканирование, указывающее, скажем, на google.com. В логах это видно

16818 [Thread-10] INFO org.parosproxy.paros.core.scanner.HostProcess  - start host https://google.com | TestPathTraversal strength MEDIUM threshold MEDIUM

что говорит о том, что сила сканера и изменения порога игнорируются вместе с моим регулярным выражением исключения всего, что не находится на example.com. Что я делаю не так?

Примечание. Используя owasp/zap2docker-stable, попробуйте запустить слегка измененную версию это.


person Cynic    schedule 11.07.2017    source источник


Ответы (1)


Сначала вы, кажется, дважды пытались установить Силу. Кроме того, установка значения по умолчанию будет иметь значение только в том случае, если сканеры настроены на использование значения по умолчанию.

Во-вторых, вы должны попробовать настроить/усовершенствовать регулярные выражения через графический интерфейс, пока не убедитесь, что это правильно.

person kingthorin    schedule 18.07.2017
comment
Эй, спасибо, что указали на дубликат scanner.strength=, второй должен был быть scanner.threshold=, поэтому я отредактировал его. При этом это не решает проблему, и ваш ответ на самом деле не отвечает на заданный вопрос о том, как они предполагается пройти. Я просто запускаю сканирование по умолчанию. - person Cynic; 18.07.2017
comment
Есть ли причина, по которой вы пытаетесь установить все с помощью командной строки, а не с помощью веб-API? Исключение из контекста также приведет к исключению из сканирования только в том случае, если вы сканируете рассматриваемый контекст. Я думаю, что на самом деле вам нужно установить «Исключить из прокси», «Исключить из паука» или «Исключить из сканера». - person kingthorin; 19.07.2017
comment
Также кажется неудобным (хотя должно быть возможным) исключать все, кроме чего-то (example.com), когда вы можете просто включить только это (example.com). (Исключить из контекста или включить в контекст.) - person kingthorin; 19.07.2017
comment
Последнее на сегодня, хотя я не думаю, что это имеет какое-то отношение к тому, что вы испытываете или пытаетесь сделать. Вы забыли убрать точку в регулярном выражении в доменном имени. Я могу попытаться ответить на ваш вопрос здесь, но вы, вероятно, получите больше внимания, если опубликуете сообщение в группе пользователей groups.google.com/forum/#!forum/zaproxy-users - person kingthorin; 19.07.2017
comment
Нет, мне пришлось немного переключиться на что-то другое. Я начинаю думать, что это ошибка, потому что, когда сервер запускается на образе докера, он печатает INFO org.parosproxy.paros.common.AbstractParam - Setting config scanner.strength = INSANE was null и т. д. Таким образом, кажется, что он устанавливает его, просто не использует его при запуске сканирования. Вы случайно не знаете, как бы вы вместо этого установили их в примере со сканером? github.com/zaproxy/ zap-api-python/blob/master/src/examples/ - person Cynic; 05.08.2017
comment
Вы имеете в виду что-то вроде этого? github.com/zaproxy/zaproxy/ blob/develop/build/docker/ zap.ascan.set_scanner_alert_threshold(id=scanner, alertthreshold='OFF', scanpolicyname=scan_policy) Возможно, вы не хотите устанавливать его как 'OFF', но все же вы поняли идею.... - person kingthorin; 09.08.2017