Как настроить mitmproxy для перехвата https?
Я пытаюсь использовать mitmproxy
отладить некоторые https
Запросы. Я настроил mitmproxy
прослушать определенный порт:
mitmproxy --listen-port 44700
Я правильно настроил свою среду:
export http_proxy=http://localhost:44700
export https_proxy=https://localhost:44700
И это работает для http
:
» http http://www.example.org
бьет mitmproxy
, как и ожидалось.
Buuut https
терпит неудачу:
» http https://www.example.org
Traceback (most recent call last):
File "/usr/bin/http", line 9, in <module>
load_entry_point('httpie==0.9.2', 'console_scripts', 'http')()
File "/usr/lib/python2.7/dist-packages/httpie/core.py", line 186, in main
error('%s: %s', type(e).__name__, str(e))
TypeError: __str__ returned non-string (type Error)
Вопросы:
- Нужно ли настраивать другой порт в
mitmproxy
слушатьhttps
? - Как мне сказать
http
(инструмент) доверятьmitmproxy
CA
?
2 ответа
Веб-интерфейс очень удобен. Ты можешь использовать mitmproxy
вместо.
Запустите прокси-сервер $
mitmweb --listen-port 44700
Убедитесь, что порт 44700 открыт в брандмауэре. Вы можете указать IP прокси с помощью--listen-host
флаг. IE--listen-host 192.168.0.10
или попробуйте--listen-host 0.0.0.0
если не может получить доступ удаленно.Настройте в удаленном устройстве IP и порт прокси.
Откройте браузер на удаленном устройстве и перейдите по http://mitm.it/, это локальная страница в локальном DNS, где вы можете загрузить и установить сертификаты.
Если андроид, необходимо указать пин-код блокировки экрана.Откройте веб-интерфейс по умолчанию в порту 8081 вашего браузера:
http://127.0.0.1:8081/#/flows
Наслаждайтесь сетевыми перехватами.
Настройте прокси своего устройства на ip/port, откройте http://mitm.it/ в браузере и выберите ОС для установки CA.
Более подробно вы можете сослаться на официальные документы