Dieser Bericht ist nicht in der angeforderten Sprache verfügbar. Stattdessen wird der maßgebliche englische Bericht angezeigt.

Versionierte Sicherheitsbewertung

Berichts-ID: SA-776F3ACE

7/5/2026, 7:16:22 AM

cloudflare Sicherheitsbewertung v3

Zertifizierungsbericht zur Skill-Sicherheit

Audit-Verlauf
Auditmodell: codex Historischer Bericht
Skillname
cloudflare
Version
v3
Betreuer
cloudflare
Abdeckung
321 Gescannte Dateien · 49,016 Analysierte Zeilen
Richtlinienversion
Nicht verfügbar

Höchster bestätigter Schweregrad eines Befunds

Kritisch

4 bestätigte Sicherheitsbefunde erfordern Aufmerksamkeit.

Installationskontext

Historische Nachweise

Dieser Bericht beschreibt möglicherweise nicht das derzeit installierbare Artefakt. Öffnen Sie die aktuelle Skill-Seite für Installationshinweise.

Aktuelle Skill-Seite öffnen

Dieser Bericht blockiert oder autorisiert weder das Manifest noch die ZIP-Datei.

Most static findings are false positives from Markdown, Cloudflare API examples, SQL exec calls, and documented placeholder secrets. Confirmed risks remain in Sandbox examples that promote unsafe shell execution, token-in-URL cloning, and untrusted command construction, plus Tunnel service-install examples that require administrator approval.

Position melden

Historischer Bericht

Öffnen Sie den Auditverlauf, bevor Sie diesen Bericht zur Installation verwenden.

Audit-Nachweis

Nicht bescheinigungsfähig

Die erforderliche unveränderliche Bindung ist unvollständig.

Menschliche Überprüfung

Nicht überprüft

Für diesen Bericht ist keine menschliche Überprüfung verzeichnet.

Abdeckung

321 Gescannte Dateien · 49,016 Analysierte Zeilen

27 Elemente zur Überprüfung angezeigt

Einschränkungen

Dieser Bericht beansprucht keine Laufzeit- oder Sandbox-Ausführung und beweist nicht das Fehlen von Nebenwirkungen.

Beweiskette

Folgen Sie den Nachweisen von der Quellenbindung bis zum Installationsvertrag. Verfügbare Nachweise unterstützen die Überprüfung; sie sind keine Sicherheitsgarantie.

  1. Quelle

    Bindung nicht verfügbar

  2. Artefakt

    Identität unvollständig

  3. Prüfung

    Vollständig

  4. Installationsvertrag

    Manifest zur Überprüfung öffnen

    Manifest öffnen

Beobachtete Funktionen

„Beobachtet“ bedeutet, dass dieser Bericht unterstützende Nachweise erfasst hat. Nicht erfasst bedeutet nicht, dass eine Fähigkeit nicht vorhanden ist.

Enthält Skripte

Kann mit dem Skill enthaltenen Code ausführen.

An 66 Nachweisstellen beobachtet

Netzwerkzugriff

Kann eine Verbindung zu externen Diensten herstellen.

An 928 Nachweisstellen beobachtet

Dateisystemzugriff

Kann lokale Dateien lesen oder schreiben.

An 228 Nachweisstellen beobachtet

Umgebungsvariablen

Kann Werte aus der Prozessumgebung lesen.

An 200 Nachweisstellen beobachtet

Externe Befehle

Kann Befehle oder Programme außerhalb des Skills aufrufen.

An 565 Nachweisstellen beobachtet

