Giter VIP home page Giter VIP logo

tamper's Introduction

Tamper

Important: This extensions stopped working a while ago 😕 I'm working on a fix, should be available soon!

Tamper is a Mitmproxy based devtools extension that lets you edit remote files locally and serve them directly to Chrome.

Demo

Using Tamper

Once installed, Tamper will add a new panel to your devtools, the "Tamper" panel. Similar to the Network panel, the Tamper panel shows you a list of all requests made by this page. Click on one of these network requests and the response Chrome got will open in your default editor. Make the changes you need and save the file. Once you hit refresh, Tamper will serve Chrome the file you just saved.

Tamper is based on the awesome Mitmproxy (man-in-the-middle proxy), or more precisely, libmproxy, its companion library that allows implementing powerful interception proxies.

Installing

  • Install Tamper's python script
pip install tamper

Developing

Chrome Extension

$ cd chrome-extension
$ npm install
$ bower install

Add an unpacked extension to Chrome:

  1. Browse to about:extensions
  2. Check the "Developer mode" checkbox
  3. Click the "Load unpacked extension..." button
  4. Choose the "app" folder

A new extension has been added to Chrome, copy the new extension's id.

Open ~/Library/Application Support/Google/Chrome/NativeMessagingHosts/com.dutzi.tamper.json and add the extension's id to the allowed_origins list. Now restart Chrome.

Troubleshooting

Having issues installing Tamper? Check out the troubleshooting page.

tamper's People

Contributors

andersonvom avatar dutzi avatar gitter-badger avatar janza avatar mhils avatar saalmaan avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

tamper's Issues

Linux cannot connect to proxy.

Here is what I'm seeing. Ubuntu 14.04, Python 2.7.8.

➜  ~  tamper.py        


^CTraceback (most recent call last):
  File "/usr/local/bin/tamper.py", line 345, in <module>
    main(sys.argv)
  File "/usr/local/bin/tamper.py", line 341, in main
    time.sleep(1)
KeyboardInterrupt
➜  ~  tamper.py -p 4187
Traceback (most recent call last):
  File "/usr/local/bin/tamper.py", line 345, in <module>
    main(sys.argv)
  File "/usr/local/bin/tamper.py", line 338, in main
    start_server(int(argv[2]))
  File "/usr/local/bin/tamper.py", line 53, in start_server
    port = int(port)
  File "/usr/local/lib/python2.7/dist-packages/libmproxy/proxy/config.py", line 86, in __init__
    CONF_BASENAME)
  File "/usr/local/lib/python2.7/dist-packages/netlib/certutils.py", line 207, in from_store
    dh = cls.load_dhparam(dh_path)
  File "/usr/local/lib/python2.7/dist-packages/netlib/certutils.py", line 181, in load_dhparam
    bio = OpenSSL.SSL._lib.BIO_new_file(path, b"r")
AttributeError: 'module' object has no attribute '_lib'

I'll do more debugging later, see if I can fix it.

Local File Exposure

Hi @dutzi,

just following the progress you're making here - looks great!

One thing I noticed when testing:

file = open(os.path.dirname(os.path.realpath(__file__)) + '/cert' + path)
is prone to local file exposure, i.e.

curl --proxy http://127.0.0.1:8080 http://mitm.it/../../../../../../etc/passwd

You may want to drop that feature before a public release 😉

Cheers,
Max

please support map/forward a request to remote url

Just like in charles proxy, we can map a url to local file/remote url. Or like in Fiddler proxy, the AutoResponse feature also can forward a url to another url.

Why we need this? In front-end development, people use less or scss or coffeescript, if they want to debug/trace a production bug, mapping the online asset to local server will be very useful.

Could not connect to proxy

I've seen the steps @saalmaan came up with to get things working on OSX. I have tried that, but am still not able to connect to the mitmproxy.

I have confirmed that mitmproxy itself is working fine (it can capture traffic without issue). Further, I installed it via pip, not from binaries, so hopefully that is not the issue.

I'm not sure what else I can try?

Can't open file in Chrome

Hi,

Tamper is running and is in Blue, but when I go to 'Rules' and click 'Open File' nothing happened.
My Sublime Text 3 didn't open. In Settings under 'Editor Command Line' I've tested 'subl', 'subl $1' or '$1'. But it does not work. It is also not working if I leave it empty.
Is there a way to open the File manually?

I am using Version 41.0.2272.118 (64-bit) on Mac OS 10.10.2

Website and README are not descriptive enough on how to run the app

  • Please state that this only works with Python 2.7, not Python 3
  • Please tell us which commands to run. When I go to the extension tab, it says “Could not connect to proxy (help)”. But the documentation doesn’t say how to run the proxy. I tried running tamper on a Mac and it says zsh: command not found: tamper. I tried running mitmproxy, and got this screen: [0/0] ?:help [*:8080] with no activity, and the extension still doesn’t work.
  • The website/docs for mitmproxy refer to a completely different version than the one that gets installed by tamper through pip; even the flags are different, so it is no use going to their site to learn how to get the proxy running.
  • Clicking on the “help” link in the error notice just brings you to the homepage with no troubleshooting section.

Can't get tamper to work

After enabling tamper, all HTTP requests return a 400 Bad Request status and all https request show a ERR_TUNNEL_CONNECTION_FAILED error.

The icon of the extension is blue and the Tamper tab displays "Enabled".

I'm on OSX Yosemite, I have tamper with pip install tamper and mitmproxy with the installation instructions shown on the first start page.

Minor OS X 10.10 install notes: pyOpenSSL

Love the software! Going to be very useful for me. Had one minor issue getting it working on OS X 10.10. I needed to upgrade to pyOpenSSL 0.14(from 0.13.1) before mitmproxy 0.11 would work.

