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.
Рішення про який метод ви вирішите використовувати повністю залежить від того, чи чи не ви хочете, щоб підштовхнути дані перехоплення за допомогою набору перехоплювачів чи ні.
Interceptor Плагіни
Є в даний час два типи плагінів-перехоплювачів:
- 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'% магнезії (дані [: 100])
І NBSP; повертаються даних
І NBSP; Def do_response (я, дані):
і NBSP; друк '>% S'% магнезії (дані [: 100])
І NBSP; повертаються даних
І NBSP; Def mitm_response (я, дані):
І NBSP; друк
Вимоги
- Python
- pyOpenSSL
Коментар не знайдено