adding --random-agent and removing -a

This commit is contained in:
Miroslav Stampar 2011-02-02 14:51:12 +00:00
parent 2dae57a56d
commit 5f49e20cc8
4 changed files with 14 additions and 16 deletions

View File

@ -981,7 +981,7 @@ def __setHTTPUserAgent():
conf.httpHeaders.append(("User-Agent", conf.agent)) conf.httpHeaders.append(("User-Agent", conf.agent))
return return
if not conf.userAgentsFile: if not conf.randomAgent:
addDefaultUserAgent = True addDefaultUserAgent = True
for header, _ in conf.httpHeaders: for header, _ in conf.httpHeaders:
@ -996,14 +996,14 @@ def __setHTTPUserAgent():
if not kb.userAgents: if not kb.userAgents:
debugMsg = "loading random HTTP User-Agent header(s) from " debugMsg = "loading random HTTP User-Agent header(s) from "
debugMsg += "file '%s'" % conf.userAgentsFile debugMsg += "file '%s'" % paths.USER_AGENTS
logger.debug(debugMsg) logger.debug(debugMsg)
try: try:
kb.userAgents = getFileItems(conf.userAgentsFile) kb.userAgents = getFileItems(paths.USER_AGENTS)
except IOError: except IOError:
warnMsg = "unable to read HTTP User-Agent header " warnMsg = "unable to read HTTP User-Agent header "
warnMsg += "file '%s'" % conf.userAgentsFile warnMsg += "file '%s'" % paths.USER_AGENTS
logger.warn(warnMsg) logger.warn(warnMsg)
conf.httpHeaders.append(("User-Agent", __defaultHTTPUserAgent())) conf.httpHeaders.append(("User-Agent", __defaultHTTPUserAgent()))
@ -1021,7 +1021,7 @@ def __setHTTPUserAgent():
conf.httpHeaders.append(("User-Agent", __userAgent)) conf.httpHeaders.append(("User-Agent", __userAgent))
logMsg = "fetched random HTTP User-Agent header from " logMsg = "fetched random HTTP User-Agent header from "
logMsg += "file '%s': %s" % (conf.userAgentsFile, __userAgent) logMsg += "file '%s': %s" % (paths.USER_AGENTS, __userAgent)
logger.info(logMsg) logger.info(logMsg)
def __setHTTPReferer(): def __setHTTPReferer():
@ -1129,9 +1129,6 @@ def __cleanupOptions():
conf.nullConnection = not conf.textOnly conf.nullConnection = not conf.textOnly
conf.threads = 4 if conf.threads < 4 else conf.threads conf.threads = 4 if conf.threads < 4 else conf.threads
if conf.realTest:
conf.userAgentsFile = paths.USER_AGENTS
def __setConfAttributes(): def __setConfAttributes():
""" """
This function set some needed attributes into the configuration This function set some needed attributes into the configuration

View File

@ -28,7 +28,7 @@ optDict = {
"cookieUrlencode": "boolean", "cookieUrlencode": "boolean",
"dropSetCookie": "boolean", "dropSetCookie": "boolean",
"agent": "string", "agent": "string",
"userAgentsFile": "string", "randomAgent": "boolean",
"referer": "string", "referer": "string",
"headers": "string", "headers": "string",
"aType": "string", "aType": "string",

View File

@ -78,9 +78,9 @@ def cmdLineParser():
request.add_option("--user-agent", dest="agent", request.add_option("--user-agent", dest="agent",
help="HTTP User-Agent header") help="HTTP User-Agent header")
request.add_option("-a", dest="userAgentsFile", request.add_option("--random-agent", dest="randomAgent",
help="Load a random HTTP User-Agent " action="store_true", default=False,
"header from file") help="Use randomly selected HTTP User-Agent header")
request.add_option("--referer", dest="referer", request.add_option("--referer", dest="referer",
help="HTTP Referer header") help="HTTP Referer header")

View File

@ -56,11 +56,12 @@ dropSetCookie = False
# HTTP User-Agent header. Useful to fake the HTTP User-Agent header value # HTTP User-Agent header. Useful to fake the HTTP User-Agent header value
# at each HTTP request # at each HTTP request
# sqlmap will also test for SQL injection on the HTTP User-Agent value. # sqlmap will also test for SQL injection on the HTTP User-Agent value.
agent = agent =
# Use randomly selected HTTP User-Agent header
# Valid: True or False
randomAgent = False
# Load a random HTTP User-Agent header from file
# Example: ./txt/user-agents.txt
userAgentsFile =
# HTTP Referer header. Useful to fake the HTTP Referer header value at # HTTP Referer header. Useful to fake the HTTP Referer header value at
# each HTTP request. # each HTTP request.