$ mitmproxy --version You are using an outdated version of pyOpenSSL: mitmproxy requires pyOpenSSL 0.14 or greater. Your pyOpenSSL 0.13.1 installation is located at /System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/OpenSSL

Maybe not worth mentioning but also discovered I needed full path to the editor in the Chrome extension options. Perhaps will help someone else.

Windows: Error starting proxy

I had to install python2 and make "python" run python2 not python3 (by manipulating PATH). Now I installed tamper via pip, and Chrome extension, but it says it can't connect to proxy.
image

Of course "mitmproxy" from cmd doesn't run anything. I have it installed via windows installer from their site, but directory with several their programs is not included in PATH.

Editor Command Line not working with phpstorm

Hi @dutzi
I use phpstorm as my main editor and typing pstorm $1 in Editor Command Line doesn't launch the application, where as when I type pstorm in terminal with full path to the cashed file, it does open that in the editor, would you know why is this happening? Do I have to add phpstorm path somewhere or symlink it?

Note: open $1 works and subl $1 also works

screen shot 2014-12-01 at 03 15 00

screen shot 2014-12-01 at 03 13 38

Unable to launch editor

On a OS X 10.10.1 I am unable to open the saved resources in an editor. I've tried the following, non of which seem to work:

mvim $1
vim $1
subl $1
/usr/local/bin/mvim $1
/usr/local/bin/vim $1
/usr/local/bin/subl $1

Could Not Connect to Proxy - "errorCode": 101, "errorDesc": "Could not start proxy, error loading libraries"

Hi @dutzi ! Thanks for all your work on this. It's a great tool to have.

Chrome: Version 62.0.3202.75
Windows OS: 10.1703 x64
Python: Version 2.7.14

1. Everything to this point appears properly installed, but I get the same error that @Nek mentions on December 21, 2016 in re: Issue #10 . Tamper can't connect to mitmproxy because of:

{"errorCode": 101, "errorDesc": "Could not start proxy, error loading libraries", "method": "proxy-error"}

2. Using Chrome's DevTools to "inspect" the "Could not connect to proxy" error message leads to this code in the body:

ng-controller="PanelCtrl" ng-keydown="onBodyKeyDown($event)" ng-class="{
'proxy-connection-error': proxyState !== proxyStates.PROXY_STARTED,
'proxy-port-error': proxyState === proxyStates.PROXY_COULD_NOT_START_PORT_ERROR,
'proxy-libs-error': proxyState === proxyStates.PROXY_COULD_NOT_START_LIBS_ERROR,
'os-osx': isOSX,
'os-windows': isWindows,
'resizing': isResizing

3. Ports 8080 & Ports 8081 are idle when Tamper/Chrome/mitmproxy is off. Ports 8080 & 8081 are used by "python.exe" when Tamper/Chrome/mitmproxy is on. There doesn't seem to be any conflict with the ports.

Is there a simple fix to this (hopefully)? Would more information help? Thanks.

Mac Pip Install Error

error: could not create '/System/Library/Frameworks/Python.framework/Versions/2.7/include/python2.7/greenlet': Operation not permitted

Sudo pip install fails, denies permission without sudo. Sudo -H doesn't work either.

Mac OS Sierra

Can't install the mitmproxy certs

Having followed the instructions in tamper's first-run.html, I am unable to get mitm.it to reveal anything and cannot install the certificates. I've done everything without fail up until that point.

can't install tamper

I'm using windows 7 64bit, python 2.7.11, here is the output when I'm trying to install tamper usisng
pip install tamper:

C:\Python27\Scripts>pip install tamper
Collecting tamper
  Using cached tamper-0.24.5.tar.gz
Collecting gevent-websocket>=0.9.3 (from tamper)
  Using cached gevent-websocket-0.9.5.tar.gz
Collecting mitmproxy==0.11.1 (from tamper)
  Using cached mitmproxy-0.11.1.tar.gz
Collecting gevent (from gevent-websocket>=0.9.3->tamper)
  Using cached gevent-1.1.1.tar.gz
Collecting Flask>=0.10.1 (from mitmproxy==0.11.1->tamper)
  Using cached Flask-0.11.1-py2.py3-none-any.whl
Collecting pyasn1>0.1.2 (from mitmproxy==0.11.1->tamper)
  Using cached pyasn1-0.1.9-py2.py3-none-any.whl
Collecting tornado>=4.0.2 (from mitmproxy==0.11.1->tamper)
  Using cached tornado-4.3.tar.gz
Collecting sortedcontainers>=0.9.1 (from mitmproxy==0.11.1->tamper)
  Using cached sortedcontainers-1.5.3-py2.py3-none-any.whl
Collecting pyOpenSSL>=0.14 (from mitmproxy==0.11.1->tamper)
  Using cached pyOpenSSL-16.0.0-py2.py3-none-any.whl
Collecting netlib<0.12,>=0.11 (from mitmproxy==0.11.1->tamper)
  Using cached netlib-0.11.2.tar.gz
Collecting pydivert>=0.0.4 (from mitmproxy==0.11.1->tamper)
  Using cached pydivert-0.0.7.zip
Collecting greenlet>=0.4.9 (from gevent->gevent-websocket>=0.9.3->tamper)
  Using cached greenlet-0.4.10.zip
Collecting click>=2.0 (from Flask>=0.10.1->mitmproxy==0.11.1->tamper)
  Using cached click-6.6.tar.gz
Collecting itsdangerous>=0.21 (from Flask>=0.10.1->mitmproxy==0.11.1->tamper)
  Using cached itsdangerous-0.24.tar.gz
Collecting Werkzeug>=0.7 (from Flask>=0.10.1->mitmproxy==0.11.1->tamper)
  Using cached Werkzeug-0.11.10-py2.py3-none-any.whl
