From d49e13bff45a101da8ad5f8da11e7715835cbe6a Mon Sep 17 00:00:00 2001 From: mgeeky Date: Fri, 5 Nov 2021 16:45:15 +0100 Subject: [PATCH] Added support for HTML output --- README.md | 9 +- decode-spam-headers.py | 443 ++++++++++++++++++++++++++++++++++------- img/5.png | Bin 0 -> 70612 bytes 3 files changed, 377 insertions(+), 75 deletions(-) create mode 100644 img/5.png diff --git a/README.md b/README.md index 1867dd4..e2b3b31 100644 --- a/README.md +++ b/README.md @@ -36,6 +36,9 @@ In order to embellish your Phishing HTML code before sending it to your client, ![4.png](img/4.png) +- Report can be generated into a good-looking HTML: + +![5.png](img/5.png) ### Processed headers @@ -274,7 +277,7 @@ Help: ``` PS> py .\decode-spam-headers.py --help -usage: decode-spam-headers.py [options] +usage: decode-spam-headers.py [options] optional arguments: -h, --help show this help message and exit @@ -285,7 +288,7 @@ Required arguments: Options: -o OUTFILE, --outfile OUTFILE Output file with report - -f {json,text}, --format {json,text} + -f {json,text,html}, --format {json,text,html} Analysis report format. JSON, text. Default: text -N, --nocolor Dont use colors in text output. -v, --verbose Verbose mode. @@ -298,6 +301,7 @@ Tests: -e tests, --exclude-tests tests Comma-separated list of test IDs to skip. Ex. --exclude-tests 1,3,7 -r, --resolve Resolve IPv4 addresses / Domain names. + -R, --dont-resolve Do not resolve anything. -a, --decode-all Decode all =?us-ascii?Q? mail encoded messages and print their contents. ``` @@ -652,7 +656,6 @@ ANALYSIS: ### Known Issues -- HTML formatted output (when used with colors) is not working at the moment. Need to rewrite loggic that translates ANSI colors into HTML colors. - `getOffice365TenantNameById(tenantID)` method is not yet finished, I know of a few ways to map Office365 Tenant GUID into Tenant Name but couldn't yet establish a stable way to do so. - `Authentication-Results` header is not yet completely parsed - gotta include `reason` processing and other fields according to [Microsoft documentation](https://docs.microsoft.com/en-us/microsoft-365/security/office-365-security/anti-spam-message-headers?view=o365-worldwide) diff --git a/decode-spam-headers.py b/decode-spam-headers.py index de448b2..5fb4c7f 100644 --- a/decode-spam-headers.py +++ b/decode-spam-headers.py @@ -201,6 +201,18 @@ class Logger: 'grey': 38, } + html_colors_map = { + 'background':'rgb(40, 44, 52)', + 'grey': 'rgb(132, 139, 149)', + 'cyan' : 'rgb(86, 182, 194)', + 'blue' : 'rgb(97, 175, 239)', + 'red' : 'rgb(224, 108, 117)', + 'magenta' : 'rgb(198, 120, 221)', + 'yellow' : 'rgb(229, 192, 123)', + 'white' : 'rgb(220, 223, 228)', + 'green' : 'rgb(108, 135, 94)', + } + colors_dict = { 'error': colors_map['red'], 'trace': colors_map['magenta'], @@ -218,37 +230,66 @@ class Logger: @staticmethod def with_color(c, s): - return "\x1b[%dm%s\x1b[0m" % (c, s) + #return "\x1b[%dm%s\x1b[0m" % (c, s) + return f'__COLOR_{c}__|{s}|__END_COLOR__' @staticmethod - def replaceColorToHtml(s): - out = '' - i = 0 + def replaceColors(s, colorizingFunc): + pos = 0 - while i < len(s): - if s[i] == '\x1b' and s[i+1] == '[' and s[i+2] != '0': - c = int(s[i+2:i+4]) + while pos < len(s): + if s[pos:].startswith('__COLOR_'): + pos += len('__COLOR_') + pos1 = s[pos:].find('__|') + + assert pos1 != -1, "Output colors mismatch - could not find pos of end of color number!" + + c = int(s[pos:pos+pos1]) + pos += pos1 + len('__|') + pos2 = s[pos:].find('|__END_COLOR__') + + assert pos2 != -1, "Output colors mismatch - could not find end of color marker!" + + txt = s[pos:pos+pos2] + pos += pos2 + len('|__END_COLOR__') + + patt = f'__COLOR_{c}__|{txt}|__END_COLOR__' + + colored = colorizingFunc(c, txt) + + assert len(colored) > 0, f"Could not strip colors from phrase: ({patt})!" + + s = s.replace(patt, colored) pos = 0 - while pos < len(s): - if s[pos] == '\x1b' and s[pos+1] == '[' and s[pos+2] == '0' and s[pos+3] == 'm': - break - pos += 1 - - txt = s[i+5:pos] - i = i + 5 + pos + 4 - - for k, v in Logger.colors_map.items(): - if v == c: - out += f'

