diff --git a/lib/controller/checks.py b/lib/controller/checks.py index 3bdbc471a..ff4a57fb3 100644 --- a/lib/controller/checks.py +++ b/lib/controller/checks.py @@ -627,7 +627,7 @@ def checkSqlInjection(place, parameter, value): # A real boolean injection's TRUE condition reproduces the normal page, so this # status-code asymmetry is the classic false positive - refuse it here. if not kb.negativeLogic and trueCode in WAF_BLOCK_HTTP_CODES and (falseCode or 0) < 400 and (kb.heuristicCode or 200) < 400: - warnMsg = "%sparameter '%s' TRUE/FALSE responses differ only by a blocked HTTP %d vs %d status, " % ("%s " % paramType if paramType != parameter else "", parameter, trueCode, falseCode) + warnMsg = "%sparameter '%s' TRUE/FALSE responses differ only by a blocked HTTP %d vs %s status, " % ("%s " % paramType if paramType != parameter else "", parameter, trueCode, falseCode) warnMsg += "which is characteristic of a WAF/IPS block rather than a SQL injection; skipping as a likely false positive" logger.warning(warnMsg) injectable = False diff --git a/lib/core/settings.py b/lib/core/settings.py index 166194b23..34df6df3a 100644 --- a/lib/core/settings.py +++ b/lib/core/settings.py @@ -19,7 +19,7 @@ from lib.core.enums import OS from thirdparty import six # sqlmap version (...) -VERSION = "1.10.10.27" +VERSION = "1.10.10.28" TYPE = "dev" if VERSION.count('.') > 2 and VERSION.split('.')[-1] != '0' else "stable" 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)