diff --git a/lib/core/common.py b/lib/core/common.py index 36e138475..811ce5759 100644 --- a/lib/core/common.py +++ b/lib/core/common.py @@ -4547,6 +4547,8 @@ def decodeDbmsHexValue(value, raw=False): >>> decodeDbmsHexValue('3132332031') == u'123 1' True + >>> decodeDbmsHexValue('313233203') == u'123 ?' + True >>> decodeDbmsHexValue(['0x31', '0x32']) == [u'1', u'2'] True """ @@ -4568,11 +4570,13 @@ def decodeDbmsHexValue(value, raw=False): retVal = retVal.decode("utf-16-le") except UnicodeDecodeError: pass + elif Backend.getIdentifiedDbms() in (DBMS.HSQLDB, DBMS.H2): try: retVal = retVal.decode("utf-16-be") except UnicodeDecodeError: pass + if not isinstance(retVal, six.text_type): retVal = getUnicode(retVal, conf.encoding or UNICODE_ENCODING) diff --git a/lib/core/settings.py b/lib/core/settings.py index b99358e03..e4e1799e4 100644 --- a/lib/core/settings.py +++ b/lib/core/settings.py @@ -18,7 +18,7 @@ from lib.core.enums import OS from thirdparty.six import unichr as _unichr # sqlmap version (...) -VERSION = "1.3.5.94" +VERSION = "1.3.5.95" 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)