Versioned security assessment

Report ID: SA-D46E6208

7/7/2026, 7:54:34 PM

api-spectral security assessment v8

Skill Security Certification Report

Audit History
Audit model: codex Historical report
Skill name
api-spectral
Version
v8
Maintainer
AgentSecOps
Coverage
10 Files scanned · 3,749 Lines analyzed
Policy version
Unavailable

Highest confirmed finding severity

Critical

2 confirmed security findings require attention.

Installation context

Historical evidence

This report may not describe the currently installable artifact. Open the current Skill page for install guidance.

Open current Skill page

This report does not block or authorize the manifest or ZIP.

Most static findings are false positives caused by Markdown examples, Spectral rule templates, security references, and documented vulnerable-code samples. Confirmed risks remain in the CI templates: remote scripts or rulesets are downloaded from mutable branches, one installer is piped directly to bash, and a GitHub token is passed to an unpinned third-party action.

Report position

Historical report

Open audit history before using this report to install.

Audit attestation

Not attestable

The required immutable binding is incomplete.

Human verification

Not verified

No human verification is recorded for this report.

Coverage

10 Files scanned · 3,749 Lines analyzed

6 items shown for review

Limitations

This report does not claim runtime or sandbox execution and does not prove the absence of side effects.

Evidence chain

Follow the evidence from source binding to the install contract. Available evidence supports verification; it is not a safety guarantee.

  1. Source

    Binding unavailable

  2. Artifact

    Identity incomplete

  3. Audit

    Complete

  4. Install contract

    Open manifest to verify

    Open manifest

Capabilities observed

Observed means this report recorded supporting evidence. Not recorded does not prove that a capability is absent.

Contains scripts

May execute code included with the Skill.

Observed in 2 evidence locations

Network access

May connect to external services.

Observed in 25 evidence locations

Filesystem access

May read or write local files.

Observed in 7 evidence locations

Env variables

May read values from the process environment.

Observed in 18 evidence locations

External commands

May invoke commands or programs outside the Skill.

Observed in 113 evidence locations

Capability review items (4)
Critical
Hardcoded URL
curl -s https://raw.githubusercontent.com/aquasecurity/tfsec/master/scripts/install_linux.sh | bash
The URL is used in a curl-to-bash installer inside a CI template. A compromised remote script would execute arbitrary code in the build runner.
High
Git platform tokens
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
The template passes GITHUB_TOKEN to a third-party action that is referenced by a mutable version tag. This is a legitimate workflow pattern, but it creates a real token exposure risk if that action is compromised.
High
Hardcoded URL
https://raw.githubusercontent.com/SecOpsAgentKit/skills/main/appsec/api-spectral/scripts/parse_spect
The workflow downloads a Python helper from an unpinned branch and then executes that helper. If the remote branch changes maliciously, CI could run attacker-controlled code.
Medium
Hardcoded URL
https://raw.githubusercontent.com/SecOpsAgentKit/skills/main/appsec/api-spectral/assets/spectral-owa
The workflow downloads an OWASP ruleset from an unpinned branch and immediately uses it for validation. A compromised or changed remote file could weaken security checks.

Risk findings

Confirmed security concerns are separated from items that still need review.

Confirmed security concerns (2)

RISK-001 Critical
Pipe to shell pattern
curl -s https://raw.githubusercontent.com/aquasecurity/tfsec/master/scripts/install_linux.sh | bash
The workflow pipes a remote install script directly into bash. This is a real supply-chain execution risk because the script is not pinned or verified before execution.
RISK-002 High
Unpinned CI Actions And Remote Downloads
The CI templates use mutable action references and branch-based downloads, including gitleaks/gitleaks-action@v2, aquasecurity/trivy-action@master, and raw GitHub downloads. Security workflows should pin trusted actions and downloaded files to immutable commits or verified checksums.
The cited workflow lines show mutable tags or branch URLs used in security-sensitive CI steps. This is a clear supply-chain hardening issue, though it appears to be template guidance rather than malicious intent.

Remediation

Suggested fixes recorded by this audit. Applying them is the maintainer’s responsibility.

  1. FIX-001
    Critical
    Remote tfsec installer is piped directly to bash in the CI template.
    Replace curl-to-bash with a pinned package, checksum-verified release artifact, or trusted action pinned to a commit SHA.
  2. FIX-002
    High
    CI templates download helper scripts and rulesets from mutable GitHub branch URLs.
    Pin downloads to immutable commit URLs and verify checksums before execution or use vendored files in the skill package.
  3. FIX-003
    High
    Third-party GitHub Actions are referenced by mutable tags or master branches.
    Pin all third-party actions to reviewed commit SHAs and grant the minimum token permissions required for each job.
  4. FIX-004
    Medium
    Documentation includes many command examples that static scanners flag as executable patterns.
    Label examples as user-run commands, avoid unnecessary shell substitution, and add safer alternatives where possible.

Expert evidence

Immutable subject identity, scanner metadata, dismissed matches, and source-level evidence.

Artifact subject

Marketplace commit
Unavailable
Content hash
Unavailable
Tree hash
Unavailable
Skill path
Unavailable
Audit payload hash
Unavailable

Analysis metadata

Audit model: codex

Analysis state: Complete

Scope is limited to the recorded files, lines, methods, and evidence. No runtime or sandbox execution is claimed.

Verify and export

The manifest and lockfile bind install artifacts to cryptographic hashes. This integrity claim is separate from the security assessment.

Audit attestation: not_attestable