Collecting Jinja2>=2.4 (from Flask>=0.10.1->mitmproxy==0.11.1->tamper)
  Using cached Jinja2-2.8-py2.py3-none-any.whl
Collecting backports.ssl-match-hostname (from tornado>=4.0.2->mitmproxy==0.11.1-
>tamper)
  Using cached backports.ssl_match_hostname-3.5.0.1.tar.gz
Collecting singledispatch (from tornado>=4.0.2->mitmproxy==0.11.1->tamper)
  Using cached singledispatch-3.4.0.3-py2.py3-none-any.whl
Collecting certifi (from tornado>=4.0.2->mitmproxy==0.11.1->tamper)
  Using cached certifi-2016.2.28-py2.py3-none-any.whl
Collecting backports-abc>=0.4 (from tornado>=4.0.2->mitmproxy==0.11.1->tamper)
  Using cached backports_abc-0.4-py2.py3-none-any.whl
Collecting cryptography>=1.3 (from pyOpenSSL>=0.14->mitmproxy==0.11.1->tamper)
  Using cached cryptography-1.4.tar.gz
Collecting six>=1.5.2 (from pyOpenSSL>=0.14->mitmproxy==0.11.1->tamper)
  Using cached six-1.10.0-py2.py3-none-any.whl
Collecting passlib>=1.6.2 (from netlib<0.12,>=0.11->mitmproxy==0.11.1->tamper)
  Using cached passlib-1.6.5-py2.py3-none-any.whl
Collecting MarkupSafe (from Jinja2>=2.4->Flask>=0.10.1->mitmproxy==0.11.1->tampe
r)
  Using cached MarkupSafe-0.23.tar.gz
Collecting idna>=2.0 (from cryptography>=1.3->pyOpenSSL>=0.14->mitmproxy==0.11.1
->tamper)
  Using cached idna-2.1-py2.py3-none-any.whl
Requirement already satisfied (use --upgrade to upgrade): setuptools>=11.3 in c:
\python27\lib\site-packages (from cryptography>=1.3->pyOpenSSL>=0.14->mitmproxy=
=0.11.1->tamper)
Collecting enum34 (from cryptography>=1.3->pyOpenSSL>=0.14->mitmproxy==0.11.1->t
amper)
  Using cached enum34-1.1.6-py2-none-any.whl
Collecting ipaddress (from cryptography>=1.3->pyOpenSSL>=0.14->mitmproxy==0.11.1
->tamper)
  Using cached ipaddress-1.0.16-py27-none-any.whl
Collecting cffi>=1.4.1 (from cryptography>=1.3->pyOpenSSL>=0.14->mitmproxy==0.11
.1->tamper)
  Using cached cffi-1.6.0-cp27-none-win_amd64.whl
Collecting pycparser (from cffi>=1.4.1->cryptography>=1.3->pyOpenSSL>=0.14->mitm
proxy==0.11.1->tamper)
  Using cached pycparser-2.14.tar.gz
Installing collected packages: greenlet, gevent, gevent-websocket, click, itsdan
gerous, Werkzeug, MarkupSafe, Jinja2, Flask, pyasn1, backports.ssl-match-hostnam
e, six, singledispatch, certifi, backports-abc, tornado, sortedcontainers, idna,
 enum34, ipaddress, pycparser, cffi, cryptography, pyOpenSSL, passlib, netlib, p
ydivert, mitmproxy, tamper
  Running setup.py install for greenlet
  Running setup.py install for gevent
  Running setup.py install for gevent-websocket
  Running setup.py install for click
  Running setup.py install for itsdangerous
  Running setup.py install for MarkupSafe
  Running setup.py install for backports.ssl-match-hostname
  Running setup.py install for tornado
  Running setup.py install for pycparser
  Running setup.py install for cryptography
    Complete output from command c:\python27\python.exe -c "import setuptools, t
okenize;__file__='c:\\users\\fanghao\\appdata\\local\\temp\\pip-build-chi0wh\\cr
yptography\\setup.py';exec(compile(getattr(tokenize, 'open', open)(__file__).rea
d().replace('\r\n', '\n'), __file__, 'exec'))" install --record c:\users\fanghao
\appdata\local\temp\pip-uek9tl-record\install-record.txt --single-version-extern
ally-managed --compile:
    running install
    running build
    running build_py
    creating build
    creating build\lib.win-amd64-2.7
    creating build\lib.win-amd64-2.7\cryptography
    copying src\cryptography\exceptions.py -> build\lib.win-amd64-2.7\cryptograp
hy
    copying src\cryptography\fernet.py -> build\lib.win-amd64-2.7\cryptography
    copying src\cryptography\utils.py -> build\lib.win-amd64-2.7\cryptography
    copying src\cryptography\__about__.py -> build\lib.win-amd64-2.7\cryptograph
y
    copying src\cryptography\__init__.py -> build\lib.win-amd64-2.7\cryptography

    creating build\lib.win-amd64-2.7\cryptography\hazmat
    copying src\cryptography\hazmat\__init__.py -> build\lib.win-amd64-2.7\crypt
ography\hazmat
    creating build\lib.win-amd64-2.7\cryptography\x509
    copying src\cryptography\x509\base.py -> build\lib.win-amd64-2.7\cryptograph
y\x509
    copying src\cryptography\x509\extensions.py -> build\lib.win-amd64-2.7\crypt
ography\x509
    copying src\cryptography\x509\general_name.py -> build\lib.win-amd64-2.7\cry
ptography\x509
    copying src\cryptography\x509\name.py -> build\lib.win-amd64-2.7\cryptograph
y\x509
    copying src\cryptography\x509\oid.py -> build\lib.win-amd64-2.7\cryptography
