torrequest icon indicating copy to clipboard operation
torrequest copied to clipboard

All HTTPS requests are sent outside Tor

Open zolfariot opened this issue 4 years ago • 1 comments

Environment

OS: linux x86_64 Python: 3.9.4 OpenSSL: 1.1.1k

Python deps:

urllib3==1.26.4 
requests==2.25.1
torrequest==0.1.0 # (installed from pip)

Behavior

With plain (not https) connections:

>>> import requests
>>> import torrequest
>>> requests.get('http://ipecho.net/plain').text
192.0.2.102 # My real IP
>>> tr = torrequest.TorRequest()
>>> tr.get('http://ipecho.net/plain').text
203.0.113.75 # Someone else IP

With ssl connections

>>> import requests
>>> import torrequest
>>> requests.get('http://ipecho.net/plain').text
192.0.2.102 # My real IP
>>> tr = torrequest.TorRequest()
>>> tr.get('http://ipecho.net/plain').text
192.0.2.102 # My real IP!!!

zolfariot avatar May 05 '21 15:05 zolfariot

This is due to author not setting the proper proxy type: https://github.com/erdiaker/torrequest/blob/8c1b5d0b90bbc5f302cc624a8ae61545542b99f4/torrequest.py#L29 socks5 should be socks5h.

Here is a temporary work around:

import torrequest tr = torrequest.TorRequest()

tr.session.proxies.update({
     'https': 'socks5h://localhost:9050', #assuming your local proxy port is 9050
})

tr.session.get('https://ipecho.net/plain').text

SheldonPatnett avatar May 05 '21 21:05 SheldonPatnett