Stoobly / stoobly-agent

Record, mock, and test HTTP/HTTPS requests. CLI agent for Stoobly.
Other
6 stars 0 forks source link

MacOS error installing CA cert #57

Closed stoobmmelier closed 2 years ago

stoobmmelier commented 2 years ago
$ stoobly-agent --version
stoobly-agent, version 0.12.2

$ stoobly-agent ca-cert install
Not yet implemented. Stay tuned!
Password:
***Error reading file /Users/user/.mitmproxy/mitmproxy-ca-cert.crt
Error reading file /Users/user/.mitmproxy/mitmproxy-ca-cert.crt
Traceback (most recent call last):
  File "/usr/local/bin/stoobly-agent", line 8, in <module>
    sys.exit(main())
  File "/usr/local/lib/python3.9/site-packages/click/core.py", line 829, in __call__
    return self.main(*args, **kwargs)
  File "/usr/local/lib/python3.9/site-packages/click/core.py", line 782, in main
    rv = self.invoke(ctx)
  File "/usr/local/lib/python3.9/site-packages/click/core.py", line 1259, in invoke
    return _process_result(sub_ctx.command.invoke(sub_ctx))
  File "/usr/local/lib/python3.9/site-packages/click/core.py", line 1259, in invoke
    return _process_result(sub_ctx.command.invoke(sub_ctx))
  File "/usr/local/lib/python3.9/site-packages/click/core.py", line 1066, in invoke
    return ctx.invoke(self.callback, **ctx.params)
  File "/usr/local/lib/python3.9/site-packages/click/core.py", line 610, in invoke
    return callback(*args, **kwargs)
  File "/usr/local/lib/python3.9/site-packages/stoobly_agent/app/cli/ca_cert_cli.py", line 27, in install
    installer.handle_darwin()
  File "/usr/local/lib/python3.9/site-packages/stoobly_agent/app/cli/ca_cert_installer.py", line 29, in handle_darwin
    subprocess.run(f"sudo security add-trusted-cert -d -p ssl -p basic -k {system_keychain_path} {mitm_crt_absolute_path}".split(), check=True)
  File "/usr/local/Cellar/python@3.9/3.9.9/Frameworks/Python.framework/Versions/3.9/lib/python3.9/subprocess.py", line 528, in run
    raise CalledProcessError(retcode, process.args,
subprocess.CalledProcessError: Command '['sudo', 'security', 'add-trusted-cert', '-d', '-p', 'ssl', '-p', 'basic', '-k', '/Library/Keychains/System.keychain', '/Users/user/.mitmproxy/mitmproxy-ca-cert.crt']' returned non-zero exit status 1.

The CA cert install command has changed in a newer version of mitmproxy It should be this command instead

sudo security add-trusted-cert -d -p ssl -p basic -k /Library/Keychains/System.keychain ~/.mitmproxy/mitmproxy-ca-cert.pem

Source: https://docs.mitmproxy.org/stable/concepts-certificates/#installing-the-mitmproxy-ca-certificate-manually