Back to skill

Security audit

Agentic Supply Chain Orchestration

Security checks for vulnerabilities and agentic risk

Overview

This is a non-executing guide, but its copy-and-deploy examples can automate real supplier changes and escrow/payment actions with weak built-in approval controls.

Review this carefully before installing or using it with production credentials. Keep it in sandbox mode unless you add explicit approvals, spend limits, least-privilege API keys, compliance gates before every escrow/payment action, idempotency, trusted delivery evidence, audit logging, and rollback or dispute procedures.

Vulnerability Patterns
  • Insecure Skill Coding PracticesFinds exploitable flaws such as hardcoded secrets or command injection
  • 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)

T09 · Insecure Skill Coding Practices

Error
Location
SKILL.md:932
Finding

Automated Rerouting Creates Financial Escrow Without Enforced Compliance or Spending Controls

Content
View full analysis
dict: """ Execute a full supply chain reroute: 1. Create escrow with alternate supplier 2. Notify downstream agents of delay 3. Update supplier graph """ results = {"steps": []} # Step 1: Create escrow with the alternate supplier escrow = execute("create_escrow", { "payer_id": orchestrator_id, "payee_id": alternate["agent_id"], "amount": str(original_order["value_usd"]), "currency": "USD", "conditions": { "delivery_by": original_order["due_date"], "quantity": original_order["quantity"], "quality_standard": "per_original_sla", "auto_release_on_confirmation": True } }) ``` ### Technical Analysis The automated rerouting function performs a financial operation immediately after receiving an order and selected alternate supplier. It does not enforce the controls that the guide describes elsewhere, including: - A compliance check before escrow creation - A maximum transaction or aggregate spending limit - Human approval for high-value transactions - An idempotency key preventing duplicate escrow creation - A cooldown or rerouting-depth check - Verification that the alternate supplier is still authorized - Validation of the order amount, currency, due date, or supplier identity - Binding the escrow request to an approved rerouting decision The surrounding pipeline at `SKILL.md:1028-1096` calls `execute_reroute` for every affected order after alternate selection. While exceptions are recorded, no rollback is performed if later workflow steps fail. Consequently, an escrow can remain created even if notifications ...[truncated 1690 chars]
Remediation
View remediation

T09 · Insecure Skill Coding Practices

Error
Location
SKILL.md:1895
Finding

Caller-Controlled Delivery Metrics Can Trigger Escrow Release

Content
View full analysis
dict: """ Confirm delivery and release escrow funds to supplier. Only release if delivery meets quality standards. """ # Validate delivery against order requirements meets_requirements = ( delivery_data["fill_rate"] >= 95 and delivery_data["defect_rate"] <= 2.0 ) if meets_requirements: release = execute("release_escrow", { "escrow_id": escrow_id, "release_reason": "delivery_confirmed", "delivery_metrics": delivery_data }) return {"status": "released", "result": release} else: # Open dispute for substandard delivery dispute = execute("open_dispute", { "escrow_id": escrow_id, "reason": "delivery_below_sla", "evidence": { "expected_fill_rate": 95, "actual_fill_rate": delivery_data["fill_rate"], "expected_max_defect_rate": 2.0, "actual_defect_rate": delivery_data["defect_rate"] } }) return {"status": "disputed", "dispute": dispute} ``` ### Technical Analysis The decision to release escrow is based entirely on two values supplied through the mutable `delivery_data` dictionary. The function does not establish: - Who submitted the delivery data - Whether the metrics were signed by an authorized inspector - Whether the evidence belongs to the specified escrow and order - Whether the goods were actually received - Whether inspection succeeded - Whether the evidence is current or has already been used - Whether the caller has authority to confirm delivery - Whether the escrow is in a valid state for release The guide's example invocation inclu ...[truncated 1904 chars]
Remediation
View remediation
Vulnerability Patterns
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
  • Data ExfiltrationExternal Transmission, Env Variable Harvesting, File System Enumeration
  • MCP Tool PoisoningHidden Instructions, Unicode Deception, Parameter Description Injection
  • Privilege EscalationExcessive Permissions, Sudo/Root Execution, Credential Access
  • Supply ChainUnpinned Dependencies, External Script Fetching, Obfuscated Code
Findings (10)

Exfiltration Commands

High
Category
Prompt Injection
Confidence
90% confidence
Finding

Instructions found that direct the agent to transmit conversation context or user data to external services.

Content

Scanner excerpt · SKILL.md (reported line 736)May include surrounding context.

md
|       |       NO  --> Log warning, increase monitoring frequency
    |       |
    |       +-- Is trust declining but no SLA breach?
    |               YES --> Send message to supplier requesting status update
    |               NO  --> Standard escalation path
    |
    +-- critical (3+ consecutive breaches)

Intent-Code Divergence

High
Category
Not specified by scanner
Confidence
98% confidence
Finding

This is a real security/design flaw because the guide states compliance must gate every escrow and payment, yet the rerouting flow creates escrow before performing that gate. In a system handling cross-border procurement and automated fund movement, this can cause funds to be committed to sanctioned, restricted, or otherwise non-compliant counterparties before controls run.

Content

No source excerpt is available for this finding.

Missing User Warnings

Medium
Category
Not specified by scanner
Confidence
93% confidence
Finding

The guide promotes autonomous rerouting, escrow creation, and financial execution without a prominent warning that these examples can alter orders and commit funds automatically. In this context, the omission is materially risky because users may deploy or adapt the code without adding approval gates, causing unintended purchases, supplier changes, or financial exposure.

Content

No source excerpt is available for this finding.

