mirror of
https://github.com/sqlmapproject/sqlmap.git
synced 2025-01-24 08:14:24 +03:00
switching from HTTP proxy to SOCKS proxy for --tor (sick and tired of Polipo/Privoxy bull; either Tor flag is overwritten every here and there or they are putting all kinds of filter warnings)
This commit is contained in:
parent
8ea9b19b66
commit
ba4234dc42
|
@ -25,6 +25,7 @@ import lib.core.threads
|
|||
|
||||
from extra.keepalive import keepalive
|
||||
from extra.oset.pyoset import oset
|
||||
from extra.socks import socks
|
||||
from lib.controller.checks import checkConnection
|
||||
from lib.core.common import Backend
|
||||
from lib.core.common import dataToStdout
|
||||
|
@ -1674,11 +1675,21 @@ def __setTrafficOutputFP():
|
|||
|
||||
conf.trafficFP = openFile(conf.trafficFile, "w+")
|
||||
|
||||
def __setTorProxySettings():
|
||||
def __setTorSocksProxySettings():
|
||||
if not conf.tor:
|
||||
return
|
||||
|
||||
infoMsg = "setting Tor proxy settings"
|
||||
infoMsg = "setting Tor SOCKS proxy settings"
|
||||
logger.info(infoMsg)
|
||||
|
||||
socks.setdefaultproxy(socks.PROXY_TYPE_SOCKS5, 'localhost', 9050)
|
||||
socks.wrapmodule(urllib2)
|
||||
|
||||
def __setTorHTTPProxySettings():
|
||||
if not conf.tor:
|
||||
return
|
||||
|
||||
infoMsg = "setting Tor HTTP proxy settings"
|
||||
logger.info(infoMsg)
|
||||
|
||||
found = None
|
||||
|
@ -1852,7 +1863,7 @@ def init(inputOptions=AttribDict(), overrideOptions=False):
|
|||
__cleanupOptions()
|
||||
__checkDependencies()
|
||||
__basicOptionValidation()
|
||||
__setTorProxySettings()
|
||||
__setTorSocksProxySettings()
|
||||
__setMultipleTargets()
|
||||
__setTamperingFunctions()
|
||||
__setTrafficOutputFP()
|
||||
|
|
|
@ -15,7 +15,9 @@ import urllib2
|
|||
import urlparse
|
||||
import traceback
|
||||
|
||||
from extra.socks.socks import GeneralProxyError
|
||||
from extra.multipart import multipartpost
|
||||
|
||||
from lib.core.agent import agent
|
||||
from lib.core.common import asciifyUrl
|
||||
from lib.core.common import average
|
||||
|
@ -92,10 +94,20 @@ class Connect:
|
|||
warnMsg += "lower the --time-sec value (e.g. --time-sec=2)"
|
||||
singleTimeWarnMessage(warnMsg)
|
||||
elif kb.originalPage is None:
|
||||
warnMsg = "if the problem persists please check that the provided "
|
||||
warnMsg += "target url is valid. If it is, you can try to rerun "
|
||||
warnMsg += "with the --random-agent switch turned on "
|
||||
warnMsg += "and/or proxy switches (--ignore-proxy, --proxy,...)"
|
||||
if conf.tor:
|
||||
warnMsg = "please make sure that you have "
|
||||
warnMsg += "Tor installed and running so "
|
||||
warnMsg += "you could successfully use "
|
||||
warnMsg += "--tor switch "
|
||||
if IS_WIN:
|
||||
warnMsg += "(e.g. https://www.torproject.org/download/download.html.en)"
|
||||
else:
|
||||
warnMsg += "(e.g. https://help.ubuntu.com/community/Tor)"
|
||||
else:
|
||||
warnMsg = "if the problem persists please check that the provided "
|
||||
warnMsg += "target url is valid. If it is, you can try to rerun "
|
||||
warnMsg += "with the --random-agent switch turned on "
|
||||
warnMsg += "and/or proxy switches (--ignore-proxy, --proxy,...)"
|
||||
singleTimeWarnMessage(warnMsg)
|
||||
elif conf.threads > 1:
|
||||
warnMsg = "if the problem persists please try to lower "
|
||||
|
@ -440,7 +452,7 @@ class Connect:
|
|||
processResponse(page, responseHeaders)
|
||||
return page, responseHeaders, code
|
||||
|
||||
except (urllib2.URLError, socket.error, socket.timeout, httplib.BadStatusLine, httplib.IncompleteRead), e:
|
||||
except (urllib2.URLError, socket.error, socket.timeout, httplib.BadStatusLine, httplib.IncompleteRead, GeneralProxyError), e:
|
||||
tbMsg = traceback.format_exc()
|
||||
|
||||
if "no host given" in tbMsg:
|
||||
|
|
Loading…
Reference in New Issue
Block a user