mirror of
https://github.com/sqlmapproject/sqlmap.git
synced 2025-03-25 12:24:18 +03:00
Bug fix (causing search problems)
This commit is contained in:
parent
6d942f92b5
commit
993372aae4
|
@ -444,10 +444,7 @@ def checkSqlInjection(place, parameter, value):
|
||||||
configUnion(test.request.char, test.request.columns)
|
configUnion(test.request.char, test.request.columns)
|
||||||
|
|
||||||
if not Backend.getIdentifiedDbms():
|
if not Backend.getIdentifiedDbms():
|
||||||
if not kb.heuristicDbms:
|
if kb.heuristicDbms in (None, UNKNOWN_DBMS):
|
||||||
kb.heuristicDbms = heuristicCheckDbms(injection) or UNKNOWN_DBMS
|
|
||||||
|
|
||||||
if kb.heuristicDbms == UNKNOWN_DBMS:
|
|
||||||
warnMsg = "using unescaped version of the test "
|
warnMsg = "using unescaped version of the test "
|
||||||
warnMsg += "because of zero knowledge of the "
|
warnMsg += "because of zero knowledge of the "
|
||||||
warnMsg += "back-end DBMS. You can try to "
|
warnMsg += "back-end DBMS. You can try to "
|
||||||
|
@ -552,6 +549,14 @@ def checkSqlInjection(place, parameter, value):
|
||||||
# Reset forced back-end DBMS value
|
# Reset forced back-end DBMS value
|
||||||
Backend.flushForcedDbms()
|
Backend.flushForcedDbms()
|
||||||
|
|
||||||
|
if len(injection.data) == 1 and PAYLOAD.TECHNIQUE.BOOLEAN in injection.data:
|
||||||
|
if not Backend.getIdentifiedDbms() and kb.heuristicDbms in (None, UNKNOWN_DBMS):
|
||||||
|
kb.heuristicDbms = heuristicCheckDbms(injection) or UNKNOWN_DBMS
|
||||||
|
|
||||||
|
if Backend.getIdentifiedDbms() or kb.heuristicDbms not in (None, UNKNOWN_DBMS):
|
||||||
|
#do you want to extend <- one time question!!!!!!!!!! (mirek)
|
||||||
|
pass
|
||||||
|
|
||||||
except KeyboardInterrupt:
|
except KeyboardInterrupt:
|
||||||
warnMsg = "user aborted during detection phase"
|
warnMsg = "user aborted during detection phase"
|
||||||
logger.warn(warnMsg)
|
logger.warn(warnMsg)
|
||||||
|
@ -594,7 +599,6 @@ def checkSqlInjection(place, parameter, value):
|
||||||
def heuristicCheckDbms(injection):
|
def heuristicCheckDbms(injection):
|
||||||
retVal = None
|
retVal = None
|
||||||
|
|
||||||
if not Backend.getIdentifiedDbms() and len(injection.data) == 1 and PAYLOAD.TECHNIQUE.BOOLEAN in injection.data:
|
|
||||||
pushValue(kb.injection)
|
pushValue(kb.injection)
|
||||||
kb.injection = injection
|
kb.injection = injection
|
||||||
randStr1, randStr2 = randomStr(), randomStr()
|
randStr1, randStr2 = randomStr(), randomStr()
|
||||||
|
|
Loading…
Reference in New Issue
Block a user