Elemente der Fähigkeitsprüfung (23)
Kritisch
Python exec() function
await sandbox.exec('curl -fsSL https://code-server.dev/install.sh | sh');
This finding is tied to the same curl-to-shell sandbox example. It fetches code from the network and executes it without pinning or verification.
Kritisch
Process exec
await sandbox.exec('curl -fsSL https://code-server.dev/install.sh | sh');
This finding is tied to the same curl-to-shell sandbox example. It fetches code from the network and executes it without pinning or verification.
Kritisch
Hardcoded URL
await sandbox.exec('curl -fsSL https://code-server.dev/install.sh | sh');
This finding is tied to the same curl-to-shell sandbox example. It fetches code from the network and executes it without pinning or verification.
Hoch
Python exec() function
const result = await sandbox.exec('python /tmp/code.py');
The lifecycle example writes a variable named code to /tmp/code.py and executes it. This is safe only for trusted code and needs explicit validation guidance.
Hoch
Process exec
const result = await sandbox.exec('python /tmp/code.py');
The lifecycle example writes a variable named code to /tmp/code.py and executes it. This is safe only for trusted code and needs explicit validation guidance.
Hoch
Temp directory access
await sandbox.writeFile('/tmp/code.py', code);
The lifecycle example writes a variable named code to /tmp/code.py and executes it. This is safe only for trusted code and needs explicit validation guidance.
Hoch
Temp directory access
const result = await sandbox.exec('python /tmp/code.py');
The lifecycle example writes a variable named code to /tmp/code.py and executes it. This is safe only for trusted code and needs explicit validation guidance.
Hoch
Python exec() function
return await sandbox.exec(cmd);
The retry helper executes a caller-supplied command string. It may be legitimate, but it needs a validation boundary to avoid command injection.
Hoch
Process exec
return await sandbox.exec(cmd);
The retry helper executes a caller-supplied command string. It may be legitimate, but it needs a validation boundary to avoid command injection.
Hoch
Python exec() function
await sandbox.exec(`git clone -b ${branch} ${repo} /workspace/repo`);
The CI example interpolates request-supplied repo and branch values directly into a shell command. This creates a command-injection risk unless inputs are strictly validated.
Hoch
Python exec() function
const result = await session.exec(`python3 -c "${code}"`);
The session example executes request body content through python3 -c with shell interpolation. This is unsafe untrusted code execution guidance.
Hoch
Python exec() function
await sandbox.exec(`git clone https://${env.GITHUB_TOKEN}@github.com/user/repo.git`);
The example embeds GITHUB_TOKEN directly in a git clone URL. Tokens in URLs can leak through logs, shell history, process listings, and error messages.
Hoch
Process exec
await sandbox.exec(`git clone -b ${branch} ${repo} /workspace/repo`);
The CI example interpolates request-supplied repo and branch values directly into a shell command. This creates a command-injection risk unless inputs are strictly validated.
Hoch
Process exec
const result = await session.exec(`python3 -c "${code}"`);
The session example executes request body content through python3 -c with shell interpolation. This is unsafe untrusted code execution guidance.
Hoch
Process exec
await sandbox.exec(`git clone https://${env.GITHUB_TOKEN}@github.com/user/repo.git`);
The example embeds GITHUB_TOKEN directly in a git clone URL. Tokens in URLs can leak through logs, shell history, process listings, and error messages.
Hoch
Ruby/shell backtick execution
await sandbox.exec(`git clone -b ${branch} ${repo} /workspace/repo`);
The CI example interpolates request-supplied repo and branch values directly into a shell command. This creates a command-injection risk unless inputs are strictly validated.
Hoch
Ruby/shell backtick execution
const result = await session.exec(`python3 -c "${code}"`);
The session example executes request body content through python3 -c with shell interpolation. This is unsafe untrusted code execution guidance.
Hoch
Ruby/shell backtick execution
await sandbox.exec(`git clone https://${env.GITHUB_TOKEN}@github.com/user/repo.git`);
The example embeds GITHUB_TOKEN directly in a git clone URL. Tokens in URLs can leak through logs, shell history, process listings, and error messages.
Hoch
Hardcoded URL
await sandbox.exec(`git clone https://${env.GITHUB_TOKEN}@github.com/user/repo.git`);
The example embeds GITHUB_TOKEN directly in a git clone URL. Tokens in URLs can leak through logs, shell history, process listings, and error messages.
Hoch
Git platform tokens
await sandbox.exec(`git clone https://${env.GITHUB_TOKEN}@github.com/user/repo.git`);
The example embeds GITHUB_TOKEN directly in a git clone URL. Tokens in URLs can leak through logs, shell history, process listings, and error messages.
Hoch
sudo privilege escalation
sudo cloudflared service install
The documentation instructs use of sudo to install or start cloudflared services. This is legitimate administration, but it is privileged execution that needs explicit human approval.
Hoch
sudo privilege escalation
sudo launchctl start com.cloudflare.cloudflared
The documentation instructs use of sudo to install or start cloudflared services. This is legitimate administration, but it is privileged execution that needs explicit human approval.
Mittel
Hardcoded IP address
await sandbox.startProcess('code-server --bind-addr 0.0.0.0:8080', {
The example starts code-server on 0.0.0.0 after installing it in a sandbox. Exposing an IDE on all interfaces is risky without explicit authentication guidance.

Risikofunde

Bestätigte Sicherheitsbedenken werden von Punkten getrennt, die noch überprüft werden müssen.

Bestätigte Sicherheitsbedenken (4)

RISK-001 Kritisch
Pipe to shell pattern
await sandbox.exec('curl -fsSL https://code-server.dev/install.sh | sh');
The example pipes a remotely fetched install script directly into sh inside a sandbox. This is a classic unsafe installation pattern and should not be promoted as a common pattern.
RISK-002 Hoch
Systemd service enablement
systemctl start cloudflared && systemctl enable cloudflared
The command enables a persistent systemd service. This is legitimate for Tunnel setup but creates persistence and should be clearly gated behind admin approval.
RISK-003 Hoch
[HEURISTIC] SUSPICIOUS COMBINATION: Code execution + Persistence mechanism
This combination is common in malware that maintains access
The repository contains confirmed pipe-to-shell and persistent service-install examples. The evidence is documentation rather than hidden executable code, so confidence is moderate.
RISK-004 Hoch
Unsafe Sandbox Command Patterns Presented as Examples
The Sandbox reference includes common-pattern examples that pipe a remote installer into a shell, interpolate request values into git commands, and execute request body code. These examples need stronger warnings and safer alternatives.
The cited lines present these commands under common patterns, not only as anti-patterns. Static analysis finds the mechanics, but the framing as recommended examples is the additional risk.

Abhilfemaßnahmen

Von diesem Audit vorgeschlagene Korrekturen wurden erfasst. Ihre Umsetzung liegt in der Verantwortung des Maintainers.

  1. FIX-001
    Kritisch
    Sandbox documentation promotes curl-to-shell installation.
    Replace the pipe-to-shell pattern with a pinned, checksum-verified install flow or documented package manager steps.
  2. FIX-002
    Hoch
    Sandbox examples interpolate request-controlled values into shell commands.
    Use allowlists, strict URL validation, argument arrays where available, and avoid shell interpolation for repo, branch, and code values.
  3. FIX-003
    Hoch
    A git clone example embeds GITHUB_TOKEN in a URL.
    Use credential helpers, short-lived scoped tokens, or environment-based authentication that does not expose tokens in command strings.
  4. FIX-004
    Hoch
    Tunnel examples install and enable persistent system services.
    Mark these commands as manual administrator actions and include rollback, audit, and least-privilege guidance.

Expertennachweise

Unveränderliche Subjektidentität, Scanner-Metadaten, verworfene Treffer und Nachweise auf Quellcodeebene.

Artefakt-Subjekt

Marketplace-Commit
Nicht verfügbar
Inhalts-Hash
Nicht verfügbar
Tree-Hash
Nicht verfügbar
Skill-Pfad
Nicht verfügbar
Hash der Audit-Nutzlast
Nicht verfügbar

Analysemetadaten

Auditmodell: codex

Analysestatus: Vollständig

Der Umfang ist auf die aufgezeichneten Dateien, Zeilen, Methoden und Nachweise beschränkt. Es wird keine Ausführung in einer Laufzeitumgebung oder Sandbox beansprucht.

Statische falsch positive Treffer ignoriert (4)
Kritisch
System password file access
const key = url.pathname.slice(1); // Could be ../../../etc/passwd
Force-confirmed blocker/critical static finding; AI dismissal overridden.
Kritisch
Long fromCharCode sequence
return btoa(String.fromCharCode(...new Uint8Array(sig)));
Force-confirmed obfuscation/critical static finding; AI dismissal overridden.
Kritisch
Long fromCharCode sequence
const b64Sig = btoa(String.fromCharCode(...new Uint8Array(sig))).replace(/=/g, '').replace(/\+/g, '-
Force-confirmed obfuscation/critical static finding; AI dismissal overridden.
Hoch
Screen capture upload
| `/screenshot` | Capture image | `screenshotOptions: {type, fullPage, clip}` |
Force-confirmed blocker/high static finding; AI dismissal overridden.

Verifizieren und exportieren

Das Manifest und die Lockdatei binden Installationsartefakte an kryptografische Hashes. Diese Integritätsaussage ist von der Sicherheitsbewertung getrennt.

Audit-Nachweis: not_attestable