{escape(txt)}

' - break - continue - out += s[i] - i += 1 + pos += 1 + + return s + + @staticmethod + def noColors(s): + return Logger.replaceColors(s, lambda c, txt: txt) return out + def ansiColors(s): + return Logger.replaceColors(s, lambda c, txt: f'\x1b[{c}m{txt}\x1b[0m') + + @staticmethod + def htmlColors(s): + def get_col(c, txt): + text = escape(txt) + + for k, v in Logger.colors_map.items(): + if v == c: + htmlCol = Logger.html_colors_map[k] + return f'{text}' + + return text + + return Logger.replaceColors(s, get_col) + def colored(self, txt, col): if self.options['nocolor']: return txt @@ -305,19 +346,29 @@ class Logger: if 'force_stdout' in args: fd = sys.stdout + to_write = '' + if type(fd) == str: - with open(fd, 'a') as f: - prefix2 = '' - if mode: - prefix2 = '%s' % (mode.upper()) - f.write(prefix2 + txt + nl) - f.flush() + prefix2 = '' + if mode: + prefix2 = '%s' % (mode.upper()) + prefix2 + txt + nl else: if args['nocolor']: - fd.write(prefix + txt + nl) + to_write = prefix + txt + nl else: - fd.write(prefix + Logger.with_color(col, txt) + nl) + to_write = prefix + Logger.with_color(col, txt) + nl + + to_write = Logger.ansiColors(to_write) + + if type(fd) == str: + with open(fd, 'a') as f: + f.write(to_write) + f.flush() + + else: + fd.write(to_write) # Info shall be used as an ordinary logging facility, for every desired output. def info(self, txt, forced = False, **kwargs): @@ -859,8 +910,8 @@ class SMTPHeadersAnalysis: } ATP_Message_Properties = { - 'SA' : 'Safe Attachments Protection', - 'SL' : 'Safe Links Protection', + 'SA' : 'Safe Attachments', + 'SL' : 'Safe Links', } TLCOOBClassifiers = { @@ -959,6 +1010,78 @@ class SMTPHeadersAnalysis: 'JunkEmail' : logger.colored('Mail marked as Junk and moved to Junk folder', 'red'), } ), + + 'abwl' : ( + '"AB" Whitelist (?)', + { + '0' : 'Not whitelisted (?)', + '1' : 'Whitelisted (?)', + } + ), + + 'wl' : ( + 'Message was whitelisted (?)', + { + '0' : 'Message was not whitelisted', + '1' : logger.colored('Message was whitelisted', 'green'), + } + ), + + 'pcwl' : ( + '"PC" Whitelist (?)', + { + '0' : 'Not whitelisted (?)', + '1' : 'Whitelisted (?)', + } + ), + + 'kl' : ( + 'Unknown', + { + '0' : 'Unknown', + '1' : 'Unknown', + } + ), + + 'iwl' : ( + '"I" Whitelist (?)', + { + '0' : 'Not whitelisted (?)', + '1' : 'Whitelisted (?)', + } + ), + + 'dwl' : ( + 'Domain-based Whitelist', + { + '0' : 'Sender\'s Domain was not whitelisted', + '1' : logger.colored('Sender\'s Domain was whitelisted', 'green'), + } + ), + + 'dkl' : ( + 'Unknown', + { + '0' : 'Unknown', + '1' : 'Unknown', + } + ), + + 'rwl' : ( + '"R" Whitelist (?)', + { + '0' : 'Not whitelisted (?)', + '1' : 'Whitelisted (?)', + } + ), + + 'ex' : ( + 'Unknown', + { + '0' : 'Unknown', + '1' : 'Unknown', + } + ), } @@ -1554,7 +1677,7 @@ class SMTPHeadersAnalysis: ('32', 'MS Defender ATP Message Properties', self.testATPMessageProperties), ('33', 'Message Feedback Loop', self.testMSFBL), ('34', 'End-to-End Latency - Message Delivery Time', self.testTransportEndToEndLatency), - ('35', 'X-MS-Oob-TLC-OOBClassifiers', self.testTLCOObClasifiers), + #('35', 'X-MS-Oob-TLC-OOBClassifiers', self.testTLCOObClasifiers), ('36', 'X-IP-Spam-Verdict', self.testXIPSpamVerdict), ('37', 'X-Amp-Result', self.testXAmpResult), ('38', 'X-IronPort-RemoteIP', self.testXIronPortRemoteIP), @@ -2691,17 +2814,20 @@ Results will be unsound. Make sure you have pasted your headers with correct spa def testSuspiciousWordsInHeaders(self): outputs = [] - headers = set({ - 'From', 'To', 'Subject', 'Topic', - }) + headers = set() + + skip_headers = ( + 'authentication-results', + 'received-spf', + ) for (num, header, value) in self.headers: - #if header.lower().endswith('-to'): headers.add(header) - #if header.lower().endswith('-topic'): headers.add(header) - #if header.lower().endswith('-subject'): headers.add(header) headers.add(header.lower()) for header in headers: + if header.lower() in skip_headers: + continue + (num, hdr, value) = self.getHeader(header) if num != -1: outputs.append(self._findSuspiciousWords(num, hdr, value)) @@ -5346,7 +5472,7 @@ https://c7solutions.com/2020/09/mail-flow-to-the-correct-exchange-online-connect vvv = self.logger.colored(value, 'magenta') self.securityAppliances.add(value) - result = f'- X-Mailer header was present and contained value:\n\t- {vvv}\n' + result = f'- {self.logger.colored("X-Mailer","yellow")} header was present and contained value:\n\t- {vvv}\n' return { 'header' : header, @@ -5836,6 +5962,13 @@ def opts(argv): def printOutput(out): output = '' + testStart = '-----------------------------------------' + testEnd = '' + + if options['format'] == 'html': + testStart = '>>>>>>>>>>>>>>>>>>>>>>' + testEnd = '<<<<<<<<<<<<<<<<<<<<<<' + if options['format'] == 'text' or options['format'] == 'html': width = 100 num = 0 @@ -5875,7 +6008,7 @@ def printOutput(out): if len(v['header']) > 1 or len(value) > 1: output += f''' ------------------------------------------- +{testStart} ({num}) Test: {logger.colored(k, "cyan")} {logger.colored("HEADER", "blue")}: @@ -5887,43 +6020,215 @@ def printOutput(out): {logger.colored("ANALYSIS", "blue")}: {analysis} +{testEnd} ''' else: output += f''' ------------------------------------------- +{testStart} ({num}) Test: {logger.colored(k, "cyan")} {logger.colored("ANALYSIS", "blue")}: {analysis} +{testEnd} ''' - if options['format'] == 'html': - output2 = f''' - - decode-spam-headers - - - {output} - -''' - - output = output2.replace('\n', '
').replace('\t', ' ' * 4).replace(' ', ' ') - output2 = output - - for m in re.finditer(r'(<[^>]+>)', output, re.I): - a = m.group(1) - b = a.replace(' ', ' ') - output2 = output2.replace(a, b) - - return Logger.replaceColorToHtml(output2) - #return output - elif options['format'] == 'json': output = json.dumps(out) return output +def formatToHtml(body, headers): + testStart = '>>>>>>>>>>>>>>>>>>>>>>' + testEnd = '<<<<<<<<<<<<<<<<<<<<<<' + + body = body.replace(testStart, '

