mirror of
https://github.com/sqlmapproject/sqlmap.git
synced 2025-05-10 02:33:44 +03:00
proper fix related to the last commit
This commit is contained in:
parent
fd57aae779
commit
8aa5625cd0
|
@ -440,7 +440,7 @@ def checkSqlInjection(place, parameter, value):
|
||||||
if not isinstance(dValue, list):
|
if not isinstance(dValue, list):
|
||||||
injection.dbms = Backend.setDbms(dValue)
|
injection.dbms = Backend.setDbms(dValue)
|
||||||
else:
|
else:
|
||||||
Backend.forceDbms(dValue[0])
|
Backend.forceDbms(dValue[0], True)
|
||||||
elif dKey == "dbms_version" and injection.dbms_version is None:
|
elif dKey == "dbms_version" and injection.dbms_version is None:
|
||||||
injection.dbms_version = Backend.setVersion(dValue)
|
injection.dbms_version = Backend.setVersion(dValue)
|
||||||
elif dKey == "os" and injection.os is None:
|
elif dKey == "os" and injection.os is None:
|
||||||
|
@ -497,6 +497,8 @@ def checkSqlInjection(place, parameter, value):
|
||||||
# Reset forced back-end DBMS value
|
# Reset forced back-end DBMS value
|
||||||
Backend.flushForcedDbms()
|
Backend.flushForcedDbms()
|
||||||
|
|
||||||
|
Backend.flushForcedDbms(True)
|
||||||
|
|
||||||
# Return the injection object
|
# Return the injection object
|
||||||
if injection.place is not None and injection.parameter is not None:
|
if injection.place is not None and injection.parameter is not None:
|
||||||
injection = checkFalsePositives(injection)
|
injection = checkFalsePositives(injection)
|
||||||
|
|
|
@ -297,12 +297,15 @@ class Backend:
|
||||||
logger.error("invalid format of versionsList")
|
logger.error("invalid format of versionsList")
|
||||||
|
|
||||||
@staticmethod
|
@staticmethod
|
||||||
def forceDbms(dbms):
|
def forceDbms(dbms, sticky=False):
|
||||||
kb.misc.forcedDbms = aliasToDbmsEnum(dbms)
|
if not kb.misc.stickyFlag:
|
||||||
|
kb.misc.forcedDbms = aliasToDbmsEnum(dbms)
|
||||||
|
kb.misc.stickyFlag = sticky
|
||||||
|
|
||||||
@staticmethod
|
@staticmethod
|
||||||
def flushForcedDbms():
|
def flushForcedDbms(force=False):
|
||||||
kb.misc.forcedDbms = None
|
if not kb.misc.stickyFlag or force:
|
||||||
|
kb.misc.forcedDbms = None
|
||||||
|
|
||||||
@staticmethod
|
@staticmethod
|
||||||
def setOs(os):
|
def setOs(os):
|
||||||
|
|
|
@ -1403,6 +1403,7 @@ def __setKnowledgeBaseAttributes(flushAll=True):
|
||||||
kb.misc.space = ":%s:" % randomStr(length=1, lowercase=True)
|
kb.misc.space = ":%s:" % randomStr(length=1, lowercase=True)
|
||||||
kb.misc.dollar = ":%s:" % randomStr(length=1, lowercase=True)
|
kb.misc.dollar = ":%s:" % randomStr(length=1, lowercase=True)
|
||||||
kb.misc.forcedDbms = None
|
kb.misc.forcedDbms = None
|
||||||
|
kb.misc.stickyFlag = False
|
||||||
|
|
||||||
if flushAll:
|
if flushAll:
|
||||||
kb.keywords = set(getFileItems(paths.SQL_KEYWORDS))
|
kb.keywords = set(getFileItems(paths.SQL_KEYWORDS))
|
||||||
|
|
Loading…
Reference in New Issue
Block a user