Skip to content

← Public intelligence

crates.io package

skillctl

Open actionable advisories and recorded vendor fixes. This public package view has no inventory attached and cannot establish whether your deployment is affected. A vendor fix never resolves your finding; verify your installed version and the source guidance.

Open advisories

2 actionable advisories, newest first. Withdrawn advisories and news are excluded. Coverage is partial.

  1. Unratedcrates.ioPublished

    skillctl: argument injection, path traversal in --dest, FIFO/device DoS, hardlink exfiltration, and commit-trailer forgery

    GHSA-74p7-6h78-gw8p

    Affected
    • crates.io skillctl < 0.1.3
    Fixed in
    0.1.3· Vendor fix available
    Issue
    Impact Following the path-safety patches in GHSA-wx3m-whqv-xv47 (v0.1.2), a comprehensive multi-angle audit surfaced five further vulnerabilities, now patched in v0.1.3: 1. sourcesha argument injection in git ls-tree (CRITICAL). InstalledSkill.sourcesha deserialized from .skills.toml (committed, PR-mergeable) flowed unvalidated into git ls-tree -r -z <refspec -- <path. Because the refspec sits before --, an attacker who slipped a malicious .skills.toml into a PR could set sourcesha = "--name-only" / --abbrev=0 / --output=… and corrupt the diff classifier (which drives pull / push destructive decisions), or forge a divergence state to trick push --on-divergence overwrite into clobbering the wrong content. 2. FIFO / device / socket denial-of-service in copydirall (CRITICAL). The file-type branch only checked isdir() / issymlink(); a FIFO inside a skill folder fell through to fs::copy, which blocks indefinitely waiting for a writer. A character device like /dev/zero would read until…

    Recommended action: Upgrade to 0.1.3 or later, then redeploy and verify.A vendor fix does not resolve your finding until you verify it in your own systems.

    Sources:github.comSource checked Evidence →
  2. High, CVSS 7.1crates.ioPublished

    skillctl: Path traversal and symlink-follow in skillctl allow arbitrary file disclosure and deletion

    GHSA-wx3m-whqv-xv47

    Affected
    • crates.io skillctl < 0.1.2
    Fixed in
    0.1.2· Vendor fix available
    Issue
    Impact skillctl 0.1.0 and 0.1.1 contained four path-safety vulnerabilities that, in combination, allowed an attacker to: 1. Exfiltrate arbitrary files on the operator's machine by publishing a malicious skills library containing a symlink inside a skill folder (e.g. niania → /home/user/.aws/credentials). The symlink fell through entry.filetype().isdir() in fsutil::copydirall, was dereferenced by fs::copy, and the target's content was copied into the project. A subsequent skillctl push would have published the secret to the (possibly public) library — what the reporter called "round-trip path exfiltration". 2. Delete arbitrary directories outside the project or library root by crafting a .skills.toml with a malicious destination or sourcepath field. Both were deserialized as PathBuf with zero validation. Because Path::join lets an absolute right-hand side replace the base, destination = "/home/user/.ssh" made cwd.join(...) resolve outside the project; .. traversal was equally…

    Recommended action: Upgrade to 0.1.2 or later, then redeploy and verify.A vendor fix does not resolve your finding until you verify it in your own systems.

    Sources:github.comSource checked Evidence →