- This is a project created for Oscar Andersson's bachelor thesis at KAU. 🎉
- The thesis dissertation is avaliable for download here, the data used in this report are the results from release 1.0.0 of this repository. ✨
- Questions? Please, create an issue. 👍
A website oracle operating on Tor exit relays.
- Author: Oscar Andersson oscaande.se
- Organization: Karlstads University kau.se
- Course: Examnesarbete DVGC25
- Term: Autmn 2020 (HT2020)
- Licence: GPL-3.0 License, see license file or gpl-3.0 on gnu.org.
- Do not use this on relays that you do not own or do not have explicit permission for!
- This code is for research purposes only.
This is tool that exploits DNS cache in the Tor exit nodes.
- Makefile supose that a UNIX enviorment is used.
- This repository requires python 3 and python 2.
The current version of the tools is noted below in case future versions dont support backwards compatability. (as of 2020-10-28)
install using pacman -S python python2 pip git tor
on Arch based systems and apt-get install python python2 python-pip git tor
on Debian based systems.
- python2 (2.7.18)
- python3 (3.8.5)
- pip (20.1.1)
- git (2.28.0)
- autoconf (2.69)
- automake (1.16.2)
- libtool (2.4.6.42-b88ce-dirty)
- gcc (10.2.0)
- tor (0.3.5.12)
install using python3 -m pip install stem pysocks seaborn
.
- stem
- pysocks
- seaborn
install using python2 -m pip install stem
.
- stem
These tools can be built using the makefile in this repository. More about this in "Running chapter".
- exitmap (2019.05.30) by Philipp Winter
- torsocks (2.3.0) by The Tor Project
- All requirements can simply be aquired from running
make
or install exitmap manually, then place the contents ofsrc/
in exitmaps modules folder and copytheoracle.conf.example
totheoracle.conf
to the same direcotry. - After running
make
or manually installing. Configure the program in thetheoracle.conf
file.
To reset the tool, run make clean
. You will then have do redo the setup procedure, altough note that the configuration file is persistent.
Run the modules with exitmap using ./exitmap/bin/exitmap A --first-hop B --exit C --config-file exitmaprc
where A is a module, B is the fingerprint of the first hop relay and C is the fingerprint of the targeted exit relay. The supplied exitmap configuration file is called exitmaprc
and should be specificed using --config-file exitmaprc
. Read exitmap documentation or run ./exitmap/bin/exitmap
for more commands, modules and information.
Thanks! This could not have been possible without:
- Tobias Pulls for inpspiring and consulting me.
- Philipp Winter for creating the wonderfull tool exitmap.
And don't worry about the vase.