\x509
    copying src\cryptography\x509\__init__.py -> build\lib.win-amd64-2.7\cryptog
raphy\x509
    creating build\lib.win-amd64-2.7\cryptography\hazmat\backends
    copying src\cryptography\hazmat\backends\interfaces.py -> build\lib.win-amd6
4-2.7\cryptography\hazmat\backends
    copying src\cryptography\hazmat\backends\multibackend.py -> build\lib.win-am
d64-2.7\cryptography\hazmat\backends
    copying src\cryptography\hazmat\backends\__init__.py -> build\lib.win-amd64-
2.7\cryptography\hazmat\backends
    creating build\lib.win-amd64-2.7\cryptography\hazmat\bindings
    copying src\cryptography\hazmat\bindings\__init__.py -> build\lib.win-amd64-
2.7\cryptography\hazmat\bindings
    creating build\lib.win-amd64-2.7\cryptography\hazmat\primitives
    copying src\cryptography\hazmat\primitives\cmac.py -> build\lib.win-amd64-2.
7\cryptography\hazmat\primitives
    copying src\cryptography\hazmat\primitives\constant_time.py -> build\lib.win
-amd64-2.7\cryptography\hazmat\primitives
    copying src\cryptography\hazmat\primitives\hashes.py -> build\lib.win-amd64-
2.7\cryptography\hazmat\primitives
    copying src\cryptography\hazmat\primitives\hmac.py -> build\lib.win-amd64-2.
7\cryptography\hazmat\primitives
    copying src\cryptography\hazmat\primitives\keywrap.py -> build\lib.win-amd64
-2.7\cryptography\hazmat\primitives
    copying src\cryptography\hazmat\primitives\padding.py -> build\lib.win-amd64
-2.7\cryptography\hazmat\primitives
    copying src\cryptography\hazmat\primitives\serialization.py -> build\lib.win
-amd64-2.7\cryptography\hazmat\primitives
    copying src\cryptography\hazmat\primitives\__init__.py -> build\lib.win-amd6
4-2.7\cryptography\hazmat\primitives
    creating build\lib.win-amd64-2.7\cryptography\hazmat\backends\commoncrypto
    copying src\cryptography\hazmat\backends\commoncrypto\backend.py -> build\li
b.win-amd64-2.7\cryptography\hazmat\backends\commoncrypto
    copying src\cryptography\hazmat\backends\commoncrypto\ciphers.py -> build\li
b.win-amd64-2.7\cryptography\hazmat\backends\commoncrypto
    copying src\cryptography\hazmat\backends\commoncrypto\hashes.py -> build\lib
.win-amd64-2.7\cryptography\hazmat\backends\commoncrypto
    copying src\cryptography\hazmat\backends\commoncrypto\hmac.py -> build\lib.w
in-amd64-2.7\cryptography\hazmat\backends\commoncrypto
    copying src\cryptography\hazmat\backends\commoncrypto\__init__.py -> build\l
ib.win-amd64-2.7\cryptography\hazmat\backends\commoncrypto
    creating build\lib.win-amd64-2.7\cryptography\hazmat\backends\openssl
    copying src\cryptography\hazmat\backends\openssl\backend.py -> build\lib.win
-amd64-2.7\cryptography\hazmat\backends\openssl
    copying src\cryptography\hazmat\backends\openssl\ciphers.py -> build\lib.win
-amd64-2.7\cryptography\hazmat\backends\openssl
    copying src\cryptography\hazmat\backends\openssl\cmac.py -> build\lib.win-am
d64-2.7\cryptography\hazmat\backends\openssl
    copying src\cryptography\hazmat\backends\openssl\decode_asn1.py -> build\lib
.win-amd64-2.7\cryptography\hazmat\backends\openssl
    copying src\cryptography\hazmat\backends\openssl\dsa.py -> build\lib.win-amd
64-2.7\cryptography\hazmat\backends\openssl
    copying src\cryptography\hazmat\backends\openssl\ec.py -> build\lib.win-amd6
4-2.7\cryptography\hazmat\backends\openssl
    copying src\cryptography\hazmat\backends\openssl\encode_asn1.py -> build\lib
.win-amd64-2.7\cryptography\hazmat\backends\openssl
    copying src\cryptography\hazmat\backends\openssl\hashes.py -> build\lib.win-
amd64-2.7\cryptography\hazmat\backends\openssl
    copying src\cryptography\hazmat\backends\openssl\hmac.py -> build\lib.win-am
d64-2.7\cryptography\hazmat\backends\openssl
    copying src\cryptography\hazmat\backends\openssl\rsa.py -> build\lib.win-amd
64-2.7\cryptography\hazmat\backends\openssl
    copying src\cryptography\hazmat\backends\openssl\utils.py -> build\lib.win-a
md64-2.7\cryptography\hazmat\backends\openssl
    copying src\cryptography\hazmat\backends\openssl\x509.py -> build\lib.win-am
d64-2.7\cryptography\hazmat\backends\openssl
    copying src\cryptography\hazmat\backends\openssl\__init__.py -> build\lib.wi
n-amd64-2.7\cryptography\hazmat\backends\openssl
    creating build\lib.win-amd64-2.7\cryptography\hazmat\bindings\commoncrypto
    copying src\cryptography\hazmat\bindings\commoncrypto\binding.py -> build\li
b.win-amd64-2.7\cryptography\hazmat\bindings\commoncrypto
    copying src\cryptography\hazmat\bindings\commoncrypto\__init__.py -> build\l
ib.win-amd64-2.7\cryptography\hazmat\bindings\commoncrypto
    creating build\lib.win-amd64-2.7\cryptography\hazmat\bindings\openssl
    copying src\cryptography\hazmat\bindings\openssl\binding.py -> build\lib.win
