I am trying to import a saved context into Zap-cli and any command involving 'context' returns the below error. Also, running a regular zap-cli quick scan command works just fine, so I don't think it's an API or daemon issue. any insight would be appreciated
-bash-4.2$ zap-cli context list
Traceback (most recent call last):
File "/usr/bin/zap-cli", line 11, in
load_entry_point('zapcli==0.10.0', 'console_scripts', 'zap-cli')()
File "/usr/lib/python2.7/site-packages/click/core.py", line 664, in call
return self.main(*args, **kwargs)
File "/usr/lib/python2.7/site-packages/click/core.py", line 644, in main
rv = self.invoke(ctx)
File "/usr/lib/python2.7/site-packages/click/core.py", line 991, in invoke
return _process_result(sub_ctx.command.invoke(sub_ctx))
File "/usr/lib/python2.7/site-packages/click/core.py", line 991, in invoke
return _process_result(sub_ctx.command.invoke(sub_ctx))
File "/usr/lib/python2.7/site-packages/click/core.py", line 837, in invoke
return ctx.invoke(self.callback, **ctx.params)
File "/usr/lib/python2.7/site-packages/click/core.py", line 464, in invoke
return callback(*args, **kwargs)
File "/usr/lib/python2.7/site-packages/click/decorators.py", line 26, in new_func
return ctx.invoke(f, ctx.obj, *args[1:], **kwargs)
File "/usr/lib/python2.7/site-packages/click/core.py", line 464, in invoke
return callback(*args, **kwargs)
File "/usr/lib/python2.7/site-packages/zapcli/commands/context.py", line 25, in context_list
contexts = zap_helper.zap.context.context_list
File "/usr/lib/python2.7/site-packages/zapv2/context.py", line 35, in context_list
return six.next(six.itervalues(self.zap._request(self.zap.base + 'context/view/contextList/')))
File "/usr/lib/python2.7/site-packages/zapv2/init.py", line 159, in _request
data = self._request_api(url, get)
File "/usr/lib/python2.7/site-packages/zapv2/init.py", line 149, in _request_api
return self.session.get(url, params=query, proxies=self.__proxies, verify=False)
File "/usr/lib/python2.7/site-packages/requests/sessions.py", line 546, in get
return self.request('GET', url, **kwargs)
File "/usr/lib/python2.7/site-packages/requests/sessions.py", line 533, in request
resp = self.send(prep, **send_kwargs)
File "/usr/lib/python2.7/site-packages/requests/sessions.py", line 646, in send
r = adapter.send(request, **kwargs)
File "/usr/lib/python2.7/site-packages/requests/adapters.py", line 510, in send
raise ProxyError(e, request=request)
requests.exceptions.ProxyError: HTTPConnectionPool(host='127.0.0.1', port=8090): Max retries exceeded with url: http://zap/JSON/context/view/contextList/?apikey= (Caused by ProxyError('Cannot connect to proxy.', NewConnectionError('<urllib3.connection.HTTPConnection object at 0x7efbfbde60d0>: Failed to establish a new connection: [Errno 111] Connection refused',)))
Same problem for me, did you guys find a solution?
Same thing happens for me as well...
This is probably caused due to the fact that you did not specifiy the API_KEY. As you can see in the URL, the API KEY parameter is empty. This can be solved by setting the ZAP_API_KEY env variable (I advise to also set the ZAP_PORT and ZAP_PATH env variables). You can find the API KEY in ZAP desktop via Tools - Options - API