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

Versionierte Sicherheitsbewertung

Berichts-ID: SA-18789A6C

10/13/2026, 2:45:11 PM

spawn Sicherheitsbewertung v12

Zertifizierungsbericht zur Skill-Sicherheit

Audit-Verlauf
Scanner-Version 3.0.0 Auditmodell: codex Zuletzt veröffentlichter Bericht
Skillname
spawn
Version
v12
Betreuer
Consiliency
Abdeckung
12 Gescannte Dateien · 1,587 Analysierte Zeilen
Richtlinienversion
skillstore-security-audit-policy-v1

Current license

MIT

Höchster bestätigter Schweregrad eines Befunds

Hoch

1 bestätigter Sicherheitsbefund erfordert Aufmerksamkeit.

Installationskontext

Überprüfen Sie die aktuelle Skill-Seite

Diese Seite fasst nur die Berichtsnachweise zusammen. Die Skill-Seite enthält den maßgeblichen Installationshinweis.

Aktuelle Skill-Seite öffnen

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

The 86 findings include real shell quoting and temporary-file risks, alongside false positives from documentation, platform detection, and dictionary operations. Provider instructions also recommend disabling approval safeguards and, for Codex, the sandbox. No evidence found of credential theft, concealed malware, or instructions to manipulate this audit.

Position melden

Zuletzt veröffentlichter Bericht

„Zuletzt“ bezieht sich auf die Berichtsreihenfolge, nicht auf die Aktualität des Artefakts.

Audit-Nachweis

Aktive Attestierung

Für genau diesen Bericht ist eine öffentliche Attestierung verfügbar.

Menschliche Überprüfung

Nicht überprüft

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

Abdeckung

12 Gescannte Dateien · 1,587 Analysierte Zeilen

24 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

    An Commit und Pfad gebunden

  2. Artefakt

    An Inhalts- und Baum-Hashes gebunden

  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.

Durch dieses Audit nicht erfasst

Netzwerkzugriff

Kann eine Verbindung zu externen Diensten herstellen.

Durch dieses Audit nicht erfasst

Dateisystemzugriff

Kann lokale Dateien lesen oder schreiben.

An 23 Nachweisstellen beobachtet

Umgebungsvariablen

Kann Werte aus der Prozessumgebung lesen.

An 3 Nachweisstellen beobachtet

Externe Befehle

Kann Befehle oder Programme außerhalb des Skills aufrufen.

An 48 Nachweisstellen beobachtet

