All Projects → NullHypothesis → Sybilhunter

NullHypothesis / Sybilhunter

Licence: bsd-2-clause
Hunting for Sybils and anomalies in archived Tor network data.

Programming Languages

go
31211 projects - #10 most used programming language

Projects that are alternatives of or similar to Sybilhunter

tor-ip-changer
request new identity every X seconds interval using TOR client
Stars: ✭ 233 (+565.71%)
Mutual labels:  tor, tor-network
Attacks-on-Tor
Thirteen Years of Tor Attacks
Stars: ✭ 170 (+385.71%)
Mutual labels:  tor, tor-network
T0rlib4Android
A minimal android controller library for Tor
Stars: ✭ 25 (-28.57%)
Mutual labels:  tor, tor-network
GhostNET
GhostNET script that will help you be safer on the cyber
Stars: ✭ 45 (+28.57%)
Mutual labels:  tor, tor-network
Exitmap
A fast and modular scanner for Tor exit relays. The canonical repository (including issue tracker) is at https://gitlab.torproject.org/tpo/network-health/exitmap
Stars: ✭ 440 (+1157.14%)
Mutual labels:  tor, tor-network
OnionHarvester
A small TOR Onion Address harvester for checking if the address is available or not.
Stars: ✭ 71 (+102.86%)
Mutual labels:  tor, tor-network
sbws
Unofficial clone of gitweb.torproject.org. Report issues and open merge requests at: https://gitlab.torproject.org/tpo/network-health/sbws/
Stars: ✭ 15 (-57.14%)
Mutual labels:  tor, tor-network
Torghostng
TorghostNG - Make your internet traffic anonymized through Tor network and Privoxy. Rewritten from TorGhost with Python 3
Stars: ✭ 241 (+588.57%)
Mutual labels:  tor, tor-network
Torwall
Tallow - Transparent Tor for Windows
Stars: ✭ 346 (+888.57%)
Mutual labels:  tor, tor-network
Toriptables2
Tor Iptables script is an anonymizer that sets up iptables and tor to route all services and traffic including DNS through the Tor network.
Stars: ✭ 287 (+720%)
Mutual labels:  tor, tor-network
Multitor
Create multiple TOR instances with a load-balancing.
Stars: ✭ 624 (+1682.86%)
Mutual labels:  tor, tor-network
Scihub Downloader
Sci-Hub PDF downloader through Tor Network (Docker image)
Stars: ✭ 35 (+0%)
Mutual labels:  tor, tor-network
T0rlib4j
T0rlib4j is a Java controller library for Tor
Stars: ✭ 50 (+42.86%)
Mutual labels:  tor, tor-network
Tor-IP-Addresses
Hourly checked and updated list of IP Addresses of Tor and Tor Exit Nodes
Stars: ✭ 182 (+420%)
Mutual labels:  tor, tor-network
onionfruit
OnionFruit™ Connect - Tor access client with country selection, bridge configuration, pluggable transports and experimental DNS support
Stars: ✭ 150 (+328.57%)
Mutual labels:  tor, tor-network
onionbox
Send and receive files securely through Tor.
Stars: ✭ 39 (+11.43%)
Mutual labels:  tor, tor-network
Ansible Relayor
An Ansible Role for Tor Relay Operators
Stars: ✭ 165 (+371.43%)
Mutual labels:  tor, tor-network
Online Privacy Test Resource List
Privacy Online Test and Resource Compendium (POTARC) 🕵🏻
Stars: ✭ 185 (+428.57%)
Mutual labels:  tor, tor-network
orjail
a more secure way to force programs to exclusively use tor network
Stars: ✭ 136 (+288.57%)
Mutual labels:  tor, tor-network
Torbot
Dark Web OSINT Tool
Stars: ✭ 821 (+2245.71%)
Mutual labels:  tor, tor-network

sybilhunter logo

Build Status

Overview

Sybilhunter is a command line tool written in Go to discover and analyse Sybil relays in the Tor network. It does so by implementing a number of analysis techniques that take as input archived Tor network data. For example, sybilhunter can tell you (i) when an unusally large amount of relays joined or left the Tor network, (ii) which Tor relays changed their identity keys a lot, and (iii) which Tor relays are configured very similar to each other. Ideally, sybilhunter should become a Swiss Army knife for analysing anomalies in network consensuses and relay descriptors. The theory behind sybilhunter is discussed in a research paper that was published at the USENIX Security 2016 conference.

Get started in 5 minutes

Assuming you have a working Go installation, this is how you can get started:

$ go get github.com/NullHypothesis/sybilhunter
$ wget https://collector.torproject.org/archive/relay-descriptors/consensuses/consensuses-2015-08.tar.xz
$ tar xvJf consensuses-2015-08.tar.xz
$ sybilhunter -data consensuses-2015-08 -print

Now you have one month worth of consensuses and can proceed to the next section to learn more about analysis examples.

Examples

Sybilhunter takes as input data obtained from CollecTor. Let's start by pretty-printing a file containing a network consensus or relay descriptors:

$ sybilhunter -data /path/to/file -print

Next, here's how you can analyse how often relays changed their fingerprint in a set of consensus documents:

$ sybilhunter -data /path/to/consensuses/ -fingerprints

Sybilhunter is also able to create uptime images, visualising the uptime of relays over time. In such an image, every column is a relay and every row is a consensus. Each pixel is either black (relay was offline) or white (relay was online). Red blocks are adjacent relays with identical uptime. You can create an uptime image by running:

$ sybilhunter -data /path/to/consensuses/ -uptime

Sybilhunter then writes an image like the following to disk:

uptime image

You can also put command line arguments into the configuration file ~/.sybilhunterrc. The format is just like command line arguments, one per line. For example:

$ cat ~/.sybilhunterrc
-descdir /path/to/server/descriptors/
-referencerelay 9B94CD0B7B8057EAF21BA7F023B7A1C8CA9CE645

Note that command line arguments overwrite the arguments in the configuration file.

Alternatives

Check out doctor's sybil checker script, and hstools can be useful for finding anomalies in hidden service directories.

Contact

For bugs and requests, please file a ticket in The Tor Project's bug tracker. You can also contact me privately:

Contact: Philipp Winter [email protected]
OpenPGP fingerprint: B369 E7A2 18FE CEAD EB96 8C73 CF70 89E3 D7FD C0D0

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].