Maximilian Hils
d0809a210b
fix cert forwarding
2014-10-09 02:47:32 +02:00
Maximilian Hils
7c56a3bb01
Add SOCKS5 mode, fix #305
2014-10-09 01:59:02 +02:00
Maximilian Hils
ff366d152e
Merge branch 'cert_chains'
2014-10-09 00:51:21 +02:00
Maximilian Hils
5b33f78961
add mini documentation
2014-10-09 00:49:11 +02:00
Maximilian Hils
f04693c047
fix typo
2014-10-08 21:41:03 +02:00
Maximilian Hils
d5c318b070
fix support for chained certificates
2014-10-08 20:44:52 +02:00
Maximilian Hils
76bd554cd1
Merge branch 'master' of github.com:mitmproxy/mitmproxy
2014-10-07 17:28:13 +02:00
Marcelo Glezer
81f5636389
--replay-ignore-content & --replay-ignore-param ported from branch 0.10
2014-10-03 07:29:44 -03:00
Maximilian Hils
6ce6b1ad69
replay: carry over SNI value
2014-10-02 00:58:40 +02:00
Maximilian Hils
4167713cc0
fix timestamp formatting: end_time may not be set
2014-09-22 17:01:06 +02:00
Maximilian Hils
45f39c2380
beef up event log
2014-09-22 03:06:19 +02:00
Maximilian Hils
84e2a028c2
web: perf improvements
2014-09-22 01:44:46 +02:00
Maximilian Hils
9cda2eb3a3
web: various improvements
2014-09-21 23:43:27 +02:00
Maximilian Hils
60cec1f9b6
clean up timestamp handling
2014-09-21 22:46:48 +02:00
Maximilian Hils
aa6856786b
web: minor fixes
2014-09-20 00:25:40 +02:00
Maximilian Hils
818c5918b6
web: display flow connection info
2014-09-19 17:56:54 +02:00
Maximilian Hils
b5e727da88
web: flow icons
2014-09-19 01:57:50 +02:00
Maximilian Hils
b0374710e4
start to fill detailpane
2014-09-19 01:35:36 +02:00
Maximilian Hils
390a435ac4
basic splitter -> kick-ass splitter
2014-09-18 23:47:54 +02:00
Maximilian Hils
e66f240e81
add splitter
2014-09-18 23:22:02 +02:00
Maximilian Hils
d1ba150ea7
web: detailpane impl
2014-09-18 21:13:50 +02:00
Maximilian Hils
01da54f1c3
fix #361
2014-09-18 03:56:35 +02:00
Maximilian Hils
0d64cc9327
flowtable: add selection indicator, add keyboard navigation
2014-09-18 02:22:10 +02:00
Maximilian Hils
6a161be6b4
.jsx -> .jsx.js
...
Rename jsx files to be compatible with Chrome Dev Tools and
Workspace Mapping.
2014-09-18 00:01:45 +02:00
Maximilian Hils
b99de36b24
undo spriting
2014-09-17 23:59:39 +02:00
Maximilian Hils
4ca720b556
add features to the traffic table, introduce image spriting
2014-09-17 21:14:55 +02:00
Maximilian Hils
102bd07568
implement FlowStore basics
2014-09-17 17:30:19 +02:00
Maximilian Hils
8245dd19f4
connect eventlog events to ui
2014-09-17 15:22:42 +02:00
Aldo Cortesi
b4ecd96beb
Introduce short form object state, and connect the ends to send data to web app
2014-09-17 13:58:56 +12:00
Maximilian Hils
51db9a5612
formatting
2014-09-17 02:13:37 +02:00
Aldo Cortesi
d998790c2f
Clean up and clarify StateObject
...
- Flatten the class hierarchy
- get_state, load_state, from_state are public
- Simplify code
- Remove __eq__ and __neq__. This fundamentally changes the semantics of
inherited objects in a way that's not part of the core function of the
class
2014-09-17 11:41:42 +12:00
Aldo Cortesi
b9531ac89b
Whitespace & formatting
2014-09-17 09:54:17 +12:00
Aldo Cortesi
f7da58ca9b
Basic websocket connection, code cleanup.
2014-09-17 09:40:25 +12:00
Maximilian Hils
4f56b76b2c
fix flow detail display
2014-09-16 15:36:26 +02:00
Aldo Cortesi
bfef9b4940
Slightly more verbose gulping, remove strict declarations for now.
2014-09-16 21:41:49 +12:00
Aldo Cortesi
e4ee3e0236
Convert to ES5 inheritance pattern
2014-09-16 21:06:30 +12:00
Aldo Cortesi
6efe1aa6a9
We're not ready for ES6
...
Lets re-evaluate in June next year when it's actually released
2014-09-16 16:27:09 +12:00
Maximilian Hils
6bac1540bd
ignore compiled files in diff
2014-09-16 01:05:29 +02:00
Maximilian Hils
674bc4273e
format javascript
2014-09-16 00:56:43 +02:00
Maximilian Hils
acdd182754
web: implement EventLogStore
2014-09-16 00:05:06 +02:00
Maximilian Hils
1d9b1f79a1
web: eventlog ui
2014-09-15 18:39:25 +02:00
Maximilian Hils
cbf18320cd
client-side structure
2014-09-15 18:08:26 +02:00
Aldo Cortesi
9f8d2eea64
Merge branch 'master' of ssh.github.com:mitmproxy/mitmproxy
2014-09-15 12:38:49 +12:00
Aldo Cortesi
563078df24
Client-side cleanup
...
- Remove grunt
- Formatting and spacing. There shall be 4 spaces in a tab. Not 3. Not
5. And 2 is right out.
2014-09-15 12:37:52 +12:00
Maximilian Hils
5a59fef57f
fix bugs
2014-09-15 00:59:21 +02:00
Maximilian Hils
2cefd05be9
fix missing timeout parameter
2014-09-14 21:08:28 +02:00
Aldo Cortesi
be0996da35
Web interface is live.
2014-09-14 12:47:32 +12:00
Maximilian Hils
89b8e1ce8c
checkin assets
2014-09-14 02:44:13 +02:00
Aldo Cortesi
ff09529ba3
Add tornado dependency, serve index file
2014-09-14 12:33:07 +12:00
Aldo Cortesi
6812d304a1
Basic web service and options
2014-09-14 12:22:28 +12:00
Aldo Cortesi
17868f61a9
Remove external app option, make tick timeout explicit
2014-09-14 11:46:01 +12:00
Aldo Cortesi
81e3a6e8e6
Super-basic outline for web io loop
2014-09-14 11:30:00 +12:00
Maximilian Hils
b59234e25d
use bowser-installer
2014-09-13 16:28:45 +02:00
Aldo Cortesi
efa3e3dde8
web -> onboarding
2014-09-12 12:30:03 +12:00
Aldo Cortesi
0510c9b111
Client-side framework for web application
2014-09-10 14:23:10 +12:00
Aldo Cortesi
76982937a6
Reorg to put web app in its own directory
2014-09-10 11:34:58 +12:00
Maximilian Hils
578e9f800c
fix jsunpacker imports
2014-09-09 01:15:35 +02:00
Maximilian Hils
5fdec6b7cb
re-add mitmproxy/mitmdump scripts for convenience
2014-09-08 23:45:45 +02:00
Maximilian Hils
fbc4bb38df
mitmproxy -> libmproxy.main. do some leanup on the way
2014-09-08 23:34:43 +02:00
Maximilian Hils
ebd539b49f
update examples, fix #353
2014-09-08 17:03:34 +02:00
Maximilian Hils
ece15b3c8a
reverse proxy: adjust dst when reading flows, fix #346
2014-09-08 14:43:32 +02:00
Maximilian Hils
d06b4bfa4e
remove proxy mode abstraction: always be clear which mode we are in
2014-09-08 14:32:42 +02:00
Maximilian Hils
6dbe431c5e
document --ignore, fix #350
2014-09-08 13:41:25 +02:00
Maximilian Hils
5a2a5760d0
improve logging
2014-09-08 13:34:08 +02:00
Maximilian Hils
2b2d21aff0
add --ignore ui indication
2014-09-08 12:20:40 +02:00
Maximilian Hils
ac27d1236f
improve change_server api, add example how to change the upstream server
2014-09-07 18:01:37 +02:00
Maximilian Hils
58ea198698
fix #349
2014-09-07 15:58:27 +02:00
Maximilian Hils
5226ac200f
update code docs, make sure that url attribute never returns prettified/formatted values
2014-09-07 03:18:18 +02:00
Aldo Cortesi
bf5fef1e0b
Merge pull request #347 from mitmproxy/issue_341
...
Remove BackReferenceMixin
2014-09-07 13:04:18 +12:00
Maximilian Hils
3c65510ef5
coverage++
2014-09-06 13:09:57 +02:00
Maximilian Hils
fdd7b2f108
Merge branch 'issue_341' into server_change_api
2014-09-06 12:43:32 +02:00
Maximilian Hils
0e0cff638c
Merge branch 'master' into issue_341
2014-09-06 12:42:52 +02:00
Maximilian Hils
3a8f648807
fix race condition with the concurrent decorator
2014-09-06 12:42:23 +02:00
Maximilian Hils
ccb6182917
fix race condition with the concurrent decorator
2014-09-06 12:39:23 +02:00
Maximilian Hils
b6c8a22b67
coverage++
2014-09-06 12:23:05 +02:00
Maximilian Hils
32e1ed212d
streamline HTTPHandler.handle_flow()
2014-09-05 19:39:05 +02:00
Maximilian Hils
2a6337343a
update docs, mostly revert 2f44b26b4c
2014-09-05 15:16:20 +02:00
Maximilian Hils
a7a3b5703a
change replay_request behaviour, refs #346 ; test upstream proxy mode
2014-09-05 00:18:17 +02:00
Maximilian Hils
b23a1aa4a4
much tests. so tcp. very wow.
2014-09-04 19:08:54 +02:00
Maximilian Hils
795e19f6b7
coverage++
2014-09-04 16:37:50 +02:00
Maximilian Hils
f4d4332472
coverage++
2014-09-04 14:46:25 +02:00
Maximilian Hils
1d45c54a04
Merge branch 'issue_341' into server_change_api
2014-09-04 14:18:21 +02:00
Maximilian Hils
1135666ee6
Merge branch 'master' into issue_341
2014-09-04 14:18:07 +02:00
Maximilian Hils
39fa579dd5
remove outdated IOError test case ( f5fdfd8a9f
)
2014-09-04 14:15:49 +02:00
Maximilian Hils
4781c565a9
fix #344
2014-09-04 12:29:44 +02:00
deployable
4bdd1ed967
Add urwid stop prior to stack trace so exceptions are not cleared from screen
2014-09-04 10:47:27 +01:00
Maximilian Hils
ea55f2e012
Merge branch 'issue_341' into server_change_api
...
Conflicts:
examples/redirect_requests.py
libmproxy/console/common.py
2014-09-04 00:11:20 +02:00
Maximilian Hils
649e63ff3c
fix some leftovers
2014-09-04 00:10:01 +02:00
Maximilian Hils
2f44b26b4c
improve HTTPRequest syntax
2014-09-03 23:44:54 +02:00
Maximilian Hils
cd43c5ba9c
simplify server changes for inline scripts
2014-09-03 20:12:30 +02:00
Maximilian Hils
0c3b6ee667
fix IOError handling
2014-09-03 17:33:08 +02:00
Maximilian Hils
b0cfeff06d
fix #341 - work on flows instead of request/response internally.
2014-09-03 16:57:56 +02:00
Maximilian Hils
951a6fcc36
http: ignore disconnects that happen between requests
2014-09-03 12:31:39 +02:00
Maximilian Hils
712e5860aa
ui: display * instead of 0.0.0.0 for the bound address
2014-09-03 12:24:14 +02:00
Maximilian Hils
1e4e332ef9
improve error handling
2014-09-02 18:13:18 +02:00
Maximilian Hils
1a41c15c03
minor fixes
2014-08-31 16:52:26 +02:00
Maximilian Hils
1f47f7b6b2
refactor protocol handling, fix #332
2014-08-30 20:15:19 +02:00
Maximilian Hils
82730c1c6f
Windows transparent proxy: allow specification of custom WinDivert filter rules
2014-08-30 17:33:43 +02:00
Maximilian Hils
84e2285ee5
Windows transparent proxy: proxy local traffic
2014-08-30 16:39:15 +02:00
Maximilian Hils
b97b1f17cf
fix #328
2014-08-24 14:22:11 +02:00
Maximilian Hils
e4d6089f9a
fix #330
2014-08-23 13:53:43 +02:00
Maximilian Hils
3d861d7a67
make sure that flow.server_conn is set when script hook is called
2014-08-18 01:54:45 +02:00
Maximilian Hils
94fbf066f7
fix script tests
2014-08-18 01:47:39 +02:00
Maximilian Hils
5b7e19a77e
fix #327
2014-08-18 00:55:30 +02:00
Maximilian Hils
623cbd4e51
fix: changes to request.host in the request inline script hook are now considered for the server connection
2014-08-17 23:59:44 +02:00
Maximilian Hils
0acda9a684
fix #324
2014-08-17 23:49:08 +02:00
Maximilian Hils
bb2ce689a9
adjust to netlib changes
2014-08-17 23:06:25 +02:00
Maximilian Hils
da3e7c0187
do not connect if inline script already connected to upstream server
2014-08-12 02:55:32 +02:00
Maximilian Hils
858b0af0bb
fix #270
2014-08-10 16:10:49 +02:00
Maximilian Hils
ecf8081ba6
implement passthrough mode, fixes #175
2014-08-09 03:03:21 +02:00
Maximilian Hils
f4a1459ebe
fix #274
2014-08-09 01:02:58 +02:00
Maximilian Hils
c88613f596
fix replay form
2014-08-09 00:53:16 +02:00
Maximilian Hils
2e6a698287
fix #308
2014-08-08 19:04:58 +02:00
Maximilian Hils
4d2109ef92
fix display of urls in upstream mode, refs #308
2014-08-08 17:49:02 +02:00
Maximilian Hils
de05484d9d
fix #318
2014-08-08 04:43:44 +02:00
Maximilian Hils
a3c3e4e504
remove platform.setup
2014-08-08 03:38:59 +02:00
Maximilian Hils
a9e6121a08
properly express state information on server connections, refs #315
2014-08-08 02:45:24 +02:00
Maximilian Hils
c01b294d8d
fix script path escaping on windows, refs #293
2014-08-08 02:27:28 +02:00
Maximilian Hils
c6911a4158
docs: add docs for script args, fix #293
2014-08-07 01:30:47 +02:00
Maximilian Hils
13f030ccb5
suppress SPDY/HTTP2 announcement headers, fix #277
2014-08-03 16:25:38 +02:00
Maximilian Hils
3133136da7
fix #307
2014-08-03 02:34:29 +02:00
Maximilian Hils
10a6d4fbe5
fix #317
2014-08-03 02:01:40 +02:00
Maximilian Hils
e9401a2123
Merge branch 'stream'
...
Conflicts:
libmproxy/protocol/http.py
2014-07-31 22:29:13 +02:00
Maximilian Hils
c9be57b682
fix #313
2014-07-27 03:28:23 +02:00
Maximilian Hils
2b31a9c49e
refactor tcp handling, fix #280
2014-07-27 02:39:17 +02:00
Maximilian Hils
83536e7e53
minor fixes
2014-07-27 02:10:39 +02:00
Maximilian Hils
e9c834a30d
fix #259
2014-07-26 12:02:18 +02:00
Maximilian Hils
5a808ca2a7
add status bar indicator for streaming
2014-07-25 18:55:01 +02:00
Maximilian Hils
4382829b7d
workaround: always make sure that flow.response.reply exists
2014-07-25 18:47:48 +02:00
Brad Peabody
5bb4e37dfd
fix to make it so streaming with mitmproxy doesn't explode due to no reply on response
2014-07-24 18:46:39 -07:00
Maximilian Hils
d9ac029ec7
always initialize HTTPResponse.stream attribute
2014-07-23 00:21:33 +02:00
Maximilian Hils
4b4a18a2e4
add --stream options, various fixes
2014-07-21 21:06:55 +02:00
Maximilian Hils
562ac9e721
unify stream handling
2014-07-21 14:09:24 +02:00
Maximilian Hils
7398db80db
simplify responseheader scripthook
2014-07-20 11:17:53 +02:00
Maximilian Hils
0ba5a2cf19
Merge branch 'stream' of https://github.com/bradleypeabody/mitmproxy into stream
2014-07-20 10:57:51 +02:00
Brad Peabody
560e23af09
fixed handling of Transfer-Encoding header during streaming; wrote tests for streaming support
2014-07-19 19:10:14 -07:00
Maximilian Hils
c7425f42db
if no_upstream_cert is set, include SNI value als SubjectAltName, fix #291
2014-07-18 23:04:24 +02:00
Brad Peabody
c47ddaa3a0
basic attempt to implement streaming response, needs testing
2014-07-17 22:43:26 -07:00
Maximilian Hils
05a8c52f8f
add transparent proxy mode on windows (docs still missing)
2014-07-16 00:47:44 +02:00
Maximilian Hils
71ba7089e2
fix parameter naming
2014-07-14 17:26:22 +02:00
Brad Peabody
ca7d398b42
make include_content=False work by passing this on to netlib's http.read_response
2014-07-12 22:40:51 -07:00
Maximilian Hils
5fed5753b4
fix command line help
2014-07-06 02:15:54 +02:00
Maximilian Hils
b0c366aa45
Merge pull request #300 from zbrdge/freebsd-platform
...
Freebsd 10 platform
2014-07-03 02:24:00 +02:00
Maximilian Hils
df11595fad
Merge pull request #286 from m0sth8/remove_global_should_exit
...
Remove global should_exit and fix tests
2014-07-03 02:20:38 +02:00
Zack B
e601ade924
only support FreeBSD 10+
2014-07-01 15:08:42 -07:00
Zack B
2704963e61
add resolver for FreeBSD using pfctl
2014-07-01 14:37:52 -07:00
Maximilian Hils
c039e4a2e3
fix ProxyError inheritance
2014-06-25 23:25:49 +02:00
Maximilian Hils
84a016dccf
expose sockname
2014-06-25 23:03:15 +02:00
Vyacheslav Bakhmutov
b7c1d05782
Remove global should_exit and fix tests
2014-06-13 14:14:55 +07:00
Maximilian Hils
decb6f998a
add support for certificate chains, refs #174
2014-05-21 01:16:22 +02:00
Maximilian Hils
00fd243810
fix up error messages
2014-05-15 18:16:42 +02:00
Maximilian Hils
9cba4f8d39
fix #267
2014-05-15 14:16:05 +02:00
Maximilian Hils
221bbb7369
re-use cert creation from netlib in handle_sni, fix #272
2014-05-15 13:56:09 +02:00
davidpshaw
0ecd0ba3ab
- changed license to MIT, as it is more easily integrated into the mitmproxy project
2014-05-06 21:12:36 -04:00
David Shaw
ec85531580
- working WBXML parser
2014-05-06 13:27:13 -04:00
Maximilian Hils
4f1fe11549
Merge pull request #269 from shvar/master
...
init ProxyConfig.certstore with custom certs
2014-04-29 16:54:58 +02:00
Eli Shvartsman
1f29b16fb7
fix default certs
2014-04-29 16:13:12 +03:00
Eli Shvartsman
e2501960d3
init ProxyConfig.certstore with custom certs
2014-04-29 15:54:11 +03:00
Eli Shvartsman
ed91e19e0b
Update server.py
...
We should ask for upstream cert only if there is:
1) no no_upstream_cert option specified
2) ssl connection to server is established
2014-04-29 12:41:59 +03:00
Aldo Cortesi
1dba379ae9
Fix proxy options
2014-04-12 17:57:19 +12:00
Maximilian Hils
3b8d57ca86
fix issue #260
2014-04-07 14:40:01 +02:00
Maximilian Hils
aab071380a
beef up error messages
2014-03-26 00:51:18 +01:00
Maximilian Hils
3a89c84eaf
add requests to requrements, improve error logging
2014-03-19 17:18:21 +01:00
Maximilian Hils
6924eb75bf
fix minor version string
2014-03-19 16:05:19 +01:00
Maximilian Hils
28f82d052d
fix display bugs ( fixes #243 )
2014-03-18 19:38:02 +01:00
Maximilian Hils
a66913d4a3
forward proxy -> upstream proxy
2014-03-14 00:02:00 +01:00
Maximilian Hils
f14eeef653
remove debug switch
2014-03-13 23:47:02 +01:00
Maximilian Hils
4e17b00ce8
order command line options, add disting proxy option group
2014-03-13 23:43:26 +01:00
Maximilian Hils
843b2e28bc
adjust command line docs, fix log typo
2014-03-13 23:25:13 +01:00
Maximilian Hils
1bfc164692
adjust tests, fix option handling
2014-03-13 01:22:12 +01:00
Maximilian Hils
4d9799f103
add support for log levels
2014-03-13 01:04:45 +01:00
Maximilian Hils
7e86744226
add -d switch to mitmdump to compensate for old verbosity functionality
2014-03-12 22:39:23 +01:00
Maximilian Hils
aefb30ea60
restrict -e to mitmproxy only (not mitmdump)
2014-03-12 22:13:00 +01:00
Maximilian Hils
14db30080f
Merge branch 'master' of github.com:mitmproxy/mitmproxy
2014-03-11 02:16:30 +01:00
Maximilian Hils
15c82f743f
fix temporary server change, coverage++
2014-03-11 02:16:22 +01:00
Aldo Cortesi
e89e035d4a
Certificate forwarding.
2014-03-11 13:02:10 +13:00
Maximilian Hils
c1fff51b1b
always use relative imports, fix status bar bug
2014-03-10 22:36:47 +01:00
Maximilian Hils
e6349b540f
split up protocol\__init__.py
2014-03-10 21:57:50 +01:00
Maximilian Hils
b59013f6e3
Merge branch 'absolutely_relative_proxying'
2014-03-10 17:02:09 +01:00
Maximilian Hils
9cc10630c8
update docs, fix #215
2014-03-10 17:01:30 +01:00
Aldo Cortesi
e131e41e45
Merge pull request #232 from benwa/patch-2
...
Update layout.html
2014-03-10 17:24:34 +13:00
Maximilian Hils
fe58c1c6eb
add advanced proxying options, add SSL-terminating capability to mitmproxy
2014-03-10 05:11:51 +01:00
Maximilian Hils
78750a8b4d
lay the foundations for --(in|out)(abs|rel) command line switches, as proposed in https://groups.google.com/forum/#!topic/mitmproxy/nApno2TXS0c
2014-03-10 02:32:27 +01:00
Maximilian Hils
dd3aedca01
fix mentions of CONTENT_MISSING in libmproxy.console
2014-03-09 21:59:53 +01:00
Maximilian Hils
5598a8de82
finish proxy.py split up
2014-03-09 21:51:24 +01:00
Maximilian Hils
fc4fe83eaf
split up proxy.py
2014-03-09 21:13:08 +01:00
Bennett Blodinger
edad97ea64
Update layout.html
...
Remove unnecessary menu button on mobile
2014-03-08 20:50:46 -05:00
Maximilian Hils
2e50b10735
fix windows tests, include improvements from 0.10.1
2014-03-08 17:19:47 +01:00
Maximilian Hils
2b01c4eee7
Merge branch 'master' of github.com:mitmproxy/mitmproxy
2014-03-08 15:47:27 +01:00
Maximilian Hils
3032672f10
combine asterisk-form and origin-form into relative form
2014-03-08 15:47:09 +01:00
Aldo Cortesi
221973aff6
Revert to old cert names, use a subdir for test conf dir.
2014-03-07 16:38:24 +13:00
Aldo Cortesi
9b17d272a3
Merge branch 'master' of ssh.github.com:cortesi/mitmproxy
2014-03-07 15:22:04 +13:00
Aldo Cortesi
d0e6fa2705
Use the right conf dir...
2014-03-07 15:20:15 +13:00
Sergey Chipiga
edac95028a
remove redundant codeline
2014-03-05 21:00:29 +04:00
Aldo Cortesi
d65f2215cb
Much more sophisticated cert handling
...
- Specify per-domain certificates and keys
- Certs are no longer regenerated for SANs
- And more. :)
2014-03-05 17:28:04 +13:00
Aldo Cortesi
32af668814
Minor cleanups.
2014-03-02 22:15:53 +13:00
Aldo Cortesi
875f5f8cb6
Cipher specification.
2014-03-02 17:35:41 +13:00
Aldo Cortesi
f373ac5b6c
Improve explicit certificate specification
...
- Support cert/key in the same PEM file
- Rationalize arguments, expand tests, clean up a bit
2014-03-02 17:27:24 +13:00
Aldo Cortesi
a34a483184
Adapt for new pathod and netlib APIs.
2014-03-02 15:14:22 +13:00
Pedro Worcel
cffae49e34
add helpful messages on wrap
2014-02-22 18:04:56 +13:00
Pedro Worcel
3e50034428
fix the wrapping on backward searches
2014-02-22 17:15:37 +13:00
Pedro Worcel
9fe6b8fd26
add docs
2014-02-22 16:36:35 +13:00
Pedro Worcel
4284fd3614
add multi-line support to backwards search
2014-02-22 16:32:22 +13:00
Pedro Worcel
3c02865e8b
add multi-line support
2014-02-22 15:32:35 +13:00
Pedro Worcel
7a154e1ae1
add basic backwards search
2014-02-22 15:00:10 +13:00
Maximilian Hils
c2828de4a1
fix bug: ensure that server connection is present for tcp connections
2014-02-17 17:25:45 +01:00
Maximilian Hils
b5d02add28
Merge branch 'master' of github.com:mitmproxy/mitmproxy
2014-02-17 00:15:58 +01:00
Maximilian Hils
39f73776dc
Bump version
...
Do it now already so that mitmproxy will warn the user if netlib is not from master.
2014-02-11 12:09:24 +01:00
Maximilian Hils
d9a6037299
fix comments
2014-02-09 02:54:07 +01:00
Aldo Cortesi
a85974eaa8
Fix flow initialization order error
...
Resolves #210
2014-02-08 17:17:35 +13:00
Aldo Cortesi
b642b4870b
Better response when mitmproxy crashes.
2014-02-08 14:15:19 +13:00
Maximilian Hils
735e4400c4
add tests for reconnect to upstream proxy, ensure that server_reconnect is always hooked
2014-02-07 18:14:15 +01:00
Maximilian Hils
545fc2506b
Achievement Unlocked: Proxy Chain
2014-02-07 07:08:59 +01:00
Maximilian Hils
d07029d575
coverage++
2014-02-07 03:56:57 +01:00
Maximilian Hils
9f5f2b7071
test libmproxy.app, increase coverage
2014-02-07 02:36:39 +01:00
Maximilian Hils
66090f9aea
finalize merge
2014-02-06 23:05:53 +01:00
Maximilian Hils
ff264eb309
add functionality to change the destination server
2014-02-06 22:16:26 +01:00
Maximilian Hils
134c7795f8
remove LEGACY switches, always update flow.server_conn
2014-02-06 01:19:51 +01:00
Maximilian Hils
cb397ec788
fix bugs, expose timestamp information to console ui
2014-02-06 00:53:39 +01:00
Maximilian Hils
80683e77bc
mock urwid to run console tests on windows, push failing testcases down to 0. :-)
2014-02-05 23:17:26 +01:00
Maximilian Hils
f26d91cb81
add skeleton to change destinatin server during intercept, fix all testcases on windows
2014-02-05 20:26:47 +01:00
Maximilian Hils
9a55cd7332
Merge branch 'master' into tcp_proxy
2014-02-05 14:33:44 +01:00
Maximilian Hils
d864a326d2
fix all tests except those using set_url and get_url
2014-02-05 14:33:17 +01:00
Maximilian Hils
fd828bf959
shutdown properly if we dont keep serving
2014-02-04 18:40:12 +01:00
Steven Van Acker
66da73d8a9
fixing bug: AttributeError: DumpMaster instance has no attribute 'unload_script'
2014-02-04 14:49:51 +01:00
Maximilian Hils
6a53ae5fd3
push failing tests down to 43
2014-02-04 05:02:17 +01:00
Maximilian Hils
f6253a80ff
add priorities for the destination server address
2014-02-04 02:56:59 +01:00
Maximilian Hils
2db5f9de26
bring failing tests back into the double-digit range
2014-01-31 04:45:39 +01:00
Maximilian Hils
7d96ff00ef
remove _flow_map from state, improve logging
2014-01-31 03:01:51 +01:00
Maximilian Hils
30a44cbb41
fix server reconnect
2014-01-31 01:44:55 +01:00
Maximilian Hils
6ce1470631
move StateObject back into libmproxy
2014-01-31 01:06:35 +01:00
Maximilian Hils
5fce7be592
complete state handling
2014-01-30 20:11:01 +01:00
Maximilian Hils
8544a5ba4b
add generic TCP handler with SSL support, move StateObject into netlib
2014-01-30 18:56:23 +01:00
Maximilian Hils
179c3ae8aa
polish SimpleStateObject
2014-01-30 06:03:41 +01:00
Maximilian Hils
e00bbccfd6
remove old classes
2014-01-30 05:21:53 +01:00
Maximilian Hils
40bf42f14a
merge flow classes. current status: basic mitmdump working
2014-01-30 05:00:13 +01:00
Maximilian Hils
607f777811
fix most testsuite errors, improve proxy error handling
2014-01-29 02:49:11 +01:00
Maximilian Hils
1e3e0dd127
merge master
2014-01-28 17:29:28 +01:00
Maximilian Hils
17f09aa0af
unify ipv4/ipv6 address handling
2014-01-28 17:28:20 +01:00
Aldo Cortesi
ae87affcbe
Nicer layout for cert install options.
2014-01-28 09:44:33 +13:00
Aldo Cortesi
2df321e71b
Use the mitm.it domain for the app, turn it on by default.
2014-01-27 14:37:29 +13:00
Aldo Cortesi
47c7e37723
Serve correct certs from app. Enable Windows and Android icons.
2014-01-24 10:46:34 +13:00
Maximilian Hils
94e530ec4f
merge master
2014-01-22 16:01:31 +01:00
Aldo Cortesi
7ddc941116
Silence pyflakes
...
And pick up one bug as a consequence.
2014-01-19 18:16:24 +13:00
Aldo Cortesi
5782f9393e
Merge branch 'master' of ssh.github.com:cortesi/mitmproxy
2014-01-19 13:28:18 +13:00
Aldo Cortesi
bf1399fa2b
Handle views that don't support search gracefully
...
This includes all key/value formatted views, e.g. the image view. We
need to support these ultimately, but no time before the next release.
2014-01-19 13:23:38 +13:00
Aldo Cortesi
f5f46bf080
Re-enable caching on search.
2014-01-19 12:43:58 +13:00
Maximilian Hils
1786d77819
Add functionality to transparently proxify connections to other HTTPS proxies
2014-01-18 22:57:28 +01:00
Maximilian Hils
0b4ad05e02
merge master
2014-01-18 17:25:59 +01:00
Maximilian Hils
6c24b1d0d2
get server reconnect right, fix timestamps
2014-01-18 17:15:33 +01:00
Maximilian Hils
862b532fff
small refactorings, bugs fixed
2014-01-18 15:35:37 +01:00
Maximilian Hils
5acbef236c
fix sni bug: respond with the correct certificate
2014-01-16 02:33:14 +01:00
Maximilian Hils
621807f697
add basic error handling
2014-01-13 02:25:58 +01:00
Aldo Cortesi
069aca1df4
Deprecate Flow.unload_script in favor of Flow.unload_scripts
...
In the presence of arguments, unloading a single script is clumsy and
less useful.
2014-01-13 14:20:34 +13:00
Aldo Cortesi
4f69eef8f3
Extract command parsing and use in script grid editor
2014-01-13 14:15:17 +13:00
Aldo Cortesi
42d4a2fae9
Script refactoring: move script command parsing into script module.
2014-01-12 23:02:29 +13:00
Aldo Cortesi
e5776b8be3
Clean up and clarify script API
2014-01-12 13:59:32 +13:00
Aldo Cortesi
58e1b3a47f
Start refactoring scripts
...
- Move ScriptContext into script module
- Use mock module instead of hand-rolled mock objects in tests
2014-01-12 12:49:19 +13:00
Maximilian Hils
24fc8ff292
fix header assembly, other improvements
2014-01-10 01:38:28 +01:00
Maximilian Hils
efdb25ef68
improve https handling
2014-01-09 17:56:42 +01:00
Maximilian Hils
607d79b63f
groundwork completed
2014-01-09 05:34:29 +01:00
Maximilian Hils
ea2f17680b
continue work on the proxyhandler
2014-01-07 02:29:10 +01:00
Dan Wilbraham
1c2e638d53
Update ViewProtobuf in contentview.py to also decode as protobuf if the content_type is "application/x-protobuffer"
2014-01-05 23:40:02 +00:00
Aldo Cortesi
e31fc8ac40
Tweaking web stub app, icons for certificates, serve PEM correctly.
2014-01-05 16:59:27 +13:00
Aldo Cortesi
a49115a227
Remove / binding alias for limit
...
The search and limit functionality is too different.
2014-01-05 14:14:36 +13:00
Maximilian Hils
b34ad82b52
first steps on tcp proxying
2014-01-05 01:03:55 +01:00
Aldo Cortesi
d5f9b02615
Merge pull request #192 from mitmproxy/refactor_read_http_body
...
move CONTINUE checks into mitmproxy
2014-01-04 14:37:47 -08:00
Aldo Cortesi
7d37e0ce10
Merge pull request #193 from droope/search-functionality
...
Search functionality
2014-01-04 14:34:20 -08:00
Aldo Cortesi
8a599be060
Merge branch 'migrate_from_pil_to_pillow' of https://github.com/Kami/mitmproxy into Kami-migrate_from_pil_to_pillow
...
Conflicts:
requirements.txt
2014-01-05 11:15:27 +13:00
Aldo Cortesi
ac31039ad3
Merge pull request #198 from Kami/add_css_view
...
Add CSS view which beautifies minified CSS files
2014-01-04 14:04:02 -08:00
Aldo Cortesi
a2261e3cf0
Introduce file descriptor decorators for Request objects
...
Which lets us enable the apps again, now running from flow.py
2014-01-05 10:58:53 +13:00
Tomaz Muraus
c5f4614ba5
Fix CSS view prompt, update display mode options.
2014-01-04 17:13:46 +01:00
Tomaz Muraus
ff2d7a7501
Provide more sensible serializer options.
2014-01-04 15:50:40 +01:00
Tomaz Muraus
e9f6302ec7
Add CSS view which beautifies CSS files if cssutils library is available,
...
otherwise it acts as a no-op.
2014-01-04 04:49:50 +01:00
Aldo Cortesi
45eab17e0c
Decouple message type from message class name.
2014-01-04 14:42:32 +13:00
Aldo Cortesi
1e07d9e6e7
Move app mechanism to flow.py
...
Disable apps while message passing is improved.
2014-01-04 14:35:11 +13:00
Aldo Cortesi
f25c532960
Merge branch 'master' of ssh.github.com:cortesi/mitmproxy
2014-01-04 13:15:13 +13:00
Maximilian Hils
8472ed97ed
fix #195
...
(untested)
2014-01-03 23:35:25 +01:00
Tomaz Muraus
e9c2c0ac3a
Migrate from Pil to the latest version of Pillow.
2014-01-03 21:13:14 +01:00
Aldo Cortesi
3aa4b6603c
Fix app in mitmproxy console, update to bootstrap 3.
2014-01-03 15:29:32 +13:00
Pedro Worcel
799c877676
now really fix it + test
2013-12-26 22:18:34 +13:00
Pedro Worcel
a4b059c2a7
fix bug that happens after searching for a non-existant string, and
...
later for an existant one.
2013-12-26 21:53:04 +13:00
Pedro Worcel
34a09780ee
add docs
2013-12-26 17:26:51 +13:00
Pedro Worcel
70f6bb301b
added 'n' functionality, tidy up & testing
2013-12-26 17:16:26 +13:00
Pedro Worcel
21efe2f2c8
add looping around
2013-12-26 17:04:18 +13:00
root
bcf5620239
fix crash
2013-12-25 16:57:54 +13:00
root
95406bd119
Add focusing, and fixes non-clearance of prev searches. Add
...
documentation.
2013-12-25 16:50:29 +13:00
root
932464d0a0
test passing, UI still not working
2013-12-24 14:28:20 +13:00
root
359573a764
add search with / for compatibility with what I'll do.
2013-12-23 16:41:46 +13:00
Maximilian Hils
e643759ef6
merge smurfix/fix2, add serverconnect hook docs, adjust tests
2013-12-16 22:10:06 +01:00
Maximilian Hils
f4b58ba495
move CONTINUE checks into mitmproxy
2013-12-15 06:33:18 +01:00
Maximilian Hils
605950bfdf
add @concurrent decorator for inline scripts, fixes #176
2013-12-15 02:43:16 +01:00
Aldo Cortesi
224cd41dc2
Merge pull request #189 from mitmproxy/refactor_proxyhandler
...
Refactor ProxyHandler
2013-12-13 15:05:22 -08:00
Matthias Urlichs
afff1f1734
Reconnect if the server-connect hook needs the request to decide what to do
2013-12-12 10:00:23 +01:00
Matthias Urlichs
517e5e6688
handle a hook changing connection parameters
2013-12-12 09:22:55 +01:00
Matthias Urlichs
7b6057fa64
serverconnect hook: Set sc.request
...
The serverconnect hook script might need to examine the incoming request
in order to set up the server connection.
Example use: bind to a distinct source IPv6 address for each client.
2013-12-12 07:56:40 +01:00
Maximilian Hils
39ffe10334
add content-length 0 if we remove header for chunked encoding, fixes #186
2013-12-12 04:42:29 +01:00
Maximilian Hils
7db1430ee7
ignore missing CN in certificates. fixes #169
2013-12-12 03:24:17 +01:00
Maximilian Hils
28a234e28b
store resolved ip addresses, fixes #187
2013-12-12 02:11:22 +01:00
Aldo Cortesi
a600441e37
Merge branch 'master' of ssh.github.com:cortesi/mitmproxy
2013-12-10 22:24:23 +13:00
Aldo Cortesi
1bbeace350
Bump version
2013-12-10 22:23:38 +13:00
Maximilian Hils
f0e96be142
ensure binary read on windows
2013-12-10 03:13:37 +01:00
Maximilian Hils
21de99cb09
add comments
2013-12-10 02:30:07 +01:00
Maximilian Hils
a78b185278
refactor ProxyHandler, remove duplicate code
2013-12-10 01:47:19 +01:00
Maximilian Hils
2be19a5620
Merge remote-tracking branch 'origin/master'
2013-12-09 19:10:40 +01:00
Maximilian Hils
4984bbb83b
remove code duplication in ProxyHandler by unifying read_transparent and read_reverse
2013-12-09 19:10:15 +01:00
Aldo Cortesi
1d536f64d5
Small workaround to make mitmproxy work again.
...
Further work is required to make scripts work again, though.
2013-12-09 22:34:47 +13:00
Maximilian Hils
3bd238de37
backport changes to fix tests
2013-12-08 15:46:11 +01:00
Maximilian Hils
a509a9037b
Merge branch 'master' into 0.10
2013-12-08 14:14:57 +01:00
Aldo Cortesi
3a1d85ab18
Merge pull request #134 from mhils/scripts_improvements
...
Support multiple scripts and script arguments. refs #76
2013-12-08 01:14:12 -08:00
Aldo Cortesi
7aeaf9d448
Merge pull request #161 from mitmproxy/external_webapp
...
External webapp
2013-12-08 01:09:46 -08:00
Aldo Cortesi
73791f986a
Merge pull request #166 from ghjc/forward-proxy
...
Added -F http[s]://server:port option that allows MITM to forward traffi...
2013-12-08 01:05:33 -08:00
Aldo Cortesi
4816cae98c
Merge pull request #170 from jsoriano/master
...
Reverse proxy works with SSL
2013-12-08 01:02:17 -08:00
Aldo Cortesi
dfcec4ffba
Merge pull request #180 from mitmproxy/add_serverconnection_scripthook
...
Add serverconnection scripthook
2013-12-08 00:55:55 -08:00
Aldo Cortesi
83f061c1a0
Merge pull request #184 from richie5um/RichS-RateDivideByZeroIssue
...
Fix divide by zero issue when timestamp start and end are the same
2013-12-08 00:54:11 -08:00
Rich Somerfield
9a986e0c1b
Fix divide by zero issue when timestamp start and end are the same
2013-11-26 14:14:51 -08:00
Maximilian Hils
d4c3b1c213
attempt to fix https://github.com/mitmproxy/netlib/issues/24
2013-11-19 04:08:16 +01:00
Maximilian Hils
675518f873
add serverconnect script hook
2013-11-18 17:25:52 +01:00
Jaime Soriano Pastor
7140323bdb
New method establish_ssl to avoid duplicated code
2013-09-26 12:38:13 +02:00
Jaime Soriano Pastor
f33d128a7f
Reverse proxy works with SSL
2013-09-26 12:23:48 +02:00
Maximilian Hils
2956c144d3
Merge branch 'master' into 0.10
2013-09-14 23:47:04 +02:00
JC
65d1ed1b3c
Added -F http[s]://server:port option that allows MITM to forward traffic to another http server upstream.
2013-08-30 17:19:58 -07:00
Aldo Cortesi
8d954d9965
Version bump.
2013-08-25 10:37:35 +12:00
Aldo Cortesi
a2643b52f9
Tweak timing display
...
- Remove elapsed time. Space is at a premium here, and this is somewhat
redundant with the rate figure. We should display complete timing information
somewhere in the detailed flow view.
- Tone down the colour. Reserve highlights for stuff that should really pop out
to the user.
- Make rate calculation more acurate. Include header sizes. Use response start
and end time, rather than request end and response end. This means that we show
actual transfer rates, not including DNS requests and so forth.
2013-08-23 10:25:44 +12:00
Maximilian Hils
bb4748fb8f
add option to expose webapp externally, remove distinct ip setting
2013-08-18 20:03:53 +02:00
Maximilian Hils
729677cd85
Merge branch 'master' into 0.10
2013-08-17 13:30:36 +02:00
Kyle Manna
41041159f6
console: Add support for displaying transfer rate
...
* Display the rate in the the response row.
* Very handy for passive performance analysis.
2013-08-13 16:33:53 -07:00
Kyle Manna
ea28496bea
console: Add support for displaying elapsed time
...
* Display the elapsed time in the the response row.
* Very handy for passive performance analysis.
2013-08-13 16:33:53 -07:00
Kyle Manna
4ede2f126a
utils: Add missing "B" for pretty_size()
...
* Add missing unit for megabytes, should print "MB".
2013-08-13 16:33:39 -07:00
Aldo Cortesi
f850bdd848
Revamp dummy cert store
...
We no longer keep these on disk. This is for a number of reasons, including
some race conditions and the fact that some valid IDNA-encoded domain names are
not valid file names on Windows.
2013-08-12 16:04:02 +12:00
Aldo Cortesi
2c4e5e0a73
Better handling of cert errors on connection.
2013-08-10 23:07:22 +12:00
Aldo Cortesi
edb10e33aa
Remove GPL notices left in source files after our change to the MIT license.
...
Thanks to Roy Shamir for reporting this.
2013-08-01 11:08:00 +12:00
Aldo Cortesi
439d9a294c
Make use of a change to netlib.tcp that clarifies error conditions for flush and close.
...
Should fix #144 .
2013-07-30 09:42:29 +12:00
Aldo Cortesi
5f0b5532bc
Show an error when attempting to decode invalid data.
2013-07-29 18:14:11 +12:00
Aldo Cortesi
d54398cc79
Repair minor user interface issue that caused brief flashes of duplicate flows in the flow list.
2013-07-29 12:38:41 +12:00
Maximilian Hils
29bcbd57d5
fix #144
...
netlib wraps IOError in NetLibDisconnect, so we need to cover this as well.
2013-07-28 21:05:17 +02:00
Aldo Cortesi
a21c989ccd
Fix startup with no state.
...
Bug introduced in previous patch.
2013-07-28 22:40:51 +12:00
Aldo Cortesi
df3d2d70ed
Terminate can be called on an unconnected server connection.
2013-07-28 18:05:04 +12:00
Aldo Cortesi
10a9e3365f
Some refactoring of the console inteface.
...
Reduce some state duplication, by removing currentflow variable.
Fixes #141
2013-07-28 18:00:49 +12:00
Aldo Cortesi
10b744ee08
Properly terminate SSL server connections.
...
Before, we had dangling SSL server connections causing resource exhaustion.
I believe this fixe #144 and #153
2013-07-28 10:50:25 +12:00
Aldo Cortesi
5c1157ddaf
Move app instantiation out of proxy.py.
2013-07-24 10:32:56 +12:00
Aldo Cortesi
64ce3b358f
Make a start on mitmproxy web app.
2013-07-23 10:28:35 +12:00
Aldo Cortesi
55f7e8d5b9
Don't take minor version into account when checking serialized data compatiblity.
2013-07-13 14:44:09 +12:00
Aldo Cortesi
c4d03d8b85
Merge pull request #137 from caujka/master
...
Handling for EOF reading error in gzipped content
2013-07-01 17:37:15 -07:00
Matthias Urlichs
d9cc6f1dd6
proxy.py: Catch channel.ask() returning None when terminating
2013-06-28 07:53:56 +02:00
Matthias Urlichs
be1377850e
Close connection when flush fails
2013-06-26 15:02:55 +02:00
Oleksandr Sheremet
0afd3fc42f
Added handling for EOF reading error in gzipped content.
2013-06-17 21:46:54 +03:00
Maximilian Hils
d462b444b7
update tests to reflect changes to options.scripts
2013-06-17 16:48:06 +02:00
Maximilian Hils
84248d431b
fix send_error behavior if there are no headers
2013-06-17 10:52:19 +02:00
Aldo Cortesi
886970040b
Revert "Use lsof instead of pfctl to find target host on OSX in transparent mode."
...
This reverts commit ffeede9b39
.
2013-06-16 16:23:36 +12:00
Aldo Cortesi
db43f1ffcc
Version bump, doc extension, URLs to github.com/mitmproxy/*
2013-06-16 13:59:01 +12:00
Maximilian Hils
fd36142018
Merge remote-tracking branch 'origin/scripts_improvements' into 0.10
2013-06-16 00:41:43 +02:00
Maximilian Hils
ba47690a03
always read files in binary mode
2013-06-16 00:23:44 +02:00
Maximilian Hils
2b4af8d475
add support for multiple scripts and script arguments. refs #76
2013-06-13 16:09:38 +02:00
Aldo Cortesi
d3beaa7382
Merge pull request #132 from ipopov/master
...
A humble pull request
2013-06-08 16:28:47 -07:00
Aldo Cortesi
1a5c27aa7d
Massage content-type before sending it to mime detection
...
Fixes #67
2013-06-09 11:26:44 +12:00
Aldo Cortesi
7ef68b5a13
Fix creation of new response when none existed before.
...
Fixes #133
2013-06-09 11:14:34 +12:00
Ivaylo Popov
ffeede9b39
Use lsof instead of pfctl to find target host on OSX in transparent mode.
2013-05-27 23:09:42 -04:00
Michael Bisbjerg
125b3e5e5b
- Quick-fix for issue #128
...
New bug: It correct-cases Content-Length for any webserver sending other casings, like CONTENT-LENGTH.
2013-05-21 15:57:14 +02:00
Aldo Cortesi
bc88930fb7
Merge branch 'master' of ssh.github.com:cortesi/mitmproxy
2013-05-05 13:19:14 +12:00
Aldo Cortesi
9fa09cc1f9
Fix crash in client playback.
2013-05-05 13:18:52 +12:00
Aldo Cortesi
5cd7563d12
Minor coverage.
2013-04-30 09:13:33 +12:00
Jason A. Novak
f78dada550
Add error checking to ViewProtobuf
...
There are protobufs that protoc can't parse. When protoc --decode_raw
fails, it returns nothing to stdin, and writes "Failed to parse input."
to stderr. Before this commit, if protoc --decode_raw couldn't parse
the protobuf, the blank stdout output would get returned to the view;
with this commit stderr gets caught and returned to the view.
2013-04-21 12:46:37 -05:00
Aldo Cortesi
61c794e08f
Merge pull request #107 from rouli/master
...
Adding remote TCP and SSL setup timestamps
2013-04-19 17:19:26 -07:00
Aldo Cortesi
793c41a5c4
Merge pull request #112 from hamstah/protobuf-view
...
Adds a new view for protocol buffers
2013-04-19 17:18:44 -07:00
Alexis Hildebrandt
3d7f31b23d
Correct display mode highlight keys
...
Add html display mode to the help documentation.
Correct html and hex display mode highlight keys (help used 'h' for hex).
Correct json display mode highlight keys.
2013-04-16 23:54:34 +02:00
Nicolas Esteves
d4cfbbb822
Adds a new view for protocol buffers
...
The view uses protoc from the Google protocol buffer
tools. If the tool isn't installed, the view isn't
shown.
Google protobuf repo:
https://code.google.com/p/protobuf/
2013-04-06 19:21:13 +01:00
Aldo Cortesi
51b775cfd4
Merge pull request #101 from eentzel/keep-blank-params
...
Keep blank URL parameters
2013-04-04 15:55:51 -07:00
Aldo Cortesi
ca9c60d2eb
Docs.
2013-04-05 11:55:28 +13:00
Aldo Cortesi
e3fd0e838d
Add a basic built-in web app.
2013-03-25 09:20:26 +13:00
Aldo Cortesi
98e4421a90
Trim docs.
2013-03-23 15:42:25 +13:00
Aldo Cortesi
800af34763
Fix crash on intercept.
...
Fixes #106
2013-03-23 14:40:03 +13:00
Rouli
c6bf28f3f7
adding tcp and ssl setup timestamps to get better resolution on flows performance
2013-03-19 18:21:52 +02:00
Rouli
c94aadcb0e
Merge remote-tracking branch 'upstream/master'
2013-03-18 14:24:13 +02:00
Aldo Cortesi
6614498744
Update styling, GameCenter highscore tutorial.
2013-03-18 08:36:56 +13:00
Aldo Cortesi
d2d3eb6490
Un-break unit tests. Tsk tsk.
2013-03-17 17:53:48 +13:00
Aldo Cortesi
e50da8164f
Enable --host option for mitmdump
2013-03-17 17:43:31 +13:00
Aldo Cortesi
0e993bec6f
Add the --host option, which uses the value in the Host header for dispaly URLs.
...
- Can be toggled with "o" then "h" in mitmproxy
- Useful for transparent mode
2013-03-17 17:37:54 +13:00
Aldo Cortesi
790ad468e4
Fix bug that caused mis-identification of some HTTPS connections in transparent mode.
2013-03-17 14:35:36 +13:00
Aldo Cortesi
cfb5ba89ce
Introduce a filtered flow writer, and use it in dump.py
...
Fixes #104
2013-03-14 09:19:43 +13:00
Aldo Cortesi
cde66cd584
Fuzzing, and fixes for errors found with fuzzing.
2013-03-03 22:03:27 +13:00
Aldo Cortesi
7835e0c2c7
Begin some simple fuzzing with pathod.
...
Finally doing what I started writing pathod for in the first place...
2013-03-03 14:56:56 +13:00
Aldo Cortesi
e608d10f45
Remove __slots__ to make it possible to inherit from Options classes.
2013-03-03 12:26:20 +13:00
Aldo Cortesi
75b5c97095
Revert "show current filepath in status bar"
...
This reverts commit bf8367d6cf
.
This just doesn't work. We need a better solution, probably in the next release.
2013-03-03 12:18:19 +13:00
Aldo Cortesi
2465b8a376
100% unit test coverage on proxy.py. Hallelujah!
2013-03-03 12:13:33 +13:00
Aldo Cortesi
d5876a12ed
Unit test proxy option parsing.
2013-03-03 11:58:57 +13:00
Aldo Cortesi
5c6587d4a8
Move HTTP auth module to netlib.
2013-03-03 10:37:06 +13:00
Aldo Cortesi
c20d1d7d32
Extend unit tests for proxy.py to some tricky cases.
2013-03-02 22:42:36 +13:00
Aldo Cortesi
415844511c
Test cert generation errors.
2013-03-02 16:59:16 +13:00
Aldo Cortesi
a95d78438c
Test SNI for transparent mode.
2013-03-02 15:06:49 +13:00
Aldo Cortesi
10db82e9a0
Test SNI for ordinary proxy connections.
2013-03-02 14:52:05 +13:00
Aldo Cortesi
ba674ad551
New SNI handling mechanism.
2013-03-01 09:05:39 +13:00
Rouli
b6cae7cd2d
Merge remote-tracking branch 'upstream/master'
2013-02-28 13:28:57 +02:00
Rouli
35f36481b9
adding __str__ to make export to har nicer
2013-02-28 13:28:42 +02:00
Aldo Cortesi
0257815141
Significantly simplify server connection handling, and test.
2013-02-24 22:24:21 +13:00
Aldo Cortesi
705559d65e
Refactor to prepare for SNI fixes.
2013-02-24 17:35:24 +13:00
Aldo Cortesi
d0639e8925
Handle server disconnects better.
...
Server connections can be closed for legitimate reasons, like timeouts. If
we've already pumped data over a server connection, we reconnect on error. If
not, we treat it as a legitimate error and pass it on to the client.
Fixes #85
2013-02-24 14:04:56 +13:00
Aldo Cortesi
05e4d4468e
Test request and response kill functionality.
2013-02-23 21:59:25 +13:00
Aldo Cortesi
269780c577
Unit test dummy response functions.
2013-02-23 16:34:59 +13:00
Aldo Cortesi
f203881b0d
Remove redundant clause in controller.Reply
2013-02-23 14:13:43 +13:00
Aldo Cortesi
7800b7c910
Refactor proxy core communications to be clearer.
2013-02-23 14:10:27 +13:00
Aldo Cortesi
aaf892e3af
Significantly refactor the master/slave message passing interface.
2013-02-17 12:42:48 +13:00
Eric Entzel
6bcf29c0ed
Keep blank URL parameters
...
TODO: This should probably be configurable
2013-02-11 13:22:25 +11:00
Aldo Cortesi
782bbee8c0
Unit tests for ServerConnectionPool
2013-01-29 11:35:57 +13:00
Aldo Cortesi
2aa175a6ca
Stub implementation of a server connection pool.
2013-01-29 10:55:19 +13:00
Aldo Cortesi
6f157d936f
Merge pull request #99 from rouli/master
...
Adding helper functions to make HAR export easier
2013-01-28 13:28:49 -08:00
Rouli
330fbfe8cc
adding helper functions to make HAR export easier
2013-01-28 17:37:25 +02:00
Aldo Cortesi
a74ca40660
Unravel enormously long read_request into three distinct methods.
2013-01-28 22:26:25 +13:00
Aldo Cortesi
57f01ffb07
Test suite, remove extraneous code.
2013-01-28 21:59:03 +13:00
phil plante
68952d579e
Force flush of file content in dump
...
The dump file would be end up corrupted sometimes when working with mitmdump in a VM. Adding an explicit flush seems to have resolved the file sync issues.
2013-01-24 20:46:50 -08:00
Aldo Cortesi
25cb9471f0
Add tests for client certificate support.
2013-01-20 22:39:28 +13:00
Aldo Cortesi
294bca139c
Merge branch 'master' of ssh.github.com:cortesi/mitmproxy
2013-01-19 17:07:27 +13:00
Chris Neasbitt
e9264a8253
Fixed a bug in format_flow in common.py. Changed the reference from timestamp to timestamp_start.
2013-01-18 23:04:11 -05:00
Aldo Cortesi
6600c589ab
Rudimentary testing for client certs.
2013-01-18 17:08:30 +13:00
Aldo Cortesi
7a79eeb143
Merge branch 'master' of ssh.github.com:cortesi/mitmproxy
...
Conflicts:
test/test_server.py
2013-01-18 14:50:31 +13:00
Rouli
446f9f0a0f
Merge remote-tracking branch 'upstream/master'
2013-01-17 17:33:29 +02:00
Rouli
20fa6a3083
changing requests and responses to have two timestamps, one marking their initiation, and the other their complete
2013-01-17 17:32:56 +02:00
Aldo Cortesi
d0ee4d60d0
Unit tests and minor code refactoring for ServerConnection.
2013-01-05 19:44:12 -08:00
Aldo Cortesi
060e3198bc
Remove cert_wait_time flag.
...
We now cater for this by generating certs with a commencement date an hour in
the past in netlib.
2013-01-06 01:18:47 +13:00
Aldo Cortesi
891c441a6d
Use new netlib certificate store implementation.
2013-01-06 01:16:08 +13:00
Aldo Cortesi
9cfc785cd3
Unit test love - 100% for flow.py, dump.py
2013-01-05 21:56:33 +13:00
Aldo Cortesi
46ab6ed491
Minor cleanups of proxy request handling.
2013-01-04 14:19:32 +13:00
Aldo Cortesi
09f664cdea
Refactor proxy auth a bit
...
- Remove authentication scheme option. We only support basic at the moment -
we'll add the option back when we diversify.
- Add some meta variables to make printout nicer
2013-01-02 17:35:44 +13:00
Aldo Cortesi
7b3d3dc85e
Documentation, setup.py updates, styling.
2013-01-02 14:02:41 +13:00
Aldo Cortesi
e42136a6ef
Better error handling for transparent mode remote address resolution.
2013-01-01 11:24:11 +13:00
Aldo Cortesi
e2dc7ba09d
First draft of OSX transparent proxy mode.
2013-01-01 11:13:56 +13:00
Aldo Cortesi
5347cb9c26
More work on proxy auth
...
- Strip auth header if auth succeeds, so it's not passed upstream
- Actually use realm specification to BasicProxyAuth, and make it mandatory
- Cleanups and unit tests
2012-12-31 10:56:44 +13:00
Aldo Cortesi
3b84111493
Test and robustify BasicProxyAuth.parse_auth_value
...
- This is partly in preparation for moving the implementation to netlib
- Also add an unparse_auth_value for testing (and use in pathod once the move is done)
2012-12-31 10:34:25 +13:00
Aldo Cortesi
018c229ae4
Start solidifying proxy authentication
...
- Add a unit test file
- Remove some extraneous methods
- Change the auth API to make the authenticate method take a header object.
2012-12-31 09:15:56 +13:00
israel
440a9f6bda
adding some simple authetication code to limit proxy access
2012-12-30 01:41:58 -08:00
israel
935505bc4f
adding some simple authetication code to limit proxy access
2012-12-30 01:24:30 -08:00
Aldo Cortesi
3c8dcf8808
Merge pull request #82 from kanzure/show-filepath-in-statusbar
...
Show current filepath in status bar
2012-12-30 00:49:45 -08:00
Bryan Bishop
bf8367d6cf
show current filepath in status bar
...
Showing the filename is useful when looking at multiple .mitm files
simultaneously.
2012-12-26 22:14:39 -06:00
Bryan Bishop
4d250095cb
fix external viewer using shlex
...
This makes spawn_external_viewer not crash when $EDITOR or $PAGER have
spaces or multiple arguments.
In addition, spawn_external_viewer now chmods the file to read-only to
remind users who use only an $EDITOR that this function does not read
the file when the user returns.
Also, some of the redundant exception case handling for editing has been
consolidated.
fixes #79
2012-12-22 18:26:15 -06:00
Bryan Bishop
1c6139e013
remove trailing whitespace
2012-12-09 15:57:11 -06:00
Bryan Bishop
505da188eb
Show an error when $EDITOR/$PAGER are unset.
...
This catches an exception that otherwise crashes mitmproxy.
fixes cortesi/mitmproxy#71
2012-12-05 12:58:29 -08:00
Aldo Cortesi
8c976ac7f0
Substantially rewrite AMF decoding.
...
This is tricky, but we should now handle a lot more corner-cases.
2012-11-26 13:25:07 +13:00
Mathieu Mitchell
15c367ffb4
Workaround for PIL's ambiguious import method and/or easy_install PIL packaging problem.
...
PIL documents two different way to import it's modules:
* import Image (http://www.pythonware.com/library/pil/handbook/introduction.htm )
* from PIL import Image (http://www.pythonware.com/library/pil/handbook/image.htm )
The same problem was noted in Django at https://code.djangoproject.com/ticket/6054
2012-11-23 11:48:24 -05:00
Aldo Cortesi
626fc39804
Move eventlog to new Urwid container API.
2012-11-23 15:44:43 +13:00
Aldo Cortesi
57d6650e8e
Urwid 1.1 compatibility.
2012-10-29 09:30:59 +13:00
Aldo Cortesi
68f1000e42
Improve error reporting for one-shot scripts.
2012-10-11 11:12:06 +13:00
Aldo Cortesi
0d59fd7e01
Move cleanBin and hexdump into netutils.
2012-09-24 11:21:12 +12:00
Aldo Cortesi
21f74efa10
Stub out ctypes structures for OSX transparent mode.
2012-09-17 11:05:20 +12:00
Aldo Cortesi
d115b5ae70
Expand Flow.match to accept either a string or a compiled filter expression.
2012-09-14 09:41:01 +12:00
Aldo Cortesi
54cee9db7f
Catch a potential exception on connection finalization.
2012-09-14 09:40:13 +12:00
Aldo Cortesi
b7d89f6919
Don't run replace or header hooks on error.
2012-09-02 12:57:49 +12:00
Aldo Cortesi
5630d3f660
Add help entry for H global header shortcut.
2012-09-02 11:53:00 +12:00
Aldo Cortesi
9c009a872e
Add U shortcut to add user-agent strings to global Headers editor.
2012-09-02 11:50:17 +12:00
Aldo Cortesi
3fc9af63c1
Fix a crash when re-editing a path prompt after an error.
2012-08-31 13:41:08 +12:00
Aldo Cortesi
26cefc95e8
Make grid editor file reading more robust.
2012-08-31 13:33:18 +12:00
Aldo Cortesi
a33e90f081
Add a shortcut to header editor to add standard User-Agent strings.
2012-08-31 13:28:04 +12:00
Aldo Cortesi
71ae158d7b
Display "No Content" instead of a parse error when there is no content.
2012-08-30 12:51:04 +12:00
Aldo Cortesi
a2f9ca1d4d
Add application/javascript to ~a filter asset matcher.
2012-08-30 12:42:31 +12:00
Aldo Cortesi
38ddbcc314
Add a snippet to GridEditor help text explaining that we're using escaped strings.
2012-08-25 13:29:05 +12:00
Aldo Cortesi
87463049f1
Add a "R" shortcut to GridEditor, letting the user read unescaped data from file.
2012-08-25 13:25:59 +12:00
Aldo Cortesi
514e19b172
Do away with explicit encodings, and display an error message for invalid values.
2012-08-25 13:13:16 +12:00
Aldo Cortesi
c6d1fe9e59
Use Python-style escaped strings in GridEditor.
2012-08-25 12:54:34 +12:00
Aldo Cortesi
82893ffae2
Add an "r" shortcut in grid editors to read value from file.
2012-08-25 12:21:45 +12:00
Aldo Cortesi
3787f8befb
Add a graphical editor for path components (e -> p shortcut from request view screen).
2012-08-19 13:15:54 +12:00
Aldo Cortesi
a77ccc406d
Getter and setter for path component on Requests.
2012-08-19 13:03:21 +12:00
Aldo Cortesi
1b7990897e
Command-line options for header setting.
2012-08-19 00:14:16 +12:00
Aldo Cortesi
3e96015e61
Add SetHeaders, analogous to ReplaceHooks, with a graphical editor in mitmproxy (H shortcut).
...
SetHeaders defines headers that are set on flows, based on a matching pattern.
Existing headers are over-ridden.
2012-08-18 23:41:04 +12:00
Aldo Cortesi
53e453f72e
Use the new ODict get_first convenience function in a bunch of places.
2012-08-18 18:14:30 +12:00
Aldo Cortesi
15e234558d
Further content view cleaups.
2012-08-18 17:51:34 +12:00
Aldo Cortesi
b70e91bbd4
Send tracebacks from content viewers to event log.
...
Also, 100% test coverage for content viewers.
2012-08-18 17:42:40 +12:00
Aldo Cortesi
e8553f966f
Further simplifcation and testing of contentviews.
2012-08-18 17:29:29 +12:00
Aldo Cortesi
11c63dcb9f
Huge cleanup of content viewers.
2012-08-18 17:08:17 +12:00
Sahn Lam
3189d144a5
Optional AMF decoding support
...
If PyAMF is installed, enable AMF decoding.
2012-08-17 18:45:26 -07:00
Maximilian Hils
b0566b9d4c
add dummy cert dir
2012-08-17 19:13:56 +02:00
Maximilian Hils
ed389d8f05
use argparse instead of optparse
2012-08-17 19:11:59 +02:00
Aldo Cortesi
bbaa8bdba5
Add an HTML text outline view.
...
Uses html2text, from here:
https://github.com/aaronsw/html2text
2012-08-18 01:37:30 +12:00
Aldo Cortesi
1bfe847a84
Stop server playback after current playback buffer is exhausted.
2012-08-18 00:23:41 +12:00
Aldo Cortesi
20b270ae9a
Server replay from current buffer.
2012-08-18 00:13:04 +12:00
Jim Lloyd
0ef18a7cba
Adds --dummy-certs option to specify certdir
...
If --dummy-certs=CERTSDIR is provided, use CERTSDIR as the location
for generating/finding the dummy certs. And in this case, preserve
the CERTSDIR directory on exit.
2012-08-06 14:09:35 -07:00
Aldo Cortesi
32ad26f8bf
Add a size() method to flow.Request and flow.Response.
2012-08-04 13:18:05 +12:00
Rob Wills
8e68426ad6
Return from Flow View behaviour
...
Following focus trumps the re-focusing the "current" (or just-viewed) flow.
2012-08-02 00:06:34 -07:00
Rob Wills
c985e22196
Press "F" to Follow
...
Following of the flow list
- ConsoleState now has a follow_focus property
-- when True it will cause focus to follow added flows
- ConsoleMaster implements toggle_follow_flows()
-- when enabling follow, also jumps to most recent flow
- StatusBar reports follow_focus state
-- adds "following" to option list when true
- Added "F" to FlowList keys
-- implementation requests ConsoleMaster to toggle_follow_flows()
2012-08-01 23:57:56 -07:00
Aldo Cortesi
87d05a95ff
Handle invalid headers.
2012-07-30 12:54:50 +12:00
Aldo Cortesi
bb124e23b2
Prevent mitmproxy from treating logged info as urwid markup.
2012-07-27 10:08:10 +12:00
Aldo Cortesi
47b5fd666d
Fix mitmproxy file reading.
2012-07-27 02:13:21 +12:00
Aldo Cortesi
31a092f6b4
Minor refactoring. Make stop_stream also close the associated file descriptor.
2012-07-27 00:19:18 +12:00
Aldo Cortesi
f93a621856
Only log real errors in WSGI apps.
2012-07-24 16:18:22 +12:00
Aldo Cortesi
b4e9e55c34
Be more tolerant of corrupted or truncated flows.
...
We load as far as possible. mitmproxy will only terminate if it was not able to
recover any flows. mitmdump will stop loading as soon as an error is
encountered, but not exit with an error.
2012-07-24 15:15:41 +12:00
Maximilian Hils
c643234c98
fix -r option, read file in binary mode
2012-07-24 03:11:28 +02:00
Chris Neasbitt
525a8f6a16
Fixed a bug causing an AttributeError when request is set to false but response not None in ProxyHandler.handle_request
2012-07-17 13:24:15 -04:00
Aldo Cortesi
e4079aa746
Add an ~a filter expression, matching an asset content type in responses.
...
Asset content types are Javascript, images, Flash and CSS. This is useful
because doing a quick "!~a" while auditing an app will filter out the majority
of the static asset cruft, letting you focus on what matters.
2012-07-14 16:55:21 +12:00
Aldo Cortesi
150814f6a8
Jump back to correct flow when limit is applied.
2012-07-14 15:22:44 +12:00
Aldo Cortesi
a44a76a7da
Merge branch 'master' of github.com:cortesi/mitmproxy
2012-07-11 07:17:20 +12:00
Aldo Cortesi
1d09a558a7
Fix a subtle termination condition when there's an error in a WSGI app.
2012-07-11 07:16:06 +12:00
Aldo Cortesi
01b8b0d876
Refine semantics of replay_request method.
2012-07-10 23:29:33 +12:00
Aldo Cortesi
04d9ec8c3c
Make WSGI apps work in transparent mode.
2012-07-10 15:53:53 +12:00
Aldo Cortesi
79af9e89c4
Test replay corner cases. Fix discovered bugs.
2012-07-09 11:18:03 +12:00
Aldo Cortesi
aab45078ad
Unit test request replay thread.
...
This is a small patch, but is the culmination of lots of work: we can now unit
test the deep innards of mitmproxy, with coverage. There's a lot more to come
in this vein.
2012-07-09 11:03:55 +12:00
Aldo Cortesi
3749d52b66
Make mitmproxy "W" over-write, not append.
...
The -w options in mitmdump and mitproxy should do the same thing. Append can
have unexpected consequences if the existing file is not a mitmdump.
2012-07-09 10:28:01 +12:00
Aldo Cortesi
729fd9301f
Use FlowMaster stream from mitmdump.
2012-07-09 10:26:45 +12:00
Aldo Cortesi
bbd9acf551
Use FlowMaster streaming for "W" in mitmproxy.
2012-07-09 10:22:14 +12:00
Aldo Cortesi
572e8a4962
Add streaming to FlowMaster
2012-07-09 10:18:37 +12:00
Aldo Cortesi
097b566e54
Handle new netlib.tcp.NetLibDisconnect exception.
2012-07-08 23:49:44 +12:00
Aldo Cortesi
ceb12438b6
Fix minor error in filter help.
2012-07-06 22:33:09 +12:00
Aldo Cortesi
d02bcade3a
Add a domain match filter (~d regex)
2012-07-06 22:21:44 +12:00