From 64cc2588f109abe9b354b5f7b5e0d70989c8682c Mon Sep 17 00:00:00 2001 From: Miroslav Stampar Date: Wed, 8 Dec 2010 12:49:26 +0000 Subject: [PATCH] now resume is available for time-based blinds too --- lib/core/settings.py | 2 ++ lib/request/inject.py | 5 +++++ 2 files changed, 7 insertions(+) diff --git a/lib/core/settings.py b/lib/core/settings.py index cd2a27009..f6f19a995 100644 --- a/lib/core/settings.py +++ b/lib/core/settings.py @@ -48,6 +48,8 @@ DUMP_STOP_MARKER = "__STOP__" PAYLOAD_DELIMITER = "\x00" +MIN_TIME_RESPONSES = 10 + # System variables IS_WIN = subprocess.mswindows # The name of the operating system dependent module imported. The following diff --git a/lib/request/inject.py b/lib/request/inject.py index 0f0bdf544..530d433f6 100644 --- a/lib/request/inject.py +++ b/lib/request/inject.py @@ -29,6 +29,7 @@ from lib.core.data import logger from lib.core.data import queries from lib.core.enums import DBMS from lib.core.exception import sqlmapNotVulnerableException +from lib.core.settings import MIN_TIME_RESPONSES from lib.request.connect import Connect as Request from lib.request.direct import direct from lib.request.templates import getPageTemplate @@ -414,6 +415,10 @@ def getValue(expression, blind=True, inband=True, error=True, time=True, fromUse if time and kb.timeTest and not value: kb.technique = 5 + + while len(kb.responseTimes) < MIN_TIME_RESPONSES: + _ = Request.queryPage(content=True) + value = __goInferenceProxy(expression, fromUser, expected, batch, resumeValue, unpack, charsetType, firstChar, lastChar) kb.unionNegative = oldParamNegative