aboutsummaryrefslogtreecommitdiffstats
path: root/docs/mitmdump.rst
blob: 369bf0eb2864695729559b8af0e76b102742405f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
.. _mitmdump:
.. program:: mitmdump

mitmdump
========


**mitmdump** is the command-line companion to mitmproxy. It provides
tcpdump-like functionality to let you view, record, and programmatically
transform HTTP traffic. See the ``--help`` flag output for complete
documentation.



Examples
--------

Saving traffic
^^^^^^^^^^^^^^

>>> mitmdump -w outfile

Start up mitmdump in proxy mode, and write all traffic to **outfile**. 


Filtering saved traffic
^^^^^^^^^^^^^^^^^^^^^^^

>>> mitmdump -nr infile -w outfile "~m post"

Start mitmdump without binding to the proxy port (``-n``), read all flows from
infile, apply the specified filter expression (only match POSTs), and write to
outfile.


Client replay
^^^^^^^^^^^^^

>>> mitmdump -nc outfile

Start mitmdump without binding to the proxy port (``-n``), then replay all
requests from outfile (``-c filename``). Flags combine in the obvious way, so
you can replay requests from one file, and write the resulting flows to
another:

>>> mitmdump -nc srcfile -w dstfile

See the :ref:`clientreplay` section for more information.


Running a script
^^^^^^^^^^^^^^^^

>>> mitmdump -s examples/add_header.py

This runs the **add_header.py** example script, which simply adds a new header
to all responses.

Scripted data transformation
^^^^^^^^^^^^^^^^^^^^^^^^^^^^

>>> mitmdump -ns examples/add_header.py -r srcfile -w dstfile

This command loads flows from **srcfile**, transforms it according to the
specified script, then writes it back to **dstfile**.