pymiproxyは小さく、甘いのman-in-the-middle SSL経由のHTTPおよびHTTPを行うためのプロキシが可能です。
<強い>はじめにの
pymiproxyは、HTTPおよびHTTPS(またはSSL)を行うことが可能な小型軽量、マン·イン·ザ·ミドルプロキシ検査である。プロキシは、SSLベースの宛先用の証明書を生成することができる組み込みの認証局を提供します。 Pymiproxyも拡張可能であり、2つのプロキシを拡張するための方法が用意されています。メソッドのオーバーロード、およびプラグイン可能なインターフェイスを。それはあなたがOUT-及び/またはインバウンドHTTPデータを改ざんするクールなプロキシの緊急に必要にしているような状況に最適です。
<強い>インストールの
ただ、コマンドプロンプトで次のコマンドを実行します。
&NBSP; sudoのパイソンはsetup.py installを
の使用法の
モジュールは、コード内のいくつかの例を提供しています。簡単に言えば、pymiproxyは、コマンドプロンプトで次のコマンドを発行して右すぐに実行することができます:
&NBSP; Pythonの-m miproxy.proxy
これは、単に各リクエストとレスポンスの最初の100バイトを出力DebugInterceptorプラグインでpymiproxyを呼び出します。プロキシは、ポート8080上で動作し、すべてのアドレスで待機します。先に行くと、それを試してみる。
拡張または実装pymiproxy
プロキシを拡張する2つの方法があります。
- 開発とインターセプタプラグインを登録する。または
- mitm_requestを過負荷、にproxyHandlerクラスのmitm_responseメソッド。
あなたが使用することを選択した方法の決定では、インターセプタかのセットを傍受されたデータをプッシュするかどうかに完全に依存している。
のインターセプタプラグインの
インターセプタのプラグインの2つのタイプが現在ありません。
- RequestInterceptorPlugins:実行する前に、リモートサーバに要求を送信する。と
- ResponseInterceptorPlugins:実行する前に、クライアントに応答を送信する。
以下の流れは、このモードでpymiproxyで撮影されています。
1.クライアント要求を受信
2.クライアントの要求に解析
リクエストインターセプタプラグインによって変換さに処理3.クライアント要求/
4.更新された要求は、リモート·サーバに送信される
リモートサーバーで受信5.レスポンス
6.レスポンスが処理/レスポンスインターセプタプラグインによって変換さ
7.更新された応答がクライアントに送信される
あなたが望むようには、できるだけ多くのプラグインを登録することができます。しかし、プラグインは、彼らはに登録されている順に実行されていることに留意してください。1、プラグインの結果は、別の結果に依存している場合、あなたのプラグインを登録する方法で注意してください。
以下は、プラグインでプロキシを実行する方法の簡単なコード例を次に示します。
miproxy.proxy輸入RequestInterceptorPluginから、ResponseInterceptorPlugin、AsyncMitmProxy
クラスDebugInterceptor(RequestInterceptorPlugin、ResponseInterceptorPlugin):
&NBSP;デフdo_request(自己、データ):
&NBSP;印刷 '>>%s'は%ののrepr(データ[:100])
&NBSP;戻りデータ
&NBSP;デフdo_response(自己、データ):
&NBSP;印刷 '>%s'は%のrepr(データ[:100])
&NBSP;戻りデータ
&NBSP;デフmitm_response(自己、データ):
&NBSP;印刷 '
の要件の
- のPythonます。
- pyOpenSSLます。
コメントが見つかりません