0

我想知道当 url 指向https://站点但这个不支持 SSL 加密时,以下 Python 代码是否容易受到端到端窃听攻击。

为什么我有疑问?因为Mechanize内部使用 urllib2 但HTTPS 请求不会对 urllib2 中的服务器证书进行任何验证

另外,我不知道如何验证我们是否真的在使用带有 Urllib2/Mechanize的httpshttp连接。AFAIK 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