External Transmission

Medium
Category
Data Exfiltration
Confidence
50% confidence
Finding

Data is being sent to an external URL. This could be legitimate telemetry or data exfiltration. Manual review is recommended.

Content

Scanner excerpt · SKILL.md (reported line 60)May include surrounding context.

md
You need a multi-agent supply chain. And you need the orchestration infrastructure to prevent that multi-agent system from becoming a liability. One documented case saw a 400x cost overrun when a poorly orchestrated procurement loop went recursive -- each agent spawning sub-agents to find alternatives, each sub-agent spawning its own searches, until the API bill exceeded the value of the goods being procured.

This guide builds the orchestration layer. Every chapter contains working Python code against the GreenHelix A2A Commerce Gateway -- 128 tools accessible at `https://api.greenhelix.net/v1` via a single the REST API (`POST /v1/{tool}`) endpoint. By the end, you will have a complete supply chain orchestration system: multi-tier supplier mapping, real-time SLA monitoring, automated disruption rerouting, demand signal aggregation, cross-border compliance checks, and agent-to-agent coordination with escrow-protected transactions.

---

External Transmission

Medium
Category
Data Exfiltration
Confidence
50% confidence
Finding

Data is being sent to an external URL. This could be legitimate telemetry or data exfiltration. Manual review is recommended.

Content

Scanner excerpt · SKILL.md (reported line 149)May include surrounding context.

md
You need a multi-agent supply chain. And you need the orchestration infrastructure to prevent that multi-agent system from becoming a liability. One documented case saw a 400x cost overrun when a poorly orchestrated procurement loop went recursive -- each agent spawning sub-agents to find alternatives, each sub-agent spawning its own searches, until the API bill exceeded the value of the goods being procured.

This guide builds the orchestration layer. Every chapter contains working Python code against the GreenHelix A2A Commerce Gateway -- 128 tools accessible at `https://api.greenhelix.net/v1` via a single the REST API (`POST /v1/{tool}`) endpoint. By the end, you will have a complete supply chain orchestration system: multi-tier supplier mapping, real-time SLA monitoring, automated disruption rerouting, demand signal aggregation, cross-border compliance checks, and agent-to-agent coordination with escrow-protected transactions.

---

External Transmission

Medium
Category
Data Exfiltration
Confidence
50% confidence
Finding

Data is being sent to an external URL. This could be legitimate telemetry or data exfiltration. Manual review is recommended.

Content

Scanner excerpt · SKILL.md (reported line 2368)May include surrounding context.

md
You need a multi-agent supply chain. And you need the orchestration infrastructure to prevent that multi-agent system from becoming a liability. One documented case saw a 400x cost overrun when a poorly orchestrated procurement loop went recursive -- each agent spawning sub-agents to find alternatives, each sub-agent spawning its own searches, until the API bill exceeded the value of the goods being procured.

This guide builds the orchestration layer. Every chapter contains working Python code against the GreenHelix A2A Commerce Gateway -- 128 tools accessible at `https://api.greenhelix.net/v1` via a single the REST API (`POST /v1/{tool}`) endpoint. By the end, you will have a complete supply chain orchestration system: multi-tier supplier mapping, real-time SLA monitoring, automated disruption rerouting, demand signal aggregation, cross-border compliance checks, and agent-to-agent coordination with escrow-protected transactions.

---

External Transmission

Medium
Category
Data Exfiltration
Confidence
50% confidence
Finding

Data is being sent to an external URL. This could be legitimate telemetry or data exfiltration. Manual review is recommended.

Content

Scanner excerpt · SKILL.md (reported line 2417)May include surrounding context.

md
You need a multi-agent supply chain. And you need the orchestration infrastructure to prevent that multi-agent system from becoming a liability. One documented case saw a 400x cost overrun when a poorly orchestrated procurement loop went recursive -- each agent spawning sub-agents to find alternatives, each sub-agent spawning its own searches, until the API bill exceeded the value of the goods being procured.

This guide builds the orchestration layer. Every chapter contains working Python code against the GreenHelix A2A Commerce Gateway -- 128 tools accessible at `https://api.greenhelix.net/v1` via a single the REST API (`POST /v1/{tool}`) endpoint. By the end, you will have a complete supply chain orchestration system: multi-tier supplier mapping, real-time SLA monitoring, automated disruption rerouting, demand signal aggregation, cross-border compliance checks, and agent-to-agent coordination with escrow-protected transactions.

---

Missing User Warnings

Low
Category
Not specified by scanner
Confidence
84% confidence
Finding

The skill references a powerful API credential used for read/write commercial operations but does not instruct users to scope, store, rotate, and monitor that credential securely. In a guide centered on payments, escrow, messaging, and supplier operations, weak credential hygiene could enable unauthorized transactions or data access if the key is exposed.

Content

No source excerpt is available for this finding.

Intent-Code Divergence

Low
Category
Not specified by scanner
Confidence
94% confidence
Finding

execute_reroute documents three steps including 'Update supplier graph', but the implementation only creates escrow, sends downstream messages, and creates a new SLA before returning. This is an active mismatch between inline intent documentation and actual behavior.

Content

No source excerpt is available for this finding.

Intent-Code Divergence

Low
Category
Not specified by scanner
Confidence
91% confidence
Finding

The forecast_demand docstring says it 'Groups by category and week', implying time-bucketed forecasting logic. The implementation appends amounts directly per category with no date parsing or weekly grouping, so the documentation materially overstates what the example actually does.

Content

No source excerpt is available for this finding.

Static analysis

No suspicious patterns detected.