Back to skill

Security audit

DiagForge Bootstrap

Security checks for vulnerabilities and agentic risk

Overview

This onboarding skill is coherent, but it asks agents to download and run mutable GitHub code while requiring a sensitive token, so users should review it before installing.

Install only if you trust the referenced repository and are comfortable running its current Python code locally. Before use, prefer checking out a reviewed commit, inspecting the smoke-test scripts, running in a constrained environment, and keeping VISIO_BRIDGE_TOKEN secret and narrowly scoped.

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:67
Finding

Unpinned Remote Repository Is Retrieved and Its Code Is Executed

Content
View full analysis

Vulnerability Details

File Location: SKILL.md:67-75 and SKILL.md:86-92
Vulnerability Type: T03: Remote Payload Retrieval and Execution
Risk Level: High

The skill directs an agent to clone a mutable external GitHub repository and subsequently execute Python scripts obtained from that repository:

bash
git clone git@github.com:qweadzchn/DiagForge.git
cd DiagForge

If SSH is not available, use HTTPS instead.

powershell
python Setup\prepare_smoke_test.py --config Setup\examples\smoke-test-inputpng-1.json
python Setup\run_draw_job.py --config Setup\examples\smoke-test-inputpng-1.json
python Setup\execute_drawdsl.py --config Setup\examples\smoke-test-inputpng-1.json --round 1 --save-final

Technical Analysis

The clone operation does not specify an immutable commit SHA or require verification of a signed release, tag, or checksum. The executed scripts are not included in this audited package, and their contents therefore cannot be verified through review of the package itself.

Because the remote repository's default branch can change after publication and review of the skill, the effective code executed by an agent can also change without any modification to this package. A compromise of the repository, its maintainer account, or its default branch could consequently turn the documented bootstrap procedure into an arbitrary remote-code execution path.

The package metadata declares VISIO_BRIDGE_TOKEN as a required environment variable. Remote scripts may inherit environment variables available to their process. There is no evidence in the reviewed package that the token is actually read or transmitted, but executing untrusted replacement code in an environment containing the token would make disclosure technically possible.

Attack Path

  1. An attacker compromises the referenced GitHub repository, a maintainer account, or the repository's default branch.
  2. T ...[truncated 1420 chars]
Remediation
View remediation

Remediation Suggestions

  1. Pin the repository to a reviewed immutable commit SHA rather than executing the mutable default branch.
  2. Publish the expected commit identifier in the skill and verify it explicitly before running any script.
  3. Prefer signed releases or signed Git tags, and document the required signature-verification procedure and trusted signer identity.
  4. Publish cryptographic hashes for the scripts and other executable inputs, then verify those hashes before execution.
  5. Where feasible, vendor the minimal smoke-test scripts into the audited skill package so their executed contents are covered by package review.
  6. Require a source review or automated security scan of the checked-out revision before running it.
  7. Execute downloaded code in a sandbox or disposable virtual machine with restricted filesystem access, outbound networking, and process privileges.
  8. Do not expose VISIO_BRIDGE_TOKEN or unrelated secrets to preparation steps that do not require them. Supply each secret only to the specific process that needs it and use a narrowly scoped, short-lived token.
  9. Document the exact trusted repository URL and verify the Git remote after cloning to reduce repository substitution risk.
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 (1)

Missing User Warnings

Low
Category
Not specified by scanner
Confidence
88% confidence
Finding

The skill declares a required environment variable VISIO_BRIDGE_TOKEN, which indicates use of a sensitive credential. However, the markdown does not include any warning or handling guidance about protecting the token, avoiding logging it, or understanding that the smoke-test workflow depends on privileged access.

Content

No source excerpt is available for this finding.

Static analysis

No suspicious patterns detected.