diff --git a/lib/core/settings.py b/lib/core/settings.py index 460895273..a32ca3e8f 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.5.1.9" +VERSION = "1.5.1.10" 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) diff --git a/lib/request/connect.py b/lib/request/connect.py index 18beb1902..e228b3667 100644 --- a/lib/request/connect.py +++ b/lib/request/connect.py @@ -6,6 +6,7 @@ See the file 'LICENSE' for copying permission """ import binascii +import inspect import logging import os import random @@ -13,6 +14,7 @@ import re import socket import string import struct +import sys import time import traceback @@ -145,6 +147,10 @@ class Connect(object): @staticmethod def _getPageProxy(**kwargs): + if (len(inspect.stack()) > sys.getrecursionlimit() // 2): # Note: https://github.com/sqlmapproject/sqlmap/issues/4525 + warnMsg = "unable to connect to the target URL" + raise SqlmapConnectionException(warnMsg) + try: return Connect.getPage(**kwargs) except RuntimeError: