Back to skill

Security audit

jev-gate approval firewall

Security checks for vulnerabilities and agentic risk

Overview

This skill coherently implements a hosted safety gate, but it sends and stores action descriptions and tool-call details on an external service.

Install only if you are comfortable sending action descriptions and tool-call details to the hosted jev-gate service and having them retained in its dashboard. Redact secrets, credentials, customer data, and regulated information before checks, and review any optional downloaded MCP or hook client files before enabling them.

Vulnerability Patterns
  • 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
  • Unauthorized Access and Privilege EscalationObtains permissions beyond the task's legitimate needs
Vulnerability Patterns
  • Data ExfiltrationExternal Transmission, Env Variable Harvesting, File System Enumeration
  • MCP Least PrivilegeUnderdeclared Capability, Wildcard Permission, Missing Permission Declaration
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
  • Privilege EscalationExcessive Permissions, Sudo/Root Execution, Credential Access
  • Supply ChainUnpinned Dependencies, External Script Fetching, Obfuscated Code
Findings (5)

Undeclared Tool Scope

Medium
Category
MCP Least Privilege
Confidence
80% confidence
Finding

The skill clearly instructs use of shell-based commands (curl, downloaded Python hook files, local scripts) but does not declare any explicit tool scope such as permissions or allowed-tools. That makes the skill's execution requirements less transparent and can cause an agent or operator to invoke shell access more broadly than intended, increasing the chance of unsafe command execution.

Content

No source excerpt is available for this finding.

External Transmission

Medium
Category
Data Exfiltration
Confidence
94% confidence
Finding

The documented raw API call sends the action transcript and tool-call details to https://jev-gate.fly.dev/v1/gate, which is an external hosted service. External transmission is inherent to the product design, but in this context it is security-relevant because the examples and intended use involve sensitive production operations, destructive database actions, and other high-risk workflows whose descriptions may disclose secrets or internal state.

Content

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

The raw call, if you would rather do it yourself:

bash
curl -s https://jev-gate.fly.dev/v1/gate \
  -H "Authorization: Bearer $JEV_GATE_KEY" \
  -H 'content-type: application/json' \
  -d '{"transcript":"agent is about to drop the orders table in production","tool_calls":["psql drop"]}'

Missing User Warnings

Medium
Category
Not specified by scanner
Confidence
95% confidence
Finding

The skill states that every call is logged to a hosted dashboard with the transcript, verdict, reasons, and latency, but it does not prominently warn that sensitive operational context and tool-call details may be transmitted to and stored by a third party. Because the skill is specifically meant to gate risky actions like production changes, credential changes, money movement, and customer messaging, the shared transcripts can easily contain confidential or regulated data.

Content

No source excerpt is available for this finding.

Missing User Warnings

Medium
Category
Not specified by scanner
Confidence
95% confidence
Finding

The script transmits the provided transcript and tool-call data to a remote hosted service for adjudication, and there is no in-script consent, redaction, or sensitivity filtering before exfiltration. In agent contexts, transcripts and tool calls can contain secrets, customer data, internal URLs, or operational details, so sending them off-box creates a real confidentiality and compliance risk even if this is the intended product behavior.

Content

No source excerpt is available for this finding.

External Transmission

Medium
Category
Data Exfiltration
Confidence
97% confidence
Finding

This curl call sends the assembled JSON body, including transcript and tool-call details, to an external endpoint along with an authorization token. Because the skill is specifically designed to inspect potentially risky actions, the exported content is likely to be sensitive, making this external transmission a substantive data exposure risk rather than a mere implementation detail.

Content

Scanner excerpt · scripts/jev-gate-check (reported line 35)May include surrounding context.

text
BODY=$(python3 -c 'import json,sys; print(json.dumps({"transcript": sys.argv[1], "tool_calls": json.loads(sys.argv[2])}))' \
  "$TRANSCRIPT" "$CALLS")

RESPONSE=$(curl -sS --max-time 30 -w '\n%{http_code}' "$GATE/v1/gate" \
  -H "Authorization: Bearer $JEV_GATE_KEY" \
  -H 'content-type: application/json' \
  -d "$BODY" 2>/dev/null) || {

Static analysis

No suspicious patterns detected.