-amd64-2.7\cryptography\hazmat\bindings\openssl
    copying src\cryptography\hazmat\bindings\openssl\_conditional.py -> build\li
b.win-amd64-2.7\cryptography\hazmat\bindings\openssl
    copying src\cryptography\hazmat\bindings\openssl\__init__.py -> build\lib.wi
n-amd64-2.7\cryptography\hazmat\bindings\openssl
    creating build\lib.win-amd64-2.7\cryptography\hazmat\primitives\asymmetric
    copying src\cryptography\hazmat\primitives\asymmetric\dh.py -> build\lib.win
-amd64-2.7\cryptography\hazmat\primitives\asymmetric
    copying src\cryptography\hazmat\primitives\asymmetric\dsa.py -> build\lib.wi
n-amd64-2.7\cryptography\hazmat\primitives\asymmetric
    copying src\cryptography\hazmat\primitives\asymmetric\ec.py -> build\lib.win
-amd64-2.7\cryptography\hazmat\primitives\asymmetric
    copying src\cryptography\hazmat\primitives\asymmetric\padding.py -> build\li
b.win-amd64-2.7\cryptography\hazmat\primitives\asymmetric
    copying src\cryptography\hazmat\primitives\asymmetric\rsa.py -> build\lib.wi
n-amd64-2.7\cryptography\hazmat\primitives\asymmetric
    copying src\cryptography\hazmat\primitives\asymmetric\utils.py -> build\lib.
win-amd64-2.7\cryptography\hazmat\primitives\asymmetric
    copying src\cryptography\hazmat\primitives\asymmetric\__init__.py -> build\l
ib.win-amd64-2.7\cryptography\hazmat\primitives\asymmetric
    creating build\lib.win-amd64-2.7\cryptography\hazmat\primitives\ciphers
    copying src\cryptography\hazmat\primitives\ciphers\algorithms.py -> build\li
b.win-amd64-2.7\cryptography\hazmat\primitives\ciphers
    copying src\cryptography\hazmat\primitives\ciphers\base.py -> build\lib.win-
amd64-2.7\cryptography\hazmat\primitives\ciphers
    copying src\cryptography\hazmat\primitives\ciphers\modes.py -> build\lib.win
-amd64-2.7\cryptography\hazmat\primitives\ciphers
    copying src\cryptography\hazmat\primitives\ciphers\__init__.py -> build\lib.
win-amd64-2.7\cryptography\hazmat\primitives\ciphers
    creating build\lib.win-amd64-2.7\cryptography\hazmat\primitives\interfaces
    copying src\cryptography\hazmat\primitives\interfaces\__init__.py -> build\l
ib.win-amd64-2.7\cryptography\hazmat\primitives\interfaces
    creating build\lib.win-amd64-2.7\cryptography\hazmat\primitives\kdf
    copying src\cryptography\hazmat\primitives\kdf\concatkdf.py -> build\lib.win
-amd64-2.7\cryptography\hazmat\primitives\kdf
    copying src\cryptography\hazmat\primitives\kdf\hkdf.py -> build\lib.win-amd6
4-2.7\cryptography\hazmat\primitives\kdf
    copying src\cryptography\hazmat\primitives\kdf\kbkdf.py -> build\lib.win-amd
64-2.7\cryptography\hazmat\primitives\kdf
    copying src\cryptography\hazmat\primitives\kdf\pbkdf2.py -> build\lib.win-am
d64-2.7\cryptography\hazmat\primitives\kdf
    copying src\cryptography\hazmat\primitives\kdf\x963kdf.py -> build\lib.win-a
md64-2.7\cryptography\hazmat\primitives\kdf
    copying src\cryptography\hazmat\primitives\kdf\__init__.py -> build\lib.win-
amd64-2.7\cryptography\hazmat\primitives\kdf
    creating build\lib.win-amd64-2.7\cryptography\hazmat\primitives\twofactor
    copying src\cryptography\hazmat\primitives\twofactor\hotp.py -> build\lib.wi
n-amd64-2.7\cryptography\hazmat\primitives\twofactor
    copying src\cryptography\hazmat\primitives\twofactor\totp.py -> build\lib.wi
n-amd64-2.7\cryptography\hazmat\primitives\twofactor
    copying src\cryptography\hazmat\primitives\twofactor\utils.py -> build\lib.w
in-amd64-2.7\cryptography\hazmat\primitives\twofactor
    copying src\cryptography\hazmat\primitives\twofactor\__init__.py -> build\li
b.win-amd64-2.7\cryptography\hazmat\primitives\twofactor
    running egg_info
    writing requirements to src\cryptography.egg-info\requires.txt
    writing src\cryptography.egg-info\PKG-INFO
    writing top-level names to src\cryptography.egg-info\top_level.txt
    writing dependency_links to src\cryptography.egg-info\dependency_links.txt
    writing entry points to src\cryptography.egg-info\entry_points.txt
    warning: manifest_maker: standard file '-c' not found

    reading manifest file 'src\cryptography.egg-info\SOURCES.txt'
    reading manifest template 'MANIFEST.in'
    no previously-included directories found matching 'docs\_build'
    warning: no previously-included files matching '*' found under directory 've
ctors'
    writing manifest file 'src\cryptography.egg-info\SOURCES.txt'
    running build_ext
    generating cffi module 'build\\temp.win-amd64-2.7\\Release\\_padding.c'
    creating build\temp.win-amd64-2.7
    creating build\temp.win-amd64-2.7\Release
    generating cffi module 'build\\temp.win-amd64-2.7\\Release\\_constant_time.c
