Minor update

This commit is contained in:
Miroslav Stampar 2019-08-26 16:46:21 +02:00
parent 32a4f6c32f
commit fecd830622
2 changed files with 22 additions and 15 deletions

View File

@ -1285,36 +1285,43 @@ def banner():
""" """
if not any(_ in sys.argv for _ in ("--version", "--api")) and not conf.get("disableBanner"): if not any(_ in sys.argv for _ in ("--version", "--api")) and not conf.get("disableBanner"):
_ = BANNER result = BANNER
if not IS_TTY or "--disable-coloring" in sys.argv: if not IS_TTY or "--disable-coloring" in sys.argv:
_ = clearColors(_) result = clearColors(result)
elif IS_WIN: elif IS_WIN:
coloramainit() coloramainit()
dataToStdout(_, forceOutput=True) dataToStdout(result, forceOutput=True)
def parsePasswordHash(password): def parsePasswordHash(password):
""" """
In case of Microsoft SQL Server password hash value is expanded to its components In case of Microsoft SQL Server password hash value is expanded to its components
>>> pushValue(kb.forcedDbms)
>>> kb.forcedDbms = DBMS.MSSQL
>>> "salt: 4086ceb6" in parsePasswordHash("0x01004086ceb60c90646a8ab9889fe3ed8e5c150b5460ece8425a")
True
>>> kb.forcedDbms = popValue()
""" """
blank = " " * 8 blank = " " * 8
if not password or password == " ": if isNoneValue(password) or password == " ":
password = NULL retVal = NULL
else:
retVal = password
if Backend.isDbms(DBMS.MSSQL) and password != NULL and isHexEncodedString(password): if Backend.isDbms(DBMS.MSSQL) and retVal != NULL and isHexEncodedString(password):
hexPassword = password retVal = "%s\n" % password
password = "%s\n" % hexPassword retVal += "%sheader: %s\n" % (blank, password[:6])
password += "%sheader: %s\n" % (blank, hexPassword[:6]) retVal += "%ssalt: %s\n" % (blank, password[6:14])
password += "%ssalt: %s\n" % (blank, hexPassword[6:14]) retVal += "%smixedcase: %s\n" % (blank, password[14:54])
password += "%smixedcase: %s\n" % (blank, hexPassword[14:54])
if not Backend.isVersionWithin(("2005", "2008")): if password[54:]:
password += "%suppercase: %s" % (blank, hexPassword[54:]) retVal += "%suppercase: %s" % (blank, password[54:])
return password return retVal
def cleanQuery(query): def cleanQuery(query):
""" """

View File

@ -18,7 +18,7 @@ from lib.core.enums import OS
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.3.8.23" VERSION = "1.3.8.24"
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)