Compare commits

...

6 Commits
1.6.5 ... 1.6.6

Author SHA1 Message Date
Miroslav Stampar
6a57c8e61a Fixes #5113 2022-06-04 00:10:24 +02:00
Miroslav Stampar
7d07976969 Fixes #5096 2022-05-13 17:56:45 +02:00
Miroslav Stampar
9dc1344478 Patch for #5102 2022-05-13 17:50:14 +02:00
Miroslav Stampar
e8e7d66356 Patch for #5105 2022-05-13 17:45:17 +02:00
Miroslav Stampar
2038512518 Fixes #5091 2022-05-09 15:15:06 +02:00
Miroslav Stampar
184454ba8e Fixes #5093 2022-05-09 14:54:28 +02:00
6 changed files with 30 additions and 11 deletions

View File

@@ -5,12 +5,7 @@ Copyright (c) 2006-2022 sqlmap developers (https://sqlmap.org/)
See the file 'LICENSE' for copying permission
"""
from lib.core.data import logger
from lib.core.settings import IS_WIN
from lib.core.settings import PLATFORM
_readline = None
try:
from readline import *
import readline as _readline
@@ -21,6 +16,10 @@ except:
except:
pass
from lib.core.data import logger
from lib.core.settings import IS_WIN
from lib.core.settings import PLATFORM
if IS_WIN and _readline:
try:
_outputfile = _readline.GetOutputFile()

View File

@@ -20,7 +20,7 @@ from thirdparty import six
from thirdparty.six import unichr as _unichr
# sqlmap version (<major>.<minor>.<month>.<monthly commit>)
VERSION = "1.6.5.0"
VERSION = "1.6.6.0"
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)

View File

@@ -922,6 +922,8 @@ class Connect(object):
socket.setdefaulttimeout(conf.timeout)
# Dirty patch for Python3.11.0a7 (e.g. https://github.com/sqlmapproject/sqlmap/issues/5091)
if not sys.version.startswith("3.11."):
if conf.retryOn and re.search(conf.retryOn, page, re.I):
if threadData.retriesCount < conf.retries:
warnMsg = "forced retry of the request because of undesired page content"

View File

@@ -126,6 +126,8 @@ def crawl(target, post=None, cookie=None):
pass
except ValueError: # for non-valid links
pass
except AssertionError: # for invalid HTML
pass
finally:
if conf.forms:
threadData.shared.formsFound |= len(findPageForms(content, current, False, True)) > 0

View File

@@ -198,6 +198,10 @@ class HashDB(object):
threadData.inTransaction = False
except sqlite3.OperationalError:
pass
except sqlite3.ProgrammingError:
self.cursor = None
threadData.inTransaction = False
return
else:
return

View File

@@ -369,6 +369,12 @@ def main():
logger.critical(errMsg)
raise SystemExit
elif "AttributeError: unable to access item" in excMsg and re.search(r"3\.11\.\d+a", sys.version):
errMsg = "there is a known issue when sqlmap is run with ALPHA versions of Python 3.11. "
errMsg += "Please downgrade to some stable Python version"
logger.critical(errMsg)
raise SystemExit
elif all(_ in excMsg for _ in ("Resource temporarily unavailable", "os.fork()", "dictionaryAttack")):
errMsg = "there has been a problem while running the multiprocessing hash cracking. "
errMsg += "Please rerun with option '--threads=1'"
@@ -452,6 +458,12 @@ def main():
logger.critical(errMsg)
raise SystemExit
elif all(_ in excMsg for _ in ("PermissionError: [WinError 5]", "multiprocessing")):
errMsg = "there is a permission problem in running multiprocessing on this system. "
errMsg += "Please rerun with '--disable-multi'"
logger.critical(errMsg)
raise SystemExit
elif all(_ in excMsg for _ in ("No such file", "_'")):
errMsg = "corrupted installation detected ('%s'). " % excMsg.strip().split('\n')[-1]
errMsg += "You should retrieve the latest development version from official GitHub "