pymiproxy является небольшой и милый человек-в-середине прокси способен делать HTTP и HTTP-над SSL.
Введение
pymiproxy небольшой, легкий, человек-в-середине прокси способен выполнять HTTP-протоколу HTTPS и (или SSL) инспекции. Прокси обеспечивает встроенный в центр сертификации, который способен генерировать сертификаты для назначения SSL-основе. Pymiproxy также расширяемой и обеспечивает два способа для расширения прокси: перегрузку методов, и съемная интерфейс. Это идеально подходит для ситуаций, где вы находитесь в остро нуждаются в прохладном прокси вмешиваться в амбулаторных и / или в переплете данных HTTP.
Установка
Просто запустите следующую команду в командной строке:
& NBSP; Судо питон setup.py установить
Использование
Модуль предлагает несколько примеров в коде. Вкратце, pymiproxy может работать правый прочь, выполнив следующую команду в командной строке-:
& NBSP; питона -m miproxy.proxy
Это будет вызывать pymiproxy с плагином DebugInterceptor который просто выводит первые 100 байт каждого запроса и ответа. Прокси работает на порту 8080 и слушает все адреса. Идите вперед и дать ему попробовать.
Удлинение или Реализация pymiproxy
Есть два способа расширения прокси:
- Разработка и зарегистрировать плагин перехватчик; или
- Перегрузка mitm_request и методы mitm_response в классе ProxyHandler.
Решение о какой метод вы решите использовать полностью зависит от того, или не вы хотите, чтобы подтолкнуть данные перехватываются с помощью набора перехватчиков или нет.
перехватчик Плагины
Есть в настоящее время два типа плагинов-перехватчиков:
- RequestInterceptorPlugins: выполняется до отправки запроса на удаленный сервер; а также
- ResponseInterceptorPlugins: выполненные до отправки ответа клиенту.
Ниже потока принимается pymiproxy в этом режиме:
1. Запрос клиента получили
2. Запрос клиента анализируется
Запрос 3. Клиент обрабатываются / преобразована по запросу Interceptor плагинов
4. Обновлено отправлен запрос к удаленному серверу
5. Ответ получен с помощью удаленного сервера
6. Ответ обрабатываются / преобразована Ответ Interceptor плагинов
7. Обновлен ответ отправлен клиенту
Вы можете зарегистрироваться как много плагинов, как вы хотите. Однако, имейте в виду, что плагины выполняются в порядке, что они зарегистрированы в. Позаботьтесь в том, как зарегистрировать ваши плагины, если результат один плагин зависит от результата другой.
Ниже приведен простой пример, как код, чтобы запустить прокси с плагинами:
от miproxy.proxy импорта RequestInterceptorPlugin, ResponseInterceptorPlugin, AsyncMitmProxy
класс DebugInterceptor (RequestInterceptorPlugin, ResponseInterceptorPlugin):
& NBSP; Def do_request (я, данные):
& NBSP; печать "% S >>"% Repr (данные [100])
& NBSP; возврат данных
& NBSP; Def do_response (я, данные):
и NBSP; печать ">% s '% Repr (данные [100])
& NBSP; возврат данных
& NBSP; Def mitm_response (я, данные):
& NBSP; печать
Требования
- Python
- pyOpenSSL
Комментарии не найдены