'
    generating cffi module 'build\\temp.win-amd64-2.7\\Release\\_openssl.c'
    building '_openssl' extension
    creating build\temp.win-amd64-2.7\Release\build
    creating build\temp.win-amd64-2.7\Release\build\temp.win-amd64-2.7
    creating build\temp.win-amd64-2.7\Release\build\temp.win-amd64-2.7\Release
    C:\Users\FangHao\AppData\Local\Programs\Common\Microsoft\Visual C++ for Pyth
on\9.0\VC\Bin\amd64\cl.exe /c /nologo /Ox /MD /W3 /GS- /DNDEBUG -Ic:\python27\in
clude -Ic:\python27\PC /Tcbuild\temp.win-amd64-2.7\Release\_openssl.c /Fobuild\t
emp.win-amd64-2.7\Release\build\temp.win-amd64-2.7\Release\_openssl.obj
    _openssl.c
    build\temp.win-amd64-2.7\Release\_openssl.c(423) : fatal error C1083: Cannot
 open include file: 'openssl/opensslv.h': No such file or directory
    error: command 'C:\\Users\\FangHao\\AppData\\Local\\Programs\\Common\\Micros
oft\\Visual C++ for Python\\9.0\\VC\\Bin\\amd64\\cl.exe' failed with exit status
 2

    ----------------------------------------
Command "c:\python27\python.exe -c "import setuptools, tokenize;__file__='c:\\us
ers\\fanghao\\appdata\\local\\temp\\pip-build-chi0wh\\cryptography\\setup.py';ex
ec(compile(getattr(tokenize, 'open', open)(__file__).read().replace('\r\n', '\n'
), __file__, 'exec'))" install --record c:\users\fanghao\appdata\local\temp\pip-
uek9tl-record\install-record.txt --single-version-externally-managed --compile"
failed with error code 1 in c:\users\fanghao\appdata\local\temp\pip-build-chi0wh
\cryptography
You are using pip version 7.1.2, however version 8.1.2 is available.
You should consider upgrading via the 'python -m pip install --upgrade pip' comm
and.

Could not connect to proxy

I'm at my wits' end with trying to set up tamper in Windows 7. I installed tamper with pip, then installed the Chrome extension, installed mitmproxy, and imported the certificate into the certificate manager. Mitmproxy is working, but I'm getting this error message.
tamper
There's no real settings for tamper, so I don't know what I could possibly change. Also, I've uninstalled and reinstalled it a bunch of times with no results. Please help

OSX Yosemite Issue

Facing this error while installing tamper

Command /usr/bin/python -c "import setuptools, tokenize;file='/private/tmp/pip_build_root/Pillow/setup.py';exec(compile(getattr(tokenize, 'open', open)(file).read().replace('\r\n', '\n'), file, 'exec'))" install --record /tmp/pip-hTK1g7-record/install-record.txt --single-version-externally-managed --compile failed with error code 1 in /private/tmp/pip_build_root/Pillow

Could not connect to proxy (help) message?

Hi @dutzi,
I am using mitmproxy binary, despite mitm running in the background chrome plugin still say "could not connect to proxy". Also there it will be helpful if there is some clear easy to understand documentation regarding mitmproxy for people who are new to this kind of this. I will be more than happy to contribute and update the documentation and make videos if this helps. This is a really useful tool and can greatly reduce dependency on external middleware like "Fiddler" and "Charles Proxy".
Thanks

screen shot 2014-11-28 at 14 29 10

Linux support

As reported by /u/thefinn93 :

error: [Errno 2] No such file or directory: '/home/finn/Library/Application
Support/Google/Chrome/NativeMessagingHosts/'

Remove icon not showing up

for some files remove icon (x) doesn't show up see image below.
tamper bug
Upon inspecting the li, I can see that its Cross icon div (.sidebar-list-item-delete) is there but not visible.

mitmproxy issue: python setup.py egg_info

Hi,

have some troubles to install mitmproxy. I'm getting a error message
"Command "python setup.py egg_info" failed with error code 1 in /private/tmp/pip-build-TjTZdM/netlib"

mitmproxy issue

- I've updated xcode: xcode-select --install - installed pip: sudo easy_install pip - tried to install mitmproxy: sudo pip install mitmproxy / but i get an error after that. - I also tried to install tamper: sudo pip install tamper / but I also get an error "Command "python setup.py egg_info" failed with error code 1 in /private/tmp/pip-build-m7aC_S/netlib"

tamper issue

I've also installed xcode command line.

I'm using Mac OS X 10.10.4

Don't know how to fix this. Any idea?

Thanks

pip install tamper fails on windows (pip install works otherwise)

Chrome: Version 38.0.2125.101 m
Windows OS: 8.1

pip.log:

c:\python\Scripts\pip3 run on 10/14/14 19:25:05
Downloading/unpacking tamper
Getting page https://pypi.python.org/simple/tamper/
URLs to search for versions for tamper:

SyntaxError: invalid syntax


Cleaning up...
Removing temporary dir C:\Users\RUSSEL1\AppData\Local\Temp\pip_build_Russell Dempsey...
Command python setup.py egg_info failed with error code 1 in C:\Users\RUSSEL
1\AppData\Local\Temp\pip_build_Russell Dempsey\tamper
Exception information:
Traceback (most recent call last):
File "C:\python\lib\site-packages\pip\basecommand.py", line 122, in main
status = self.run(options, args)
File "C:\python\lib\site-packages\pip\commands\install.py", line 278, in run
requirement_set.prepare_files(finder, force_root_egg_info=self.bundle, bundle=self.bundle)
File "C:\python\lib\site-packages\pip\req.py", line 1229, in prepare_files
req_to_install.run_egg_info()
File "C:\python\lib\site-packages\pip\req.py", line 325, in run_egg_info
command_desc='python setup.py egg_info')
File "C:\python\lib\site-packages\pip\util.py", line 697, in call_subprocess
% (command_desc, proc.returncode, cwd))
pip.exceptions.InstallationError: Command python setup.py egg_info failed with error code 1 in C:\Users\RUSSEL~1\AppData\Local\Temp\pip_build_Russell Dempsey\tamper

