Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Commit 383316f

Browse files
committed
Fixing issues caused by 9ad1d12 (better approach)
1 parent 8806ce7 commit 383316f

2 files changed

Lines changed: 6 additions & 2 deletions

File tree

lib/core/option.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1848,7 +1848,7 @@ def _setKnowledgeBaseAttributes(flushAll=True):
18481848
kb.permissionFlag = False
18491849
kb.postHint = None
18501850
kb.postSpaceToPlus = False
1851-
kb.postUrlEncode = False
1851+
kb.postUrlEncode = True
18521852
kb.prependFlag = False
18531853
kb.processResponseCounter = 0
18541854
kb.previousMethod = None

lib/core/target.py

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -134,6 +134,7 @@ def process(match, repl):
134134
if test and test[0] in ("q", "Q"):
135135
raise SqlmapUserQuitException
136136
elif test[0] not in ("n", "N"):
137+
conf.data = getattr(conf.data, UNENCODED_ORIGINAL_VALUE, conf.data)
137138
conf.data = conf.data.replace(CUSTOM_INJECTION_MARK_CHAR, ASTERISK_MARKER)
138139
conf.data = re.sub(r'("(?P<name>[^"]+)"\s*:\s*"[^"]+)"', functools.partial(process, repl=r'\g<1>%s"' % CUSTOM_INJECTION_MARK_CHAR), conf.data)
139140
conf.data = re.sub(r'("(?P<name>[^"]+)"\s*:\s*)(-?\d[\d\.]*\b)', functools.partial(process, repl=r'\g<0>%s' % CUSTOM_INJECTION_MARK_CHAR), conf.data)
@@ -152,6 +153,7 @@ def process(match, repl):
152153
if test and test[0] in ("q", "Q"):
153154
raise SqlmapUserQuitException
154155
elif test[0] not in ("n", "N"):
156+
conf.data = getattr(conf.data, UNENCODED_ORIGINAL_VALUE, conf.data)
155157
conf.data = conf.data.replace(CUSTOM_INJECTION_MARK_CHAR, ASTERISK_MARKER)
156158
conf.data = re.sub(r"('(?P<name>[^']+)'\s*:\s*'[^']+)'", functools.partial(process, repl=r"\g<1>%s'" % CUSTOM_INJECTION_MARK_CHAR), conf.data)
157159
conf.data = re.sub(r"('(?P<name>[^']+)'\s*:\s*)(-?\d[\d\.]*\b)", functools.partial(process, repl=r"\g<0>%s" % CUSTOM_INJECTION_MARK_CHAR), conf.data)
@@ -175,6 +177,7 @@ def process(match, repl):
175177
if test and test[0] in ("q", "Q"):
176178
raise SqlmapUserQuitException
177179
elif test[0] not in ("n", "N"):
180+
conf.data = getattr(conf.data, UNENCODED_ORIGINAL_VALUE, conf.data)
178181
conf.data = conf.data.replace(CUSTOM_INJECTION_MARK_CHAR, ASTERISK_MARKER)
179182
conf.data = re.sub(r"(<(?P<name>[^>]+)( [^<]*)?>)([^<]+)(</\2)", functools.partial(process, repl=r"\g<1>\g<4>%s\g<5>" % CUSTOM_INJECTION_MARK_CHAR), conf.data)
180183
kb.postHint = POST_HINT.SOAP if "soap" in conf.data.lower() else POST_HINT.XML
@@ -186,6 +189,7 @@ def process(match, repl):
186189
if test and test[0] in ("q", "Q"):
187190
raise SqlmapUserQuitException
188191
elif test[0] not in ("n", "N"):
192+
conf.data = getattr(conf.data, UNENCODED_ORIGINAL_VALUE, conf.data)
189193
conf.data = conf.data.replace(CUSTOM_INJECTION_MARK_CHAR, ASTERISK_MARKER)
190194
conf.data = re.sub(r"(?si)((Content-Disposition[^\n]+?name\s*=\s*[\"'](?P<name>[^\n]+?)[\"']).+?)(((\r)?\n)+--)", functools.partial(process, repl=r"\g<1>%s\g<4>" % CUSTOM_INJECTION_MARK_CHAR), conf.data)
191195
kb.postHint = POST_HINT.MULTIPART
@@ -683,7 +687,7 @@ def initTargetEnv():
683687
class _(unicode):
684688
pass
685689

686-
kb.postUrlEncode = False
690+
kb.postUrlEncode = True
687691

688692
for key, value in conf.httpHeaders:
689693
if key.upper() == HTTP_HEADER.CONTENT_TYPE.upper():

0 commit comments

Comments
 (0)