Elemente der Fähigkeitsprüfung (23)
Hoch
Python subprocess.run
subprocess.run(
The AppleScript contains unescaped shell_cmd text, including unquoted cwd. Quotes or metacharacters in directory names can change the executed script.
Hoch
Python subprocess.run
subprocess.run(f"cmd.exe /c 'start cmd /k wsl -- {command}'", shell=True)
The fallback interpolates command into nested Unix and Windows shell text with shell=True. Embedded quotes can cross parser boundaries and execute unintended commands.
Hoch
Python subprocess.Popen
subprocess.Popen(wt_cmd, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
The argument list launches PowerShell with generated script text. POSIX shlex.quote does not safely escape PowerShell cwd values, allowing directory text to become code.
Hoch
Python subprocess.Popen
subprocess.Popen(wrapped_cmd, shell=True, cwd=cwd)
Caller-supplied command text is executed with shell=True and no restricted argument mode. Legitimate shell use is intended, but untrusted interpolated data can execute commands.
Hoch
Python subprocess.Popen
subprocess.Popen(wrapped_cmd, shell=True, cwd=cwd)
The debug path executes arbitrary command text with shell=True. The caller trust boundary is unspecified, so unsafe interpolation remains a risk.
Hoch
Python subprocess.Popen
subprocess.Popen(command, shell=True, cwd=cwd)
The fallback passes caller-supplied command directly to shell=True without validation. Requested shell execution is legitimate, but untrusted command construction is not protected.
Hoch
PowerShell invocation
"wt.exe", "-w", "new", "powershell.exe",
PowerShell receives generated script text using POSIX quoting for cwd. That mismatch can interpret directory-name characters as PowerShell syntax.
Hoch
Windows cmd.exe
subprocess.run(f"cmd.exe /c 'start cmd /k wsl -- {command}'", shell=True)
Command text is embedded in a cmd.exe command passed through another shell. Missing parser-specific escaping permits unintended interpretation of embedded quotes and metacharacters.
Mittel
Temp directory access
agent_output_file = f"/tmp/fork-agent-{output_id}.json" if log_agent_output else None
Agent output is written by tee into shared /tmp without private permissions or exclusive creation. Sensitive responses may be readable under common umasks.
Mittel
Temp directory access
debug_output_file = f"/tmp/fork-debug-{output_id}.txt" if log_to_file else None
Debug logs collect terminal output in shared /tmp without permission hardening. Logs may expose sensitive output to other local users.
Mittel
Temp directory access
done_file = f"/tmp/fork-output-{output_id}.done"
The completion marker is not securely created or checked for ownership. Another local user who discovers the filename can spoof completion.
Mittel
Temp directory access
agent_output_file = f"/tmp/fork-agent-{output_id}.json" if log_agent_output else None
The WSL script writes agent output into shared /tmp through tee. No private directory, restrictive permissions, or exclusive creation protects the response.
Mittel
Temp directory access
debug_output_file = f"/tmp/fork-debug-{output_id}.txt" if log_to_file else None
The WSL debug log stores full terminal output in shared /tmp. Its creation does not enforce privacy or resist existing symlinks.
Mittel
Temp directory access
done_file = f"/tmp/fork-output-{output_id}.done"
The WSL completion marker uses a shared temporary path without exclusive creation or ownership verification. A local attacker can spoof its existence.
Mittel
Temp directory access
script_file = f"/tmp/fork-script-{output_id}.sh"
A shell script containing caller commands is placed directly in shared /tmp. Later nonexclusive creation and permissions 0755 expose its contents and permit symlink attacks.
Mittel
Temp directory access
agent_output_file = f"/tmp/fork-agent-{output_id}.json" if log_agent_output else None
The tmux branch saves agent output in shared /tmp using tee. It does not ensure private permissions or exclusive file creation.
Mittel
Temp directory access
debug_output_file = f"/tmp/fork-debug-{output_id}.txt" if log_to_file else None
The tmux debug path stores terminal output in a shared temporary file. Sensitive output can remain readable under common umasks.
Mittel
Temp directory access
done_file = f"/tmp/fork-output-{output_id}.done"
The tmux completion marker has no secure creation or ownership checks. Its existence can be spoofed by another local user.
Mittel
Temp directory access
agent_output_file = f"/tmp/fork-agent-{output_id}.json" if log_agent_output else None
Background execution writes responses into shared /tmp without permission hardening. Sensitive agent output can be exposed to other local users.
Mittel
Temp directory access
debug_output_file = f"/tmp/fork-debug-{output_id}.txt" if log_to_file else None
The background debug file collects stdout and stderr without private permissions or exclusive creation. This creates disclosure and symlink risks.
Mittel
Temp directory access
done_file = f"/tmp/fork-output-{output_id}.done"
The background completion marker is placed in shared /tmp and checked only for existence. Local users can forge completion after discovering its path.
Mittel
Python file write/append
with open(script_file, 'w') as f:
open(script_file, 'w') follows existing symlinks and truncates their targets. The script is created in shared /tmp without exclusive or no-follow flags.
Mittel
Python os file operations
os.chmod(script_file, 0o755)
chmod sets command-bearing scripts to 0755, exposing prompts to other local users. It also follows a substituted symlink when changing target permissions.

Risikofunde

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

Bestätigte Sicherheitsbedenken (1)

RISK-001 Hoch
Approval and sandbox safeguards disabled by default
The Codex cookbook says: "Always run with `--dangerously-bypass-approvals-and-sandbox` for full auto mode". Cursor similarly recommends force-allowing commands, increasing exposure to destructive actions and injected repository instructions.
These are explicit operational instructions to remove approval controls, not merely flag descriptions. Codex examples also disable sandboxing.

Abhilfemaßnahmen

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

  1. FIX-001
    Hoch
    Provider cookbooks recommend bypassing approvals and sandbox protections.
    Keep approvals and workspace confinement enabled by default. Require explicit user consent before enabling unrestricted execution.
  2. FIX-002
    Hoch
    The macOS launcher inserts cwd and commands into shell and AppleScript text without correct escaping.
    Quote cwd for the shell and escape AppleScript strings separately. Reject malformed inputs and test quotes, spaces, and shell metacharacters.
  3. FIX-003
    Hoch
    Windows uses POSIX quoting for PowerShell, and the WSL fallback interpolates command text across multiple shell parsers.
    Use platform-specific argument handling and avoid nested shell interpolation. Test directory names and prompts containing quotes and metacharacters.
  4. FIX-004
    Hoch
    Background execution accepts arbitrary shell strings without a restricted execution boundary.
    Offer an argument-list execution mode without shell=True. Require confirmation for shell mode and treat prompts and filenames as data.
  5. FIX-005
    Mittel
    Output, completion markers, and executable scripts use shared temporary paths without secure creation or private permissions.
    Create a private temporary directory with exclusive file creation. Use permissions 0600 for logs and 0700 for scripts, then remove artifacts.

Expertennachweise

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

Artefakt-Subjekt

Marketplace-Commit
18789a6c1a8a9ebc818b76ac8686bbd38eb802a8
Inhalts-Hash
6e33576dcdea5824d6a486f854a089549fe3520627d0bae4d0f41a48220d4175
Tree-Hash
a92bcb1c88fe565c8883adb9bf6c07b1bc13ca512914608e5abd34f6470511fd
Skill-Pfad
skills/consiliency/spawn
Hash der Audit-Nutzlast
832fac0330b781f0197473c63359bca3

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.

Verifizieren und exportieren

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

Audit-Nachweis: active