Tor Relay availability checker, for using it as a bridge in countries with censorship

Overview

Tor Relay Availability Checker

This small script downloads all Tor Relay IP addresses from onionoo.torproject.org and checks whether random Relays are available.

It could be used to find working Relay in a countries with internet censorship and blocked Tor.

Usage

Windows: download *.exe file from Releases and run it in console (start → cmd)

Linux & macOS: download *.pyz file from Releases and run it with Python 3.7+:
python3 tor-relay-scanner.pyz

Comments
  • tor relay scanner doesn't work with system socks5 proxy enabled for Windows

    tor relay scanner doesn't work with system socks5 proxy enabled for Windows

    OS: Windows 11

    Screenshot 2022-05-20 224920

    tor-relay-scanner-0.0.7.exe -g 1 --timeout 3 --browser --start-browser
    Tor Relay Scanner. Will scan up to 1 working relays (or till the end)
    Downloading Tor Relay information from onionoo.torproject.org…
    Can't download Tor Relay data from/via onionoo.torproject.org: HTTPSConnectionPool(host='onionoo.torproject.org', port=443): Max retries exceeded with url: /details?type=relay&running=true&fields=fingerprint,or_addresses (Caused by ProxyError('Cannot connect to proxy.', timeout('_ssl.c:1114: The handshake operation timed out')))
    Can't download Tor Relay data from/via corsbypasser.herokuapp.com: HTTPSConnectionPool(host='corsbypasser.herokuapp.com', port=443): Max retries exceeded with url: /https://onionoo.torproject.org/details?type=relay&running=true&fields=fingerprint,or_addresses (Caused by ProxyError('Cannot connect to proxy.', timeout('_ssl.c:1114: The handshake operation timed out')))
    Can't download Tor Relay data from/via corsanywhere.herokuapp.com: HTTPSConnectionPool(host='corsanywhere.herokuapp.com', port=443): Max retries exceeded with url: /https://onionoo.torproject.org/details?type=relay&running=true&fields=fingerprint,or_addresses (Caused by ProxyError('Cannot connect to proxy.', timeout('_ssl.c:1114: The handshake operation timed out')))
    Can't download Tor Relay data from/via tauron.herokuapp.com: HTTPSConnectionPool(host='tauron.herokuapp.com', port=443): Max retries exceeded with url: /https://onionoo.torproject.org/details?type=relay&running=true&fields=fingerprint,or_addresses (Caused by ProxyError('Cannot connect to proxy.', timeout('_ssl.c:1114: The handshake operation timed out')))
    Can't download Tor Relay data from/via cors-anywhere2.herokuapp.com: HTTPSConnectionPool(host='cors-anywhere2.herokuapp.com', port=443): Max retries exceeded with url: /https://onionoo.torproject.org/details?type=relay&running=true&fields=fingerprint,or_addresses (Caused by ProxyError('Cannot connect to proxy.', timeout('_ssl.c:1114: The handshake operation timed out')))
    Can't download Tor Relay data from/via icors.vercel.app: HTTPSConnectionPool(host='icors.vercel.app', port=443): Max retries exceeded with url: /?https%3A//onionoo.torproject.org/details%3Ftype%3Drelay%26running%3Dtrue%26fields%3Dfingerprint%2Cor_addresses (Caused by ProxyError('Cannot connect to proxy.', timeout('_ssl.c:1114: The handshake operation timed out')))
    Tor Relay information can't be downloaded!
    
    opened by d3vv 11
  • Can't download Tor Relay data - Failed to execute script

    Can't download Tor Relay data - Failed to execute script

    `C:\Windows\system32> F:_BROWSER\trs\tor-relay-scanner-0.0.3.exe

    Tor Relay Scanner. Will scan up to 5 working relays (or till the end) Downloading Tor Relay information from onionoo.torproject.org: Can't download Tor Relay data from/via onionoo.torproject.org: HTTPSConnectionPool(host='onionoo.torproject.org', port=4 43): Max retries exceeded with url: /details?type=relay&running=true&fields=fingerprint,or_addresses (Caused by SSLError (SSLEOFError(8, 'EOF occurred in violation of protocol (_ssl.c:1131)'))) Can't download Tor Relay data from/via corsbypasser.herokuapp.com: HTTPSConnectionPool(host='corsbypasser.herokuapp.com' , port=443): Max retries exceeded with url: /https://onionoo.torproject.org/details?type=relay&running=true&fields=finge rprint,or_addresses (Caused by SSLError(SSLEOFError(8, 'EOF occurred in violation of protocol (_ssl.c:1131)'))) Can't download Tor Relay data from/via corsanywhere.herokuapp.com: HTTPSConnectionPool(host='corsanywhere.herokuapp.com' , port=443): Max retries exceeded with url: /https://onionoo.torproject.org/details?type=relay&running=true&fields=finge rprint,or_addresses (Caused by SSLError(SSLEOFError(8, 'EOF occurred in violation of protocol (_ssl.c:1131)'))) Can't download Tor Relay data from/via tauron.herokuapp.com: HTTPSConnectionPool(host='tauron.herokuapp.com', port=443): Max retries exceeded with url: /https://onionoo.torproject.org/details?type=relay&running=true&fields=fingerprint,or_ad dresses (Caused by SSLError(SSLEOFError(8, 'EOF occurred in violation of protocol (ssl.c:1131)'))) Traceback (most recent call last): File "tor_relay_scanner_main.py", line 5, in File "tor_relay_scanner\scanner.py", line 167, in main File "asyncio\runners.py", line 44, in run File "asyncio\base_events.py", line 616, in run_until_complete File "tor_relay_scanner\scanner.py", line 115, in main_async File "tor_relay_scanner\scanner.py", line 62, in grab_parse TypeError: 'NoneType' object is not subscriptable [7056] Failed to execute script 'main' due to unhandled exception!

    C:\Windows\system32> `

    opened by CheckIssues 8
  • Doesn't work with Python 3.5.3 from Debian Stretch

    Doesn't work with Python 3.5.3 from Debian Stretch

    I use Debian Stretch, its Python 3 version is 3.5.3. I get this error message:

    $ cd ~/opt/tor-browser_en-US && python3 ./tor-relay-scanner-0.0.7.pyz -g 1 --timeout 3 --browser --start-browser
    Traceback (most recent call last):
      File "/usr/lib/python3.5/runpy.py", line 193, in _run_module_as_main
        "__main__", mod_spec)
      File "/usr/lib/python3.5/runpy.py", line 85, in _run_code
        exec(code, run_globals)
      File "./tor-relay-scanner-0.0.7.pyz/__main__.py", line 2, in <module>
      File "<frozen importlib._bootstrap>", line 969, in _find_and_load
      File "<frozen importlib._bootstrap>", line 954, in _find_and_load_unlocked
      File "<frozen importlib._bootstrap>", line 896, in _find_spec
      File "<frozen importlib._bootstrap_external>", line 1147, in find_spec
      File "<frozen importlib._bootstrap_external>", line 1123, in _get_spec
      File "<frozen importlib._bootstrap_external>", line 1104, in _legacy_get_spec
      File "<frozen importlib._bootstrap>", line 444, in spec_from_loader
      File "<frozen importlib._bootstrap_external>", line 541, in spec_from_file_location
      File "./tor-relay-scanner-0.0.7.pyz/tor_relay_scanner/scanner.py", line 137
        print(f"Tor Relay Scanner. Will scan up to {WORKING_RELAY_NUM_GOAL}" +
                                                                           ^
    SyntaxError: invalid syntax
    

    So it seems Python 3.5.3 is not supported. So I cannot use this tool on my computer

    opened by safinaskar 4
  • Just added some CLI arguments

    Just added some CLI arguments

    Hi! I Just have added command options to allow the user define easily the number of random relays to test and the number of relays to scan (or until the end, if it's the case).

    opened by gp2112 2
  • is this ok? error: Can't download Tor Relay data from/via corsbypasser.herokuapp.com: Expecting value: line 1 column 1 (char 0)

    is this ok? error: Can't download Tor Relay data from/via corsbypasser.herokuapp.com: Expecting value: line 1 column 1 (char 0)

    Tor Relay Scanner. Will scan up to 1 working relays (or till the end)
    Downloading Tor Relay information from onionoo.torproject.org…
    Can't download Tor Relay data from/via onionoo.torproject.org: ('Connection aborted.', ConnectionResetError(10054, 'Удаленный хост принудительно разорвал существующее подключение', None, 10054, None))
    Can't download Tor Relay data from/via corsbypasser.herokuapp.com: Expecting value: line 1 column 1 (char 0)
    Done!
    
    Try 0/235, We'll test the following 30 random relays:
    ...
    
    opened by Owyn 1
  • Not available

    Not available

    Our country Russia, China, blocked https://onionoo.torproject.org https://bridges.torproject.org/ Testing tor-relay-scanner with a proxy makes no sense at all. You need to store the onionoo.torproject.org data crawler at raw.githubusercontent.com

    opened by Pantyhose-X 1
Releases(0.0.7)
Owner
ValdikSS
ValdikSS
Web Scraping com Python - Raspando Vagas para Programadores

Web Scraping com Python - Raspando Vagas para Programadores Sobre o Projeto Web

Kayo Libarino 3 Dec 30, 2021
Set the draft security HTTP header Permissions-Policy (previously Feature-Policy) on your Django app.

django-permissions-policy Set the draft security HTTP header Permissions-Policy (previously Feature-Policy) on your Django app. Requirements Python 3.

Adam Johnson 76 Nov 30, 2022
Searches for potentially vulnerable websites to local file inclusion, throughout the web and then exploits them for LFI

LFI-Hunter Searches for potentially vulnerable websites to local file inclusion, throughout the web and then exploits them for LFI A script written in

Anukul Pandey 6 Jan 30, 2022
RCE 0-day for GhostScript 9.50 - Payload generator

RCE-0-day-for-GhostScript-9.50 PoC for RCE 0-day for GhostScript 9.50 - Payload generator The PoC in python generates payload when exploited for a 0-d

534 Dec 14, 2022
HatSploit collection of generic payloads designed to provide a wide range of attacks without having to spend time writing new ones.

HatSploit collection of generic payloads designed to provide a wide range of attacks without having to spend time writing new ones.

EntySec 5 May 10, 2022
The disassembler parses evm bytecode from the command line or from a file.

EVM Bytecode Disassembler The disassembler parses evm bytecode from the command line or from a file. It does not matter whether the bytecode is prefix

alpharush 22 Dec 27, 2022
A repository to detect the ARP spoofing in any devices and prevent Man in the Middle(MITM) attack using Python3

arp_spoof_detector A repository to detect the ARP spoofing in any devices and prevent Man in the Middle(MITM) attack using Python3 Usage: git clone ht

Surya Das N 1 Oct 30, 2021
This is a multi-password‌ cracking tool that can help you hack facebook accounts very quickly

Pro_Crack Facebook Fast Cracking Tool This is a multi-password‌ cracking tool that can help you hack facebook accounts very quickly Installation On Te

•JINN• 1 Jan 16, 2022
Growtopia Save.dat Stealer

savedat-stealer Growtopia Save.dat Stealer (Auto Send To Webhook) How To Use After Change Webhook URL Compile script to exe Give to target Done Info C

NumeX 9 May 01, 2022
Caretaker 2 Jun 06, 2022
Cam-Hacker: Ip Cameras hack with python

Cam-Hacker Hack Cameras Mode Of Execution: apt-get install python3 apt-get insta

Error 4 You 9 Dec 17, 2022
Mr.Holmes is a information gathering tool (OSINT)

🔍 Mr.Holmes Mr.Holmes is a information gathering tool (OSINT). Is main purpose is to gain information about domains,username and phone numbers with t

534 Jan 08, 2023
Aiminsun 165 Dec 21, 2022
Proof of Concept Exploit for vCenter CVE-2021-21972

CVE-2021-21972 Proof of Concept Exploit for vCenter CVE-2021-21972

Horizon 3 AI Inc 210 Dec 31, 2022
MVT is a forensic tool to look for signs of infection in smartphone devices

Mobile Verification Toolkit Mobile Verification Toolkit (MVT) is a collection of utilities to simplify and automate the process of gathering forensic

8.3k Jan 08, 2023
log4j-tools: CVE-2021-44228 poses a serious threat to a wide range of Java-based applications

log4j-tools Quick links Click to find: Inclusions of log4j2 in compiled code Calls to log4j2 in compiled code Calls to log4j2 in source code Overview

JFrog Ltd. 171 Dec 25, 2022
BETA: Layla - recon tool for bug bounty

WELCOME TO LAYLA Layla is a python script that automatically performs recon on a

Matheus Faria 68 Jan 04, 2023
Getting my gitlab commit history into github

🔰 ᵀᴱᴸᴱᴳᴿᴬᴹ ᴴᴬᶜᴷ ᴮᴼᵀ 🔰 The owner would not be responsible for any kind of bans due to the bot. • ⚡ INSTALLING ⚡ • • 🛠️ Lᴀɴɢᴜᴀɢᴇs Aɴᴅ Tᴏᴏʟs 🔰 • If

Santiago Chiesa 1 Dec 24, 2021
Proof-of-concept obfuscation toolkit for C# post-exploitation tools

InvisibilityCloak Proof-of-concept obfuscation toolkit for C# post-exploitation tools. This will perform the below actions for a C# visual studio proj

259 Dec 19, 2022
CVE-2021-22205& GitLab CE/EE RCE

Vuln Impact An issue has been discovered in GitLab CE/EE affecting all versions starting from 11.9. GitLab was not properly validating image files tha

Al1ex 213 Dec 30, 2022