Back to skill

Security audit

Outlook Add-in

Security checks for vulnerabilities and agentic risk

Overview

The skill is coherent for an Outlook add-in, but it asks users to run unreviewed remote code and connect sensitive email content to a local agent with broad tool access.

Review the referenced GitHub repository and dependency lockfile before installing, prefer a pinned commit and pinned npm commands, and use the add-in only with a trusted local OpenClaw Gateway. Be aware that selected Outlook email content may become available to the agent and any enabled tools or automations.

Vulnerability Patterns
  • Remote Payload Retrieval and ExecutionFetches external code whose behavior can change after review
  • Skill Instruction HijackingAlters the agent's session goals or safety constraints when the skill loads
  • Agent Memory PoisoningWrites attacker-controlled rules into memory that affect later sessions
  • Embedded Malicious CodeShips malicious scripts inside the skill and executes them locally
  • Unauthorized Access and Privilege EscalationObtains permissions beyond the task's legitimate needs
Findings (1)

T03 · Remote Payload Retrieval and Execution

Error
Location
SKILL.md:14
Finding
Mutable Remote Repository and Unpinned Dependencies Are Downloaded and Executed## Vulnerability Details **File Location**: `SKILL.md`, lines 14–19 **Vulnerability Type**: Remote payload retrieval and execution through a mutable Git repository and unpinned npm packages **Risk Level**: High **Vulnerable Code**: ```bash git clone https://github.com/nachtsheim/openclaw-outlook-addin.git cd openclaw-outlook-addin npm install npx office-addin-dev-certs install # first time only npm run dev # starts https://localhost:3000 ``` ### Technical Analysis The installation instructions retrieve the current contents of an external GitHub repository without pinning a reviewed commit, release artifact, or cryptographic digest. The effective code executed by users can therefore change after this Skill has been reviewed. The subsequent `npm install` command installs dependencies from the retrieved project and may execute npm lifecycle scripts. Neither the dependency manifest nor a lockfile is present in the audited project, so dependency names, versions, integrity records, and installation scripts cannot be verified. The unversioned `npx office-addin-dev-certs install` command may download and execute a package version selected at installation time. It also installs development certificates, potentially changing the user's local certificate trust configuration. Finally, `npm run dev` executes a script defined entirely by the mutable remote repository. This finding does not establish that the referenced repository or npm packages are malicious. It establishes that the documented workflow creates an unreviewed remote code-execution channel and an unsafe dependency trust boundary. ### Attack Path 1. An attacker compromises the referenced GitHub repository, one of its maintainers, an npm dependency, or an applicable package-publishing account. 2. The attacker adds malicious code to repository scripts, npm lifecycle hooks, the development server command, or a dependency release. 3. A user ...[truncated 1476 chars]
Remediation
## Remediation Suggestions 1. Pin the external repository to a specific, reviewed commit hash rather than cloning and executing the mutable default branch. 2. Prefer a signed release artifact and publish its expected SHA-256 digest or signature-verification procedure. 3. Include the reviewed implementation and dependency metadata in the Skill package where practical, so the effective payload is available during auditing. 4. Commit a dependency lockfile with integrity records and replace `npm install` with `npm ci`. 5. Pin the exact version of `office-addin-dev-certs` instead of relying on unversioned `npx` resolution. Install it from a configured trusted registry and verify package provenance. 6. Audit all npm lifecycle scripts and consider installing dependencies with scripts disabled until required scripts have been separately reviewed. 7. Document every certificate-store modification, the permissions it requires, its security implications, and a procedure for removing the installed certificate. 8. Run the development server and build process as an unprivileged account in an isolated environment with restricted filesystem, credential, network, Outlook, and Gateway access. 9. Require explicit user review and confirmation before granting the add-in access to email content or exposing agent tools and automations. 10. Add an origin allowlist scoped to the exact required development origin and avoid broadly exposing the local Gateway.
Vulnerability Patterns
  • Data ExfiltrationExternal Transmission, Env Variable Harvesting, File System Enumeration
  • Supply ChainUnpinned Dependencies, External Script Fetching, Obfuscated Code
  • Trigger AbuseOverly Broad Trigger, Shadow Command Trigger, Keyword Baiting Trigger
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
  • Privilege EscalationExcessive Permissions, Sudo/Root Execution, Credential Access
Findings (3)

Vague Triggers

Medium
Confidence
88% confidence
Finding
The description is broad enough to trigger on common Outlook or email-related requests, which can cause the skill to be invoked in situations beyond the user's specific intent. In a security-sensitive integration that can expose mailbox content to a local agent, overbroad activation increases the chance of unintended use and data exposure.

Missing User Warnings

Medium
Confidence
95% confidence
Finding
The markdown explains that the add-in connects Outlook to the local OpenClaw Gateway via WebSocket and makes the selected email available in the sidebar, but it does not clearly warn users that email content may be transmitted to and processed by their local agent and its tools. Because emails often contain sensitive business or personal information, missing this disclosure can lead to uninformed exposure of confidential data.

Rp1

Medium
Category
MCP Rug Pull
Confidence
87% confidence
Finding
The skill instructs users to run `npx office-addin-dev-certs` without pinning a specific version, which introduces a supply-chain risk because `npx` will fetch the latest package at execution time. If the upstream package is compromised or a breaking/malicious release is published, users could execute attacker-controlled code during setup.

Static analysis

No suspicious patterns detected.