From 779db7cbc382d655d1178dd0b06ed49813843a95 Mon Sep 17 00:00:00 2001 From: Miroslav Stampar Date: Thu, 22 Jan 2015 09:17:45 +0100 Subject: [PATCH] Minor enhancement --- lib/core/common.py | 10 +++++++++- lib/core/option.py | 10 +++++++--- 2 files changed, 16 insertions(+), 4 deletions(-) diff --git a/lib/core/common.py b/lib/core/common.py index dc3b6cbfc..6578f6bd6 100755 --- a/lib/core/common.py +++ b/lib/core/common.py @@ -582,10 +582,15 @@ def paramToDict(place, parameters=None): warnMsg += "so sqlmap could be able to run properly" logger.warn(warnMsg) - message = "are you sure you want to continue? [y/N] " + message = "are you really sure that you want to continue (sqlmap could have problems)? [y/N] " test = readInput(message, default="N") if test[0] not in ("y", "Y"): raise SqlmapSilentQuitException + else: + original = [_ for _ in string.ascii_letters + string.digits] + shuffled = list(original) + random.shuffle(shuffled) + kb.easterEgg = dict(_ for _ in zip(original, shuffled)) elif not _: warnMsg = "provided value for parameter '%s' is empty. " % parameter warnMsg += "Please, always use only valid parameter values " @@ -824,6 +829,9 @@ def dataToStdout(data, forceOutput=False, bold=False, content_type=None, status= else: message = data + if kb.easterEgg: + message = "".join(kb.easterEgg.get(_, _) for _ in message) + if hasattr(conf, "api"): sys.stdout.write(message, status, content_type) else: diff --git a/lib/core/option.py b/lib/core/option.py index 860eddddd..d6eed56c4 100644 --- a/lib/core/option.py +++ b/lib/core/option.py @@ -477,11 +477,14 @@ def _adjustLoggingFormatter(): return def format(record): - _ = boldifyMessage(FORMATTER._format(record)) + message = FORMATTER._format(record) + if kb.easterEgg: + message = "".join(kb.easterEgg.get(_, _) for _ in message) + message = boldifyMessage(message) if kb.prependFlag: - _ = "\n%s" % _ + message = "\n%s" % message kb.prependFlag = False - return _ + return message FORMATTER._format = FORMATTER.format FORMATTER.format = format @@ -1712,6 +1715,7 @@ def _setKnowledgeBaseAttributes(flushAll=True): kb.followSitemapRecursion = None kb.forcedDbms = None kb.forcePartialUnion = False + kb.easterEgg = None kb.headersFp = {} kb.heuristicDbms = None kb.heuristicMode = False