这个Python代码的错误是什么?
我该怎么做才能解决这个问题呢?
终端输出是:
abhi@abhi-desktop:~/Desktop/sslstrip-0.1$ python sslstrip.py --listen=3130
Traceback (most recent call last):
File "sslstrip.py", line 254, in
main(sys.argv[1:])
File "sslstrip.py", line 246, in main
server = ThreadingHTTPServer(('', listenPort), StripProxy)
File "/usr/lib/python2.6/SocketServer.py", line 400, in init
self.server_bind()
File "/usr/lib/python2.6/BaseHTTPServer.py", line 108, in server_bind
SocketServer.TCPServer.server_bind(self)
File "/usr/lib/python2.6/SocketServer.py", line 411, in server_bind
self.socket.bind(self.server_address)
File "", line 1, in bind
TypeError: an integer is required
abhi@abhi-desktop:~/Desktop/sslstrip-0.1$
这里有一个21kb的代码文件...
下载链接
2 个回答
你提供的链接是指向sslstrip-0.5版本的,而你现在使用的是sslstrip-0.1版本。这两个版本的差别可大了(sslstrip-0.5使用了twisted这个库)。这个问题在sslstrip-0.2版本中已经修复了。如果你不想安装twisted,或者不想使用它,我建议你下载sslstrip-0.4这个版本。
如果你不指定端口,它会出错吗?
我猜测,listenPort在选项解析的时候是以字符串的形式出来的,需要在sslstrip.py的第77行转换成整数。