Commit 3f71600966179193a2b25a7912dd384bc28a7acc
1 parent
5c8a35c9
olevba: avoid printing form strings when it is empty or "Tahoma"
Showing
1 changed file
with
7 additions
and
5 deletions
oletools/olevba.py
| ... | ... | @@ -3298,7 +3298,8 @@ class VBA_Parser(object): |
| 3298 | 3298 | # Extract printable strings from the form object stream "o": |
| 3299 | 3299 | for m in re_printable_string.finditer(form_data): |
| 3300 | 3300 | log.debug('Printable string found in form: %r' % m.group()) |
| 3301 | - yield (self.filename, '/'.join(o_stream), m.group()) | |
| 3301 | + if m.group() != b'Tahoma': | |
| 3302 | + yield (self.filename, '/'.join(o_stream), m.group()) | |
| 3302 | 3303 | |
| 3303 | 3304 | def extract_form_strings_extended(self): |
| 3304 | 3305 | if self.ole_file is None: |
| ... | ... | @@ -3494,10 +3495,11 @@ class VBA_Parser_CLI(VBA_Parser): |
| 3494 | 3495 | log.error('Unicode conversion to be fixed before colorizing the output') |
| 3495 | 3496 | print(vba_code_filtered) |
| 3496 | 3497 | for (subfilename, stream_path, form_string) in self.extract_form_strings(): |
| 3497 | - print('-' * 79) | |
| 3498 | - print('VBA FORM STRING IN %r - OLE stream: %r' % (subfilename, stream_path)) | |
| 3499 | - print('- ' * 39) | |
| 3500 | - print(form_string) | |
| 3498 | + if form_string is not None: | |
| 3499 | + print('-' * 79) | |
| 3500 | + print('VBA FORM STRING IN %r - OLE stream: %r' % (subfilename, stream_path)) | |
| 3501 | + print('- ' * 39) | |
| 3502 | + print(form_string) | |
| 3501 | 3503 | try: |
| 3502 | 3504 | for (subfilename, stream_path, form_variables) in self.extract_form_strings_extended(): |
| 3503 | 3505 | if form_variables is not None: | ... | ... |