Error on open file in ubuntu linux

Hi,

I'm trying to run Tamper with google chrome on linux. When I try to modify a file from the Develop Tools's Tamber tab, chrome display this error:

[10368:10368:1120/094001:ERROR:CONSOLE(3)] "Error: [$rootScope:inprog] $digest already in progress
http://errors.angularjs.org/1.3.0/$rootScope/inprog?p0=%24digest
at chrome-extension://mabhojhgigkmnkppkncbkblecnnanfmd/scripts/vendor.js:1:14925
at m (chrome-extension://mabhojhgigkmnkppkncbkblecnnanfmd/scripts/vendor.js:3:9654)
at l.$digest (chrome-extension://mabhojhgigkmnkppkncbkblecnnanfmd/scripts/vendor.js:3:12072)
at chrome-extension://mabhojhgigkmnkppkncbkblecnnanfmd/scripts/panel.js:1:2610
at i (chrome-extension://mabhojhgigkmnkppkncbkblecnnanfmd/scripts/vendor.js:3:6354)
at chrome-extension://mabhojhgigkmnkppkncbkblecnnanfmd/scripts/vendor.js:3:6526
at l.$eval (chrome-extension://mabhojhgigkmnkppkncbkblecnnanfmd/scripts/vendor.js:3:13712)
at l.$digest (chrome-extension://mabhojhgigkmnkppkncbkblecnnanfmd/scripts/vendor.js:3:12208)
at chrome-extension://mabhojhgigkmnkppkncbkblecnnanfmd/scripts/vendor.js:3:13797
at g (chrome-extension://mabhojhgigkmnkppkncbkblecnnanfmd/scripts/vendor.js:2:1339)", source: chrome-extension://mabhojhgigkmnkppkncbkblecnnanfmd/scripts/vendor.js (3)

Chrome Extension will not install, no errors

I've looked in the console, is there any other place I should look? I have both Chrome Beta and Chrome stable installed and it won't install in either. I'm running Chrome 43 and 44 on Fedora 21. I also tried installing in another user profile, still won't install.

The only message I get is
An Error Has Occurred: There was a problem adding the item to Chrome. Please refresh the page and try again.

The python part installed perfectly.

Update:
It also won't install on my Fedora 22 workstation. Might be a linux compatibility regression.

Does not work with Python 3

> pip install tamper
Collecting tamper
  Using cached tamper-0.24.5.tar.gz
    Complete output from command python setup.py egg_info:
    Traceback (most recent call last):
      File "<string>", line 20, in <module>
      File "/private/var/folders/_y/c52qvdjs6735275vt5swph2h0000gn/T/pip-build-1jx71wgv/tamper/setup.py", line 60
        print '\nWriting chrome native messaging manifest file (' + manifestFilename + ')'
                                                                ^
    SyntaxError: invalid syntax

    ----------------------------------------
Command "python setup.py egg_info" failed with error code 1 in /private/var/folders/_y/c52qvdjs6735275vt5swph2h0000gn/T/pip-build-1jx71wgv/tamper

Python keeps crashing while using Tamper

Python keeps crashing, see the two malloc breaks:

2014-11-18 13:24:26.000 kernel[0]: process Python[19764] caught causing excessive wakeups. Observed wakeups rate (per sec): 386; Maximum permitted wakeups rate (per sec): 150; Observation period: 300 seconds; Task lifetime number of wakeups: 45001
2014-11-18 13:24:27.615 spindump[852]: Saved wakeups_resource.diag report for Python version 2.7.8 (2.7.8) to /Library/Logs/DiagnosticReports/Python_2014-11-18-132427_mbp13-2.wakeups_resource.diag
2014-11-18 13:36:08.000 kernel[0]: process Python[19814] caught causing excessive wakeups. Observed wakeups rate (per sec): 383; Maximum permitted wakeups rate (per sec): 150; Observation period: 300 seconds; Task lifetime number of wakeups: 45240
2014-11-18 13:36:09.566 spindump[852]: Saved wakeups_resource.diag report for Python version 2.7.8 (2.7.8) to /Library/Logs/DiagnosticReports/Python_2014-11-18-133609_mbp13-2.wakeups_resource.diag
2014-11-18 13:42:26.000 kernel[0]: process Python[19852] caught causing excessive wakeups. Observed wakeups rate (per sec): 389; Maximum permitted wakeups rate (per sec): 150; Observation period: 300 seconds; Task lifetime number of wakeups: 45046
2014-11-18 13:42:27.240 spindump[852]: Saved wakeups_resource.diag report for Python version 2.7.8 (2.7.8) to /Library/Logs/DiagnosticReports/Python_2014-11-18-134227_mbp13-2.wakeups_resource.diag
2014-11-18 13:52:19.405 Python[19852]: Python(19852,0x10ec80000) malloc: *** error for object 0x7fc5342a8cb8: incorrect checksum for freed object - object was probably modified after being freed.
*** set a breakpoint in malloc_error_break to debug
2014-11-18 13:52:19.975 ReportCrash[19895]: Saved crash report for Python[19852] version 2.7.8 (2.7.8) to /Users/adam/Library/Logs/DiagnosticReports/Python_2014-11-18-135219_mbp13-2.crash
2014-11-18 13:54:17.000 kernel[0]: process Python[19902] caught causing excessive wakeups. Observed wakeups rate (per sec): 388; Maximum permitted wakeups rate (per sec): 150; Observation period: 300 seconds; Task lifetime number of wakeups: 45218
2014-11-18 13:54:17.875 spindump[852]: Saved wakeups_resource.diag report for Python version 2.7.8 (2.7.8) to /Library/Logs/DiagnosticReports/Python_2014-11-18-135417_mbp13-2.wakeups_resource.diag
2014-11-18 14:02:04.000 kernel[0]: process Python[584] caught causing excessive wakeups. Observed wakeups rate (per sec): 388; Maximum permitted wakeups rate (per sec): 150; Observation period: 300 seconds; Task lifetime number of wakeups: 45087
2014-11-18 14:02:05.381 spindump[599]: Saved wakeups_resource.diag report for Python version 2.7.8 (2.7.8) to /Library/Logs/DiagnosticReports/Python_2014-11-18-140205_mbp13-2.wakeups_resource.diag
2014-11-18 14:06:20.000 kernel[0]: process Python[613] caught causing excessive wakeups. Observed wakeups rate (per sec): 387; Maximum permitted wakeups rate (per sec): 150; Observation period: 300 seconds; Task lifetime number of wakeups: 45107
2014-11-18 14:06:20.973 spindump[599]: Saved wakeups_resource.diag report for Python version 2.7.8 (2.7.8) to /Library/Logs/DiagnosticReports/Python_2014-11-18-140620_mbp13-2.wakeups_resource.diag
2014-11-18 14:29:35.000 kernel[0]: process Python[876] caught causing excessive wakeups. Observed wakeups rate (per sec): 394; Maximum permitted wakeups rate (per sec): 150; Observation period: 300 seconds; Task lifetime number of wakeups: 45088
2014-11-18 14:29:35.783 spindump[599]: Saved wakeups_resource.diag report for Python version 2.7.8 (2.7.8) to /Library/Logs/DiagnosticReports/Python_2014-11-18-142935_mbp13-2.wakeups_resource.diag
2014-11-18 16:23:20.445 Python[876]: Python(876,0x105c16000) malloc: *** error for object 0x7fc3ca9a5d50: pointer being freed was not allocated
*** set a breakpoint in malloc_error_break to debug
2014-11-18 16:23:20.935 ReportCrash[1499]: Saved crash report for Python[876] version 2.7.8 (2.7.8) to /Users/adam/Library/Logs/DiagnosticReports/Python_2014-11-18-162320_mbp13-2.crash
2014-11-18 16:25:17.000 kernel[0]: process Python[1506] caught causing excessive wakeups. Observed wakeups rate (per sec): 390; Maximum permitted wakeups rate (per sec): 150; Observation period: 300 seconds; Task lifetime number of wakeups: 45194
2014-11-18 16:25:17.995 spindump[599]: Saved wakeups_resource.diag report for Python version 2.7.8 (2.7.8) to /Library/Logs/DiagnosticReports/Python_2014-11-18-162517_mbp13-2.wakeups_resource.diag

cannot install tamper on python 3.7 (macsox)

Collecting tamper
  Using cached tamper-0.24.5.tar.gz (6.2 kB)
    ERROR: Command errored out with exit status 1:
     command: /usr/local/opt/python/bin/python3.7 -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'/private/var/folders/rs/x46xkw452yl8xzdvkhqbzsgh0000gn/T/pip-install-5m8nd9z1/tamper/setup.py'"'"'; __file__='"'"'/private/var/folders/rs/x46xkw452yl8xzdvkhqbzsgh0000gn/T/pip-install-5m8nd9z1/tamper/setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' egg_info --egg-base /private/var/folders/rs/x46xkw452yl8xzdvkhqbzsgh0000gn/T/pip-install-5m8nd9z1/tamper/pip-egg-info
         cwd: /private/var/folders/rs/x46xkw452yl8xzdvkhqbzsgh0000gn/T/pip-install-5m8nd9z1/tamper/
    Complete output (6 lines):
    Traceback (most recent call last):
      File "<string>", line 1, in <module>
      File "/private/var/folders/rs/x46xkw452yl8xzdvkhqbzsgh0000gn/T/pip-install-5m8nd9z1/tamper/setup.py", line 60
        print '\nWriting chrome native messaging manifest file (' + manifestFilename + ')'
                                                                ^
    SyntaxError: invalid syntax
    ----------------------------------------
ERROR: Command errored out with exit status 1: python setup.py egg_info Check the logs for full command output.

Mac setup with --user install

Hey,

Are there any issues installing Tamper in --user mode?

pip install tamper --user

It seems to install correctly, but chrome can't see the proxy.

pip install fails

pip install --src . -r requirements.txt

Command /usr/bin/python -c "import setuptools, tokenize; __file__='/home/elijah/bin/mitmproxy/netlib/setup.py'; exec(compile(getattr(tokenize, 'open', open)(__file__).read().replace('\r
\n', '\n'), __file__, 'exec'))" develop --no-deps failed with error code 1 in /home/elijah/bin/mitmproxy/netlib
Storing debug log for failure in /home/elijah/.pip/pip.log

This was also opened in mitmproxy here, not sure what is going on so thought I would cross post.

mitmproxy/mitmproxy#379

Install fails

Install fails with the following error:

Collecting tamper
  Using cached tamper-0.24.5.tar.gz
    Complete output from command python setup.py egg_info:
    Traceback (most recent call last):
      File "<string>", line 1, in <module>
      File "/tmp/pip-build-o8okyiji/tamper/setup.py", line 60
        print '\nWriting chrome native messaging manifest file (' + manifestFilename + ')'
                                                                ^
    SyntaxError: invalid syntax
    
    ----------------------------------------
Command "python setup.py egg_info" failed with error code 1 in /tmp/pip-build-o8okyiji/tamper/

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.