Commit Graph

1754 Commits

Author SHA1 Message Date
David Weinstein
4be8d148b1 Add SNI ignore docs and have code match it 2016-01-26 13:09:22 -05:00
David Weinstein
8f8c2efccd Include raw client hello in exception 2016-01-26 12:38:00 -05:00
David Weinstein
7d69c3480b remove TODO 2016-01-26 11:59:32 -05:00
David Weinstein
a2ebcfe879 Simplify check_ignore in _next_layer 2016-01-26 11:44:32 -05:00
David Weinstein
17a32d921c Log exceptions parsing TlsClientHello in TlsLayer 2016-01-26 11:40:11 -05:00
David Weinstein
11b289d3c7 remove client_tls property from TlsLayer 2016-01-26 11:28:19 -05:00
David Weinstein
21ddd5e503 Move SNI ignore check into _next_layer 2016-01-26 11:12:46 -05:00
David Weinstein
0a43cc8844 add TlsClientHello repr 2016-01-26 09:33:03 -05:00
依云
ca0f310211 [console] always show connection info in Details tab
Connections become false values when it's finished. Check if it's
None when trying to show address info.

Fixes #886.
2016-01-26 18:14:19 +08:00
David Weinstein
56ef7d238b Don't store client_tls state in root context 2016-01-25 17:49:31 -05:00
Shadab Zafar
8fa16ce895 Remove restrictions based on request content 2016-01-25 22:31:22 +05:30
Anant
0a6e3c88ef Added feature to intercept flows from within inline scripts 2016-01-25 19:00:33 +05:30
David Weinstein
ce0a500885 Add ignore based on TLS ClientHello SNI
- also add some documentation about ignoring based on SNI
2016-01-23 21:46:04 -05:00
Guillem Anguera
b030ff090a Added CLI argument to enable "follow flow list" mode 2016-01-22 22:11:03 +01:00
Sandor Nemes
cb3107fd0e Merge branch 'master' of https://github.com/snemes/mitmproxy 2016-01-18 15:53:34 +01:00
Sandor Nemes
61bd318622 remove unnecessary source_address from proxy modes 2016-01-18 15:52:03 +01:00
Sandor Nemes
b892957b90 Merge branch 'master' into master 2016-01-18 13:35:27 +01:00
Maximilian Hils
7eb9bf818c Merge pull request #881 from MatthewShao/Fix#846
Fix #846
2016-01-18 12:21:21 +01:00
Matthew Shao
8aeed2032d Update reloader.py 2016-01-18 19:12:43 +08:00
Sandor Nemes
918a457f5a Minor aesthetic fixes. 2016-01-18 09:55:46 +01:00
Matthew Shao
98cee0e147 Update reloader.py 2016-01-18 10:15:09 +08:00
MatthewShao
7f2b17d0ef Use RegexMatchingEventHandler() instead. 2016-01-18 09:57:58 +08:00
Sandor Nemes
192f033967 Merge branch 'master' into master 2016-01-17 21:24:47 +01:00
Maximilian Hils
0f54f2990c Merge pull request #872 from bazzinotti/inline-tcp
Add "tcp_message" Inline Script Hook
2016-01-17 19:54:59 +01:00
Matthew Shao
5b442a8947 Use PollingObserver() only on OS X. 2016-01-14 09:30:06 +08:00
Sandor Nemes
2753af0ec7 Merge branch 'master' into master 2016-01-13 15:05:57 +01:00
Shadab Zafar
152e395fa4 Copy as raw request
Issue #807

I am not entirely sure what needs to be returned in this case.
2016-01-13 19:21:13 +05:30
Shadab Zafar
34ec2d1370 Export/Copy request as python code
Press E followed by p to copy code to clipboard.

The code uses the python requests module.

