From cee9ff78854150262a910d22682db0c513519db1 Mon Sep 17 00:00:00 2001 From: Miroslav Stampar Date: Wed, 14 Mar 2012 11:23:30 +0000 Subject: [PATCH] proper parsing of content in partial union technique --- lib/techniques/union/use.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/lib/techniques/union/use.py b/lib/techniques/union/use.py index 8d7010815..6d0ed4a67 100644 --- a/lib/techniques/union/use.py +++ b/lib/techniques/union/use.py @@ -302,7 +302,9 @@ def unionUse(expression, unpack=True, dump=False): if output: if all(map(lambda x: x in output, [kb.chars.start, kb.chars.stop])): - items = extractRegexResult(r'%s(?P.*?)%s' % (kb.chars.start, kb.chars.stop), output, re.DOTALL | re.IGNORECASE).split(kb.chars.delimiter) + #items = extractRegexResult(r'%s(?P.*?)%s' % (kb.chars.start, kb.chars.stop), output, re.DOTALL | re.IGNORECASE).split(kb.chars.delimiter) + items = parseUnionPage(output) + items = items[0] if isinstance(items, list) and len(items) == 1 else items kb.locks.value.acquire() threadData.shared.value.append(items[0] if len(items) == 1 else items) kb.locks.value.release()