') + body = body.replace(testEnd, '
') + + body = body.replace('\n', '
\n').replace('\t', '\t' + ' ' * 4).replace(' ', ' ') + headers = headers.replace('\n', '
\n').replace('\t', '\t' + ' ' * 4).replace(' ', ' ') + body2 = body + + for m in re.finditer(r'(<[^>]+>)', body, re.I): + a = m.group(1) + b = a.replace(' ', ' ') + body2 = body2.replace(a, b) + + body = body2 + + outputHtml = f''' + + + + + Decode Spam Headers + + + +
+
+

+ SMTP Headers analysis by decode-spam-headers.py +

+ (brought to you by @mariuszbit) +
+
+
+
+
+ Original SMTP Headers +
+ +{headers} + +
+
+
+
+
+ {body} + + +''' + return outputHtml + +def colorizeOutput(out, headers): + if options['format'] == 'html': + out = Logger.htmlColors(out) + return formatToHtml(out, headers) + + if options['format'] == 'text': + out = Logger.ansiColors(out) + + if options['format'] == 'json' or len(options['outfile']) > 0: + out = Logger.noColors(out) + + return out + def main(argv): args = opts(argv) if not args: @@ -5997,18 +6302,12 @@ def main(argv): an = SMTPHeadersAnalysis(logger, args.resolve, args.decode_all, testsToRun) out = an.parse(text) - output = printOutput(out) + printed = printOutput(out) + output = colorizeOutput(printed, text) if len(args.outfile) > 0: - ansi_escape = re.compile(r'\x1B(?:[@-Z\\-_]|\[[0-?]*[ -/]*[@-~])') - - output2 = output - - if args.format != 'html': - output2 = ansi_escape.sub('', output) - with open(args.outfile, 'w') as f: - f.write(output2) + f.write(output) else: print(output) diff --git a/img/5.png b/img/5.png new file mode 100644 index 0000000000000000000000000000000000000000..9f23c71c121250fb15b206f376c8ca1ce3e40456 GIT binary patch literal 70612 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

Hw9Ev^~eAuE=B20kd#jQ)E^vNj*{pv9pr>A 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