Which Python Script Analyzes Suspicious MS Office Documents?
Short answer
A Run oleid.py to statically report the MS Office document's type, encryption status, Flash objects, and VBA macro indicators.
Question
Key Takeaways
The question tests recognition of oletools' indicator-scanning script, and the trap is picking a tool that only dumps OLE structures (oledir.py), extracts forms (oleform.py), or targets PDFs (pdfid.py) instead of one that summarizes all suspicious indicators at once.
Static triage of a suspicious MS Office document on an Ubuntu forensic workstation requires an OLE-aware indicator scanner that reports document type, encryption status, Flash content, and embedded VBA macros in one pass. The page establishes that oleid.py is that tool, distinguishing it from directory-dump, form-extraction, and PDF-only utilities.
Common mistake: Learners commonly choose pdfid.py because it is also a python-based static analyzer, but it only parses PDF files and cannot inspect OLE/MS Office documents for macros, encryption, or Flash objects.
Expert Analysis
Why the Answer Is Correct
oleid.py is the oletools indicator scanner designed exactly for the described triage: it reports the file type, whether the OLE document is encrypted, whether it contains Flash/SWF objects, and whether VBA macros or suspicious attributes are present. Running it as a first step over an MS Office document on an Ubuntu forensic machine gives Matthew a consolidated suspicious-indicator report before deeper extraction, which matches the request to "see what type of document it is, whether it is encrypted, or contains any flash objects/VBA macros." Elb's comment confirms this workflow, describing oleid as "a tool that is used to examine OLE files" used as the first analysis step.
Why the Other Options Are Wrong
oledir.py merely prints the raw OLE directory-entry table (entry names, sizes, colors), so it reveals structure but not encryption status, Flash objects, or macro presence in a summarized form. oleform.py extracts VBA user-form data for deeper inspection rather than providing the broad indicator overview the question asks for. pdfid.py is a python-based static analyzer but is purpose-built for PDF files, and a suspicious MS Office/OLE document is not a PDF, so it would yield no relevant information here.
Community Comment Notes
All 100 learner votes selected option A, and the comments reinforce it: Elb notes that "As the first step, you should analyze the suspect MS Office document with a python-based tool named oleid," and links the official oletools wiki page for oleid. Dumas's note describing option A as "Object Linking and embedding" reflects the OLE (Object Linking and Embedding) file format that oleid inspects, which supports rather than contradicts the choice.
Official Reference
https://github.com/decalage2/oletools/wiki/oleid
This link opens the official vendor documentation in a new tab.
Exam Strategy
When a question names a specific artifact type (MS Office/OLE vs. PDF), match the tool to that format first — oleid, oledir, and oleform all come from oletools but serve different stages. Choose the one whose documented purpose covers every indicator the prompt lists.
Frequently Asked Questions
Why is pdfid.py wrong for a suspicious MS Office document?
How do oledir.py and oleform.py differ from oleid.py?
Community Votes
100% of anonymous learners picked answer A. Votes are pick records left by other test-takers — they are not the verified answer.
Discussion 3 contributions
Compiled from public community threads and reader submissions, lightly edited for clarity. Handles and vote tallies are shown as recorded, and comments reflect the views of individual contributors.
From public community threads 3
-
Elb 👍 2 Answered AAs the first step, you should analyze the suspect MS Office document with a python-based tool named oleid to review all components that can be labeled as suspicious/malicious. It is a tool that is used to examine OLE files.
-
Elb 👍 2A < https://github.com/decalage2/oletools/wiki/oleid
-
Dumas 👍 2A. Object Linking and embedding
Reader comments & corrections
No reader corrections yet — spotted an error or have a note? Share it below.