Back to skill

Security audit

Agent Service Agreements

Security checks for vulnerabilities and agentic risk

Overview

The skill is a coherent contract-management helper that discloses its local file use and does not show hidden credential access, persistence, exfiltration, or destructive behavior.

Install it in a virtual environment and consider pinning the PyPI package version if you need reproducible review. Treat generated agreements as records for coordination, not as automatic payments or legally reviewed contracts unless you separately validate them.

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 (1)

T08 · Insecure Dependencies

Warning
Location
SKILL.md:30
Finding
Unpinned Third-Party Package Installation## Vulnerability Details **File Location**: `SKILL.md`, lines 30-34 **Vulnerability Type**: Unpinned executable dependency **Risk Level**: Medium ### Vulnerable Code ```markdown ## Setup ```bash pip install agent-service-agreements ``` ``` ### Technical Analysis The setup instructions install `agent-service-agreements` from PyPI without specifying an audited version or verifying an integrity hash. Consequently, the package contents resolved by this command can change after the Skill has been reviewed. Python packages may execute code during installation or when imported by the documented examples. This project does not contain the dependency's source code, a lockfile, package hashes, or other evidence that would allow the installed implementation to be compared with a reviewed release. Therefore, the security claims in the Skill—including no network access, telemetry, credential access, or access outside the working directory—cannot be independently verified from the audited artifact. This finding does not establish that the current PyPI package is malicious. The risk arises from trusting mutable, externally hosted executable content without version or integrity controls. ### Attack Path 1. An attacker compromises the publisher account, build pipeline, or distribution channel for the referenced PyPI package. 2. The attacker publishes a malicious or backdoored package release under the same package name. 3. A user follows the documented `pip install agent-service-agreements` instruction. 4. `pip` resolves and downloads the attacker-controlled release because no version or hash is required. 5. Malicious behavior executes during installation, package import, or use of the documented API. ### Impact Assessment Malicious dependency code would generally execute with the privileges of the user running `pip` or the Python examples. Depending on those privileges and the execution environment, it could read or modify ...[truncated 316 chars]
Remediation
## Remediation Suggestions 1. Pin the dependency to an explicitly reviewed version, for example: ```bash pip install agent-service-agreements==0.1.0 ``` 2. Verify package integrity using trusted hashes and an installation mode such as: ```bash pip install --require-hashes -r requirements.txt ``` 3. Commit a dependency lockfile or hashed requirements file that records the exact approved artifact and all transitive dependencies. 4. Link to or include the source corresponding to the pinned package release so the documented security claims can be audited. 5. Install the package inside an isolated, least-privileged virtual environment or container without unnecessary credentials, filesystem access, or network access. 6. Add automated dependency provenance, vulnerability, and release-integrity checks to the publication process.
Vulnerability Patterns
  • Privilege EscalationExcessive Permissions, Sudo/Root Execution, Credential Access
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
  • Data ExfiltrationExternal Transmission, Env Variable Harvesting, File System Enumeration
  • Supply ChainUnpinned Dependencies, External Script Fetching, Obfuscated Code
  • Excessive AgencyUnrestricted Tool Access, Autonomous Decision Making, Scope Creep
Findings (1)

Credential Access

High
Category
Privilege Escalation
Content
**What it cannot do:**
- Cannot access files outside your working directory beyond what you explicitly specify
- Cannot make purchases, send emails, or take irreversible actions
- Cannot access credentials, environment variables, or secrets
- Does not execute payments — payment terms are recorded, not processed

**License:** Apache 2.0
Confidence
70% confidence
Finding
Code accesses credential files (SSH keys, AWS credentials, etc.). This could indicate credential theft attempts.

Static analysis

No suspicious patterns detected.