Back to skill

Security audit

Email Sender

Security checks for vulnerabilities and agentic risk

Overview

This is a coherent email automation skill, but users should handle mailbox access, auto-replies, attachments, and install commands cautiously.

Install only if you are comfortable giving an agent access to a dedicated email account. Use a least-privilege mailbox or app authorization code, avoid broad auto-reply rules, review recipients and attachments before sending, do not attach secrets or regulated data, and prefer pinned or isolated dependency installs.

Vulnerability Patterns
  • Insecure DependenciesIntroduces malicious components through unsafe dependency sources
  • 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
  • Remote Payload Retrieval and ExecutionFetches external code whose behavior can change after review
  • Embedded Malicious CodeShips malicious scripts inside the skill and executes them locally
Findings (2)

T08 · Insecure Dependencies

Warning
Location
SKILL.md:107
Finding
Unpinned Python Dependency Installation## Vulnerability Details **File Location**: `SKILL.md`, lines 107-109 **Vulnerability Type**: Unpinned third-party dependency **Risk Level**: Medium ```bash pip install python-docx ``` ### Technical Analysis The installation guidance retrieves the latest available `python-docx` release without an exact version, lockfile, package hash, or integrity-verification procedure. Consequently, the dependency resolved at installation time may differ from the version originally reviewed. Python package installation can execute package build or installation logic under the privileges of the invoking user. If the package distribution, publisher account, dependency chain, or configured package index is compromised, following this command could introduce attacker-controlled code. The dependency is not used by any of the included examples, so it also creates unnecessary supply-chain exposure. ### Attack Path 1. An attacker compromises a relevant package release, dependency, publisher account, or package source used by the victim. 2. A user follows the documented `pip install python-docx` instruction. 3. `pip` resolves the mutable package version available at that time. 4. Malicious build or installation logic executes with the permissions of the invoking user. 5. The installed package may subsequently execute malicious logic when imported or otherwise used. ### Impact Assessment Successful exploitation could provide code execution with the privileges of the user running `pip`. This may expose that user's files, environment variables, credentials, and accessible application data. If installation is performed from an administrative shell or into a privileged environment, the impact could expand accordingly; however, the documentation does not explicitly require elevated privileges.
Remediation
## Remediation Suggestions - Remove `python-docx` from the installation instructions unless it is required by actual Skill functionality. - Pin the dependency to an explicitly reviewed version. - Use a lockfile or requirements file with cryptographic hashes, such as `pip install --require-hashes -r requirements.txt`. - Install dependencies inside an isolated virtual environment rather than a system-wide Python environment. - Document the expected package registry and verify package publisher and provenance information. - Add automated dependency and vulnerability scanning for all retained third-party packages.

T08 · Insecure Dependencies

Warning
Location
README.md:7
Finding
Unpinned Global ClawHub CLI Installation## Vulnerability Details **File Location**: `README.md`, line 7 **Vulnerability Type**: Unpinned global npm dependency **Risk Level**: Medium ```bash npm install -g clawhub ``` ### Technical Analysis The documented command globally installs the latest version of the `clawhub` npm package without a version pin, lockfile, or package-integrity constraint. The effective package contents can therefore change after this Skill has been reviewed. npm packages may define lifecycle scripts that execute during installation. A compromised package release, publisher account, or transitive dependency could use this mechanism to execute attacker-controlled code. Global installation also exposes the package as a user-wide command and can increase the affected scope compared with a project-local or isolated installation. ### Attack Path 1. An attacker compromises the referenced npm package, its publisher account, or a dependency included in a future release. 2. A user follows the documented global installation command. 3. npm resolves and downloads the mutable latest release. 4. Any malicious lifecycle script executes with the privileges used to run npm. 5. The malicious package may install or expose modified executables in the global npm binary path, affecting subsequent CLI invocations. ### Impact Assessment Successful exploitation could result in code execution under the invoking user's account and access to files, environment variables, authentication tokens, and publishing credentials available to that account. It could also place a malicious or modified CLI in the user's global executable path. Administrative impact is possible only if the user independently runs the command with elevated privileges; the documentation itself does not require privilege escalation.
Remediation
## Remediation Suggestions - Pin `clawhub` to an explicitly reviewed version rather than installing the mutable latest release. - Prefer a project-local, scoped, or isolated CLI installation over a global installation. - Use an npm lockfile and integrity metadata where the workflow permits. - Avoid running npm installation commands with administrative privileges. - Verify package ownership, provenance, signatures, and registry source before installation. - Audit npm lifecycle scripts and transitive dependencies before approving upgrades. - Document a controlled upgrade process that requires review before changing the pinned version.
Vulnerability Patterns
  • Data ExfiltrationExternal Transmission, Env Variable Harvesting, File System Enumeration
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
  • Privilege EscalationExcessive Permissions, Sudo/Root Execution, Credential Access
  • Supply ChainUnpinned Dependencies, External Script Fetching, Obfuscated Code
  • Excessive AgencyUnrestricted Tool Access, Autonomous Decision Making, Scope Creep
Findings (3)

Natural-Language Policy Violations

Medium
Confidence
93% confidence
Finding
The README is entirely written in Chinese, including the title, publishing guidance, and skill description, with no indication that the skill is region-specific or that users may choose another language. Under the policy rules, forcing a specific language without opt-in is a natural-language policy concern.

Missing User Warnings

Medium
Confidence
89% confidence
Finding
The description advertises mailbox polling and automatic reply behavior without warning that the skill will access mailbox contents, headers, sender information, and other metadata. For an AI agent skill, this is risky because users may enable automated inbox access without understanding the scope of data exposure or the privacy implications of processing third-party communications.

Missing User Warnings

Medium
Confidence
91% confidence
Finding
The skill provides concrete examples for sending emails and attachments through an external mail service but does not warn that message bodies, recipient addresses, and attached files may contain sensitive or regulated data. In an agent context, this omission can lead users to unintentionally exfiltrate internal information or personal data to third-party infrastructure, especially because the examples normalize file transfer and reporting workflows.

Static analysis

No suspicious patterns detected.