Skip to content

Latest commit

 

History

History
41 lines (29 loc) · 1.96 KB

README.md

File metadata and controls

41 lines (29 loc) · 1.96 KB

MitmAllTheOnions

An onion HTTP proxy that replaces TOR links with ones generated by this tool. After using this tool, you'll want to double check your onion URLs more than ever.

How it works

MitmAllTheOnions combines mitmproxy and mkp224o to generate mirrored onion links on the fly. When a user browses a link controlled by this tool, the tool will return the page from the corresponding original onion link (like a reverse proxy), except the page returned will have its onion links replaced with ones controlled by this tool.

The replacement links would appear similar to the original links because of mkp224o. One of the docker containers is a redis database that stores a mapping from original onion links to ones controlled by this tool.

Usage

To run this tool, simply edit the .env file with your preferences and then run with docker compose.

git clone https://github.com/Cabbache/MitmAllTheOnions
cd MitmAllTheOnions
nano .env
docker compose up

Dependencies

  • docker
  • docker compose

Configuration (.env file)

There are 3 variables that you could modify in this file

  • ROOT - This is the onion domain to start mirroring from
  • NUMCHARS - The number of initial characters to spoof when mirroring a domain. Not recommended more than 4
  • NUMINSTANCES - The number of tor instances that will handle the requests to the hidden services. The number of hidden services is divided equally between instances

Modifying http responses

The tool already modifies the onion links in HTML and Location header of the responses. If you need to modify anything else you can edit mitmproxy/scripts/mitm.py

Limitations and Backlog

  • Onion sites with a lot of onion links cause the tor instances to use a lot of CPU
  • Make gatewway errors nicer
  • Fix root chrooted volumes
  • More meaningful logs
  • Health check on the hidden services, make sure all tor instances are ready