mirror of
https://github.com/sqlmapproject/sqlmap.git
synced 2025-03-03 11:45:46 +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):
|
||||
injection.dbms = Backend.setDbms(dValue)
|
||||
else:
|
||||
Backend.forceDbms(dValue[0])
|
||||
Backend.forceDbms(dValue[0], True)
|
||||
elif dKey == "dbms_version" and injection.dbms_version is None:
|
||||
injection.dbms_version = Backend.setVersion(dValue)
|
||||
elif dKey == "os" and injection.os is None:
|
||||
|
@ -497,6 +497,8 @@ def checkSqlInjection(place, parameter, value):
|
|||
# Reset forced back-end DBMS value
|
||||
Backend.flushForcedDbms()
|
||||
|
||||
Backend.flushForcedDbms(True)
|
||||
|
||||
# Return the injection object
|
||||
if injection.place is not None and injection.parameter is not None:
|
||||
injection = checkFalsePositives(injection)
|
||||
|
|
|
@ -297,12 +297,15 @@ class Backend:
|
|||
logger.error("invalid format of versionsList")
|
||||
|
||||
@staticmethod
|
||||
def forceDbms(dbms):
|
||||
kb.misc.forcedDbms = aliasToDbmsEnum(dbms)
|
||||
def forceDbms(dbms, sticky=False):
|
||||
if not kb.misc.stickyFlag:
|
||||
kb.misc.forcedDbms = aliasToDbmsEnum(dbms)
|
||||
kb.misc.stickyFlag = sticky
|
||||
|
||||
@staticmethod
|
||||
def flushForcedDbms():
|
||||
kb.misc.forcedDbms = None
|
||||
def flushForcedDbms(force=False):
|
||||
if not kb.misc.stickyFlag or force:
|
||||
kb.misc.forcedDbms = None
|
||||
|
||||
@staticmethod
|
||||
def setOs(os):
|
||||
|
|
|
@ -1403,6 +1403,7 @@ def __setKnowledgeBaseAttributes(flushAll=True):
|
|||
kb.misc.space = ":%s:" % randomStr(length=1, lowercase=True)
|
||||
kb.misc.dollar = ":%s:" % randomStr(length=1, lowercase=True)
|
||||
kb.misc.forcedDbms = None
|
||||
kb.misc.stickyFlag = False
|
||||
|
||||
if flushAll:
|
||||
kb.keywords = set(getFileItems(paths.SQL_KEYWORDS))
|
||||
|
|
Loading…
Reference in New Issue
Block a user