0

URL がhttps://サイトを指しているが、これは SSL 暗号化をサポートしていない場合、次の Python コードがエンドツーエンドの盗聴攻撃に対して脆弱かどうかを知りたいです。

なぜ私は疑わしいのですか?Mechanizeは内部的に urllib2 を使用しますが、HTTPS リクエストは urllib2 でサーバーの証明書の検証を行わないためです

さらに、Urllib2/Mechanize で実際にhttpsまたはhttp接続を使用しているかどうかを確認する方法がわかりません。私の知る限り、Mechanize はブラウザーとして動作するため、SSL がサーバーでサポートされていない場合にhttpにフォールバックするのか、安全でないhttps実装を実行するのかはわかりません。

暗号化されていない Tor 回路から出ているかどうかを確認するにはどうすればよいですか?

コード:

import socks
import socket
def create_connection(address, timeout=None, source_address=None):
    sock = socks.socksocket()
    sock.connect(address)
    return sock

socks.setdefaultproxy(socks.PROXY_TYPE_SOCKS5, "127.0.0.1", 9050)

# patch the socket module
socket.socket = socks.socksocket
socket.create_connection = create_connection

import urllib2

print "urllib2.urlopen(): ",urllib2.urlopen('https://icanhazip.com').read()

import mechanize
from mechanize import Browser

br = Browser()
print "Mechanize Browser.open(): ", br.open('https://icanhazip.com').read()


print "Mechanize Browser.open(): ", br.open('https://check.torproject.org/').read()
4

0 に答える 0