mirror of
https://github.com/sqlmapproject/sqlmap.git
synced 2024-11-22 01:26:42 +03:00
Implements option --time-limit (#5502)
This commit is contained in:
parent
c629374858
commit
e0ec2fcdbd
|
@ -16,6 +16,7 @@ import codecs
|
||||||
import json
|
import json
|
||||||
import re
|
import re
|
||||||
import sys
|
import sys
|
||||||
|
import time
|
||||||
|
|
||||||
from lib.core.bigarray import BigArray
|
from lib.core.bigarray import BigArray
|
||||||
from lib.core.compat import xrange
|
from lib.core.compat import xrange
|
||||||
|
@ -334,6 +335,10 @@ def getUnicode(value, encoding=None, noneToNull=False):
|
||||||
True
|
True
|
||||||
"""
|
"""
|
||||||
|
|
||||||
|
# Best position for --time-limit mechanism
|
||||||
|
if conf.get("timeLimit") and kb.get("startTime") and (time.time() - kb.startTime > conf.timeLimit):
|
||||||
|
raise SystemExit
|
||||||
|
|
||||||
if noneToNull and value is None:
|
if noneToNull and value is None:
|
||||||
return NULL
|
return NULL
|
||||||
|
|
||||||
|
|
|
@ -2171,6 +2171,7 @@ def _setKnowledgeBaseAttributes(flushAll=True):
|
||||||
kb.smokeMode = False
|
kb.smokeMode = False
|
||||||
kb.reduceTests = None
|
kb.reduceTests = None
|
||||||
kb.sslSuccess = False
|
kb.sslSuccess = False
|
||||||
|
kb.startTime = time.time()
|
||||||
kb.stickyDBMS = False
|
kb.stickyDBMS = False
|
||||||
kb.suppressResumeInfo = False
|
kb.suppressResumeInfo = False
|
||||||
kb.tableFrom = None
|
kb.tableFrom = None
|
||||||
|
|
|
@ -239,6 +239,7 @@ optDict = {
|
||||||
"skipWaf": "boolean",
|
"skipWaf": "boolean",
|
||||||
"testFilter": "string",
|
"testFilter": "string",
|
||||||
"testSkip": "string",
|
"testSkip": "string",
|
||||||
|
"timeLimit": "float",
|
||||||
"webRoot": "string",
|
"webRoot": "string",
|
||||||
},
|
},
|
||||||
|
|
||||||
|
|
|
@ -20,7 +20,7 @@ from thirdparty import six
|
||||||
from thirdparty.six import unichr as _unichr
|
from thirdparty.six import unichr as _unichr
|
||||||
|
|
||||||
# sqlmap version (<major>.<minor>.<month>.<monthly commit>)
|
# sqlmap version (<major>.<minor>.<month>.<monthly commit>)
|
||||||
VERSION = "1.7.9.2"
|
VERSION = "1.7.9.3"
|
||||||
TYPE = "dev" if VERSION.count('.') > 2 and VERSION.split('.')[-1] != '0' else "stable"
|
TYPE = "dev" if VERSION.count('.') > 2 and VERSION.split('.')[-1] != '0' else "stable"
|
||||||
TYPE_COLORS = {"dev": 33, "stable": 90, "pip": 34}
|
TYPE_COLORS = {"dev": 33, "stable": 90, "pip": 34}
|
||||||
VERSION_STRING = "sqlmap/%s#%s" % ('.'.join(VERSION.split('.')[:-1]) if VERSION.count('.') > 2 and VERSION.split('.')[-1] == '0' else VERSION, TYPE)
|
VERSION_STRING = "sqlmap/%s#%s" % ('.'.join(VERSION.split('.')[:-1]) if VERSION.count('.') > 2 and VERSION.split('.')[-1] == '0' else VERSION, TYPE)
|
||||||
|
|
|
@ -736,6 +736,9 @@ def cmdLineParser(argv=None):
|
||||||
general.add_argument("--test-skip", dest="testSkip",
|
general.add_argument("--test-skip", dest="testSkip",
|
||||||
help="Skip tests by payloads and/or titles (e.g. BENCHMARK)")
|
help="Skip tests by payloads and/or titles (e.g. BENCHMARK)")
|
||||||
|
|
||||||
|
general.add_argument("--time-limit", dest="timeLimit", type=float,
|
||||||
|
help="Run with a time limit in seconds (e.g. 3600)")
|
||||||
|
|
||||||
general.add_argument("--web-root", dest="webRoot",
|
general.add_argument("--web-root", dest="webRoot",
|
||||||
help="Web server document root directory (e.g. \"/var/www\")")
|
help="Web server document root directory (e.g. \"/var/www\")")
|
||||||
|
|
||||||
|
|
|
@ -820,12 +820,15 @@ skipWaf = False
|
||||||
# Default: sqlmap
|
# Default: sqlmap
|
||||||
tablePrefix = sqlmap
|
tablePrefix = sqlmap
|
||||||
|
|
||||||
# Select tests by payloads and/or titles (e.g. ROW)
|
# Select tests by payloads and/or titles (e.g. ROW).
|
||||||
testFilter =
|
testFilter =
|
||||||
|
|
||||||
# Skip tests by payloads and/or titles (e.g. BENCHMARK)
|
# Skip tests by payloads and/or titles (e.g. BENCHMARK).
|
||||||
testSkip =
|
testSkip =
|
||||||
|
|
||||||
|
# Run with a time limit in seconds (e.g. 3600).
|
||||||
|
timeLimit =
|
||||||
|
|
||||||
# Web server document root directory (e.g. "/var/www").
|
# Web server document root directory (e.g. "/var/www").
|
||||||
webRoot =
|
webRoot =
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue
Block a user