Back to skill

Security audit

Office Toolkit

Security checks across malware telemetry and agentic risk

Overview

This is a straightforward Office/PDF document toolkit with disclosed file-reading and file-writing behavior, but users should be cautious about its unpinned parser dependencies.

Install this in a virtual environment, use pinned or locked dependency versions where possible, and be careful processing documents from untrusted sources because Office, PDF, XML, and image parsers can have security-sensitive bugs.

SkillSpector

By NVIDIA
Vulnerability Patterns
  • Supply ChainUnpinned Dependencies, External Script Fetching, Obfuscated Code
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
  • Data ExfiltrationExternal Transmission, Env Variable Harvesting, File System Enumeration
  • Privilege EscalationExcessive Permissions, Sudo/Root Execution, Credential Access
  • Excessive AgencyUnrestricted Tool Access, Autonomous Decision Making, Scope Creep
Findings (9)

Unpinned Dependencies

Low
Category
Supply Chain
Content
# All dependencies
# Word
python-docx>=1.1.2
lxml>=5.3.0

# PowerPoint
Confidence
94% confidence
Finding
The dependency is specified with a lower bound only, which allows future major or minor releases to be installed without review. That creates supply-chain and reliability risk because a later compromised or breaking release could enter the environment unexpectedly.

Unpinned Dependencies

Low
Category
Supply Chain
Content
# All dependencies
# Word
python-docx>=1.1.2
lxml>=5.3.0

# PowerPoint
python-pptx>=1.0.0
Confidence
94% confidence
Finding
Using an unpinned lxml version means the build may resolve to different releases over time, including newly introduced vulnerable or incompatible versions. For a document-processing toolkit that parses complex file formats, uncontrolled dependency drift increases supply-chain exposure.

Unpinned Dependencies

Low
Category
Supply Chain
Content
lxml>=5.3.0

# PowerPoint
python-pptx>=1.0.0
Pillow>=10.0.0

# Excel
Confidence
93% confidence
Finding
The python-pptx requirement is not reproducible because any version at or above the minimum may be selected. This weakens build integrity and can silently introduce vulnerable or untested code into deployments.

Unpinned Dependencies

Low
Category
Supply Chain
Content
# PowerPoint
python-pptx>=1.0.0
Pillow>=10.0.0

# Excel
openpyxl>=3.1.0
Confidence
95% confidence
Finding
An unpinned Pillow dependency is particularly risky because image-parsing libraries frequently receive security fixes for malformed input handling. Allowing arbitrary newer releases also increases the chance of pulling in a malicious or incompatible package version.

Unpinned Dependencies

Low
Category
Supply Chain
Content
Pillow>=10.0.0

# Excel
openpyxl>=3.1.0

# PDF
pymupdf>=1.24.0
Confidence
94% confidence
Finding
The openpyxl dependency is unpinned, so installs are not deterministic and may change as upstream releases evolve. In a toolkit handling spreadsheet files from external sources, this increases supply-chain and operational risk.

Unpinned Dependencies

Low
Category
Supply Chain
Content
openpyxl>=3.1.0

# PDF
pymupdf>=1.24.0
Confidence
93% confidence
Finding
Specifying only a minimum version for pymupdf permits uncontrolled upgrades and reduces reproducibility. This can expose consumers to newly introduced vulnerabilities or unexpected behavior in a file-processing component.

Known Vulnerable Dependency: lxml — 10 advisory(ies): CVE-2021-43818 (lxml's HTML Cleaner allows crafted and SVG embedded scripts to pass through); CVE-2014-3146 (lxml Cross-site Scripting Via Control Characters); CVE-2021-28957 (lxml vulnerable to Cross-Site Scripting ) +7 more

High
Category
Supply Chain
Confidence
76% confidence
Finding
The requirement allows any lxml version >=5.3.0, and the scanner reports multiple historical advisories for lxml without proving the selected version is affected. However, because this is an XML/HTML parsing library used in document processing, broad unresolved advisory history combined with unpinned installation creates meaningful risk if an affected release is pulled in or unsafe parser features are used elsewhere in the skill.

Known Vulnerable Dependency: Pillow — 10 advisory(ies): CVE-2016-2533 (Pillow buffer overflow in ImagingPcdDecode); CVE-2023-50447 (Arbitrary Code Execution in Pillow); CVE-2021-27922 (Pillow Uncontrolled Resource Consumption) +7 more

Critical
Category
Supply Chain
Confidence
90% confidence
Finding
Pillow processes attacker-controlled image content and has a long history of memory corruption, resource exhaustion, and code-execution issues. In an Office/PDF toolkit that may ingest embedded images from untrusted documents, a vulnerable Pillow build could be triggered through normal file handling, making this context more dangerous than a generic application dependency.

Known Vulnerable Dependency: openpyxl — 2 advisory(ies): CVE-2017-5992 (Improper Restriction of XML External Entity Reference in Openpyxl); CVE-2017-5992 (Openpyxl 2.4.1 resolves external entities by default, which allows remote attack)

High
Category
Supply Chain
Confidence
82% confidence
Finding
openpyxl has prior XXE-related issues, and this toolkit explicitly handles spreadsheet documents that may come from untrusted sources. Although the requirement is >=3.1.0 and may not itself be vulnerable to the cited CVE, the combination of a document parser, unpinned dependency, and XML-based file formats means this should be treated as a real security concern until the resolved version is pinned and verified.

VirusTotal

65/65 vendors flagged this skill as clean.

View on VirusTotal

Static analysis

No suspicious patterns detected.