Only GET methods are currently supported, but can easily be extended
to POST etc.
2016-01-13 16:40:05 +05:30
Shadab Zafar
1079e00641 Use signals.status_message for empty content 2016-01-13 16:36:44 +05:30
Shadab Zafar
0bb13c61d6 Refactor copy_as_curl_command 2016-01-13 16:17:01 +05:30
Marcelo Glezer
9facd190c6 refactored export as curl to be 'E' to export and 'c' to as curl command 2016-01-13 15:29:44 +05:30
Marcelo Glezer
b2e3d2ce70 headers enumartion was failing in copy as curl and protocol was None when copy to clipboard was called. first wip fix 2016-01-13 15:29:44 +05:30
Marcelo Glezer
fa007a7707 fixed TypeError: ask_save_overwrite() takes exactly 2 arguments (xxxxx given) 2016-01-13 15:28:32 +05:30
Ryan Welton
6a235a1b11 Was needlessly passing un-used parameters + clean up misspelling 2016-01-13 15:28:32 +05:30
Ryan Welton
b424c1d43f Switch to single quotes 2016-01-13 15:28:32 +05:30
Ryan Welton
dde0ff50a5 Add copy as curl command 2016-01-13 15:28:32 +05:30
Matthew Shao
181c2973e6 PollingObserver() fixed on Linux and OS X. 2016-01-12 22:24:18 +08:00
MatthewShao
201fdea6e5 Change Observer() to PollingObserver(). 2016-01-12 21:36:59 +08:00
Matthew Shao
89679bc386 Fix observer in same dir situation. 2016-01-12 20:50:33 +08:00
MatthewShao
e72663be08 Fix script reloader on OS X. 2016-01-12 11:45:03 +08:00
Michael J. Bazzinotti
e766838a1a Add Inline Script Hooks to TCP mode 2016-01-10 13:05:01 -05:00
Thomas Kriechbaumer
aea3837d4a remove code duplication 2016-01-10 11:57:39 +01:00
Chris Czub
493302d180 Support writing to outfile from mitmweb 2016-01-10 11:57:37 +01:00
Sandor Nemes
fe77dd35c6 Fixed a problem with the bind address not being used as the source address on outgoing TCP packets 2016-01-08 18:55:13 +01:00
Maximilian Hils
11215e46ec fix #659 2016-01-02 15:12:36 +01:00
Michael J. Bazzinotti
09168e1274 client-cert: Simplify and cleanup
simplify the error message when cert path does not exist.
During tests, reset the clientcerts proxy config setting to None
Remove now-unused clientcerts code from class ProxTestBase
2015-12-29 11:48:02 -05:00
Michael J. Bazzinotti
80690b7906 [docs/libmproxy/test] Support single client-side cert file as argument to
--client-certs
2015-12-28 15:20:45 -05:00
Jorge Villacorta
ba53c7c9a2 Add default ciphers to avoid issue with iOS9 App Transport Security 2015-12-11 11:09:02 -05:00
David Weinstein
78fc092b94 TLS verification warnings write to stderr 2015-12-10 11:43:58 -05:00
Maximilian Hils
e6bf033cbd bump version 2015-12-03 18:13:24 +01:00
Maximilian Hils
46ae8b0e30 Revert "make setup.py wheel-ready"
This reverts commit 51bd98d5b1.
2015-12-03 17:28:52 +01:00
Maximilian Hils
51bd98d5b1 make setup.py wheel-ready 2015-12-03 16:25:49 +01:00
Maximilian Hils
1619af1486 flow format compat: 0.14 -> 0.15 2015-12-03 14:45:26 +01:00
Maximilian Hils
d1ce1aa993 fix #839 2015-12-02 21:19:41 +01:00
Maximilian Hils
3963a2191b add import capability for old flows, fix #840 2015-12-02 19:50:08 +01:00
Maximilian Hils
43ed82062f fix #847 2015-11-27 21:21:04 +01:00
Maximilian Hils
a88004f1ce fix #831 2015-11-26 23:20:31 +01:00
Maximilian Hils
6a239526e5 http: catch all exceptions 2015-11-26 23:19:43 +01:00
Maximilian Hils
a9f64c22f8 simplify Client/ServerConnection.__repr__ 2015-11-26 23:15:21 +01:00
Maximilian Hils
89013eb7af establish tls with client even if server connection fails 2015-11-26 23:13:06 +01:00
Maximilian Hils
3eea7f1216 script reloader: minor fixes 2015-11-26 14:59:54 +01:00
Maximilian Hils
5d332e7218 fix #842 2015-11-26 14:58:08 +01:00
Maximilian Hils
d2f69da235 disable script reloader
This currently throws some errors on OSX.
2015-11-24 18:54:16 +01:00
Matthew Shao
b7bea03c68 fix #835 , can display unicode character correctly 2015-11-16 20:47:58 +08:00
Maximilian Hils
d6bd1cb4a6 fix HTTPS Proxy-Authentication, refs #824 2015-11-14 21:55:02 +01:00
Maximilian Hils
0d98b9dcc5 finalize script reloading 🎉 2015-11-14 05:57:02 +01:00
Maximilian Hils
4499ab61c0 structure libmproxy.script 2015-11-14 04:21:38 +01:00
Maximilian Hils
247f27d821 minor stylistic fixes 2015-11-14 03:46:34 +01:00
Chris Czub
e72a9a62a1 Feedback from PR #832 2015-11-13 16:55:27 -05:00
Chris Czub
d3feaa3bc6 Add custom content view plugin support for mitmproxy/mitmdump 2015-11-13 15:09:05 -05:00
Chris Czub
d7239d665e Add new contentviews' content type mappings 2015-11-13 15:08:52 -05:00
Chris Czub
82a90511bc Add "add" ContentView method & test 2015-11-13 15:07:56 -05:00
Matthew Shao
cd0b9e01be Decouple libmproxy.script from libmproxy.flow 2015-11-13 21:08:39 +08:00
Matthew Shao
2522ba69fa Move the observer initalization to the constructor of Script
class.Should work with both mitmproxy and mitmdump now.
Change the names in PEP8 style.
2015-11-11 20:59:12 +08:00
Matthew Shao
3f6521f912 Use watchdog to reload scripts automatically. 2015-11-11 09:03:05 +08:00
Maximilian Hils
3739e1fe82 fix scripteditor bug 2015-11-10 04:48:30 +01:00
Aldo Cortesi
58aeb2b843 Bump version for next release cycle 2015-11-07 09:30:38 +13:00
Aldo Cortesi
9beae933ba Bump version, update CONTRIBUTORS, CHANGELOG 2015-11-06 13:52:08 +13:00
Aldo Cortesi
6135e16482 Catch and ignore thread errors on exit
Keyboard interrupts bugger up Queues in some way, which causes a traceback on
exit in many of our tools. The issue seems easiest to reproduce with binary
builds on OSX.
2015-11-06 11:35:54 +13:00
Marcelo Glezer
6b6b0a9416 fix copy to clipboard command when copying content 2015-11-05 00:09:22 -03:00
Maximilian Hils
fb463f50ed Merge pull request #809 from zbuc/pfctl_errhandling
Better error handling/reporting for pfctl failures on OS X
2015-11-04 21:32:12 +01:00
Chris Czub
9398d5896b PR 809 make code more pythonic 2015-11-04 15:04:18 -05:00
Maximilian Hils
1bf34e6f45 Merge branch 'master' of https://github.com/mitmproxy/mitmproxy 2015-11-01 18:39:55 +01:00
Maximilian Hils
978eb17d66 fix #811 2015-11-01 18:37:20 +01:00
gecko655
6aa7454f92 Use ctrl+f and ctrl+b to scroll a page 2015-10-30 12:48:38 +09:00
Chris Czub
88451ef245 Declare & define insufficient_priv 2015-10-29 16:01:24 -04:00
Chris Czub
70c28f5d34 Better error handling/reporting for pfctl failures on OS X 2015-10-29 15:56:43 -04:00
Maximilian Hils
65c08ec899 Merge pull request #791 from tunz/master
Prevent flowview from creating duplicated windows
2015-10-28 13:10:38 +01:00
Maximilian Hils
726b70ccdc fix #800 2015-10-22 02:38:00 +02:00
Maximilian Hils
7d8191ee37 update web builds, use watchify 2015-10-08 12:43:55 +02:00
Choongwoo Han
9c0efdf2ec Refresh flowview instead of reopen the same flowview 2015-10-08 11:31:33 +09:00
Colin Bendell
a85e4bc75c default should not be None
Fixed default value when self.address has not been set
2015-10-07 21:46:08 -04:00
Colin Bendell
77aeac11a9 Check if server connection hasn't yet been initiated
This fixes #761 when NoneType error is thrown when non-TLS requests initiate a client request but the server connection hasn't yet been initiated.
2015-10-07 20:30:31 -04:00
Choongwoo Han
45494d1c79 Prevent flowview from creating duplicated windows 2015-10-04 14:21:51 +09:00
Maximilian Hils
ce38a05a20 Merge remote-tracking branch 'origin/master' 2015-10-03 23:59:13 +02:00
Maximilian Hils
26631621ee fix #786 2015-10-03 14:48:51 +02:00
sethp-jive
fd8c921a2f Allow reading scripts from an anonymous pipe
Bash (and many other shells) provide a nifty feature in "anonymous pipe" or "anonymous fifo" whereby the output of a subshell may be treated as a simple file by the parent shell: http://unix.stackexchange.com/a/156088

Unfortunately, libmproxy complains because that "file" is not a regular file, as os.path.isfile checks, e.g. giving the error "Not a file: /dev/fd/11". This patch is intended to provide for the following use-case:

```
mitmdump -s <(echo "def response(context, flow):\n  flow.response.headers['newheader'] = [`hostname`]")
```

where `hostname` may be replaced with a more complicated lookup.
2015-09-30 15:55:43 -07:00
Maximilian Hils
c6811bd0e8 fix #773 2015-09-28 14:55:13 +02:00
Maximilian Hils
86ef19b450 fix tests 2015-09-28 14:04:41 +02:00
Maximilian Hils
c11ab3676d Merge branch 'http-models' 2015-09-28 13:54:53 +02:00