Skills container-grype
๐Ÿ“ฆ

container-grype

v0.1.0 Content revision r2 Critical โš™๏ธ External commands๐ŸŒ Network access๐Ÿ“ Filesystem access๐Ÿ”‘ Env variablesโšก Contains scripts

Scan Containers and Prioritize Vulnerabilities

Container findings are difficult to rank across severity, exploitability, and exposure. This skill guides Grype scans and practical remediation priorities.

Supports: Claude Codex Code(CC)
โš ๏ธ 38 Poor

Install with my Agent

Copy this request to your Agent. It includes the canonical Skill page and manifest.

Agent request
Review the Skillstore skill "container-grype" from https://skillstore.io/skills/agentsecops-container-grype.md and its manifest at https://skillstore.io/api/skills/agentsecops-container-grype/manifest. Verify the artifact. Do not auto-install. Inspect the skill and report your findings, then wait for an operator or manual installation decision.

Your Agent should still show its plan and request any confirmation required by the security policy.

Agent-readable resources

Use these links when an AI agent, crawler, or script needs clean context instead of reading the full page.

Test it

Using "container-grype". Prioritize three findings: a KEV high, a critical with low EPSS, and a medium with high EPSS.

Expected outcome:

Priority 1 is the KEV high because exploitation is confirmed. Priority 2 is the high-EPSS medium. Priority 3 is the low-EPSS critical.

Using "container-grype". Recommend a production gate for a container image.

Expected outcome:

  • Block releases with critical or high findings that have available fixes.
  • Escalate every CISA KEV finding regardless of CVSS score.
  • Store SARIF and human-readable reports as restricted build artifacts.

Using "container-grype". Explain whether a Grype ignore rule is acceptable.

Expected outcome:

Accept the rule only with exact scope, evidence, an owner, an expiration date, and a scheduled rescan. Avoid package-wide or fix-state-wide suppressions.

Security Audit

Critical
v9 โ€ข 7/23/2026 Open versioned report

Most static matches are false positives caused by Markdown formatting, defensive examples, and normal Grype configuration. Confirmed risks include unpinned pipe-to-shell installers, Docker socket exposure, and unquoted Tekton parameters that permit command injection. Semantic review also found bypassable security gates, broad ignore rules, and mutable CI dependencies.

11
Files scanned
3,469
Lines analyzed
6
Review items
0
False positives ignored

Confirmed security concerns (7)

Critical
Pipe to shell pattern
curl -s https://raw.githubusercontent.com/aquasecurity/tfsec/master/scripts/install_linux.sh | bash
The template pipes an unpinned remote installer directly into bash. A compromised branch, repository, or connection endpoint would gain code execution in the CI runner.
Critical
Pipe to shell pattern
curl -sSfL https://raw.githubusercontent.com/anchore/grype/main/install.sh | sh -s -- -b /usr/local/
The CircleCI example streams an unpinned main-branch installer into a shell. Upstream compromise or an unexpected change would execute with runner permissions.
Critical
Pipe to shell pattern
curl -sSfL https://raw.githubusercontent.com/anchore/grype/main/install.sh | sh -s -- -b /usr/local/
The Azure Pipelines example streams an unpinned main-branch installer into a shell. Upstream compromise or an unexpected change would execute with runner permissions.
Critical
Docker socket access
args '-v /var/run/docker.sock:/var/run/docker.sock'
The Jenkins container mounts the host Docker socket. Code in that container can control the Docker daemon and commonly obtain host-level access.
High
Security gates can pass without enforcing findings
Node audit output is never evaluated, and the IaC stage converts scanner failures into warnings. Vulnerable builds can pass despite the template presenting these checks as gates.
The Node command is followed by no result check, while the IaC block uses || true and leaves exit 1 commented out.
High
CI examples execute mutable action and image references
The templates use a GitHub Action from master and Grype container images tagged latest. Future upstream changes can execute without repository review or digest verification.
The files explicitly reference aquasecurity/trivy-action@master, set GRYPE_VERSION to latest, and run anchore/grype:latest.
Medium
Example configuration suppresses broad vulnerability classes
The bundled Grype configuration ignores every wont-fix vulnerability and all matches for a named package. Copying it can hide real findings without expiry or target-specific justification.
The active ignore rules include fix-state: wont-fix and a package-only pytest match, both broader than the example-specific CVE suppressions.
Capability review items (6)

These are real local capabilities that may be expected for this skill, so they require review but are not counted as confirmed malicious behavior.

High
Shell command substitution
grype $(params.IMAGE) \
Tekton substitutes the user-supplied IMAGE parameter directly into an unquoted shell command. Shell metacharacters in the parameter can inject commands into the task.
High
Shell command substitution
--fail-on $(params.SEVERITY_THRESHOLD) \
Tekton substitutes the severity parameter directly into an unquoted shell command. A crafted parameter value can alter arguments or inject additional shell commands.
High
Shell command substitution
grype $(params.IMAGE) -o table | tee /workspace/grype-report.txt
The user-supplied IMAGE parameter is expanded unquoted in a second shell pipeline. This repeats the command-injection path in the report-generation command.
Low
Hardcoded URL
curl -s https://raw.githubusercontent.com/aquasecurity/tfsec/master/scripts/install_linux.sh | bash
This URL is used to download an installer that is immediately executed. The mutable upstream script creates a supply-chain exposure even though the domain is legitimate.
Low
Hardcoded URL
curl -sSfL https://raw.githubusercontent.com/anchore/grype/main/install.sh | sh -s -- -b /usr/local/
This URL supplies executable installer content from a mutable main branch. Its direct use in CI creates a real external supply-chain dependency.
Low
Hardcoded URL
curl -sSfL https://raw.githubusercontent.com/anchore/grype/main/install.sh | sh -s -- -b /usr/local/
This URL supplies executable installer content from a mutable main branch. Its direct use in CI creates a real external supply-chain dependency.

Risk Factors

โš™๏ธ External commands (50)
๐ŸŒ Network access (29)
๐Ÿ“ Filesystem access (5)
๐Ÿ”‘ Env variables (23)
โšก Contains scripts (2)

Detected Patterns

Pipe to shell patternร—3Docker socket access
Audited by: codex View Audit History โ†’
Share & cite this report

Share the versioned assessment report, neutral badge, embed card, and citations. Skillstore reports evidence without deciding whether this Skill is safe.

Open versioned report
Security Assessment

Copy report link

https://skillstore.io/skills/agentsecops-container-grype/audits/9?utm_source=security_passport&utm_medium=share&utm_campaign=versioned_report

Markdown badge

[![Skillstore security assessment](https://skillstore.io/badges/skills/agentsecops-container-grype/security.svg)](https://skillstore.io/skills/agentsecops-container-grype?utm_source=security_passport_badge)

HTML badge

<a href="https://skillstore.io/skills/agentsecops-container-grype?utm_source=security_passport_badge"><img src="https://skillstore.io/badges/skills/agentsecops-container-grype/security.svg" alt="Skillstore security assessment" loading="lazy"></a>

Embed card

<iframe src="https://skillstore.io/embed/skills/agentsecops-container-grype.html" title="Skillstore Security Assessment" sandbox="allow-popups allow-popups-to-escape-sandbox" loading="lazy" referrerpolicy="no-referrer" width="420" height="180"></iframe>
Academic citations (APA ยท BibTeX ยท CFF)

APA citation

AgentSecOps. (2026). container-grype security audit report (audit version 9) [Author version 0.1.0]. Skillstore. https://skillstore.io/skills/agentsecops-container-grype/audits/9

BibTeX citation

@techreport{agentsecops-agentsecops-container-grype-2026, author = {AgentSecOps}, title = {container-grype security audit report (audit version 9)}, institution = {Skillstore}, year = {2026}, number = {9}, url = {https://skillstore.io/skills/agentsecops-container-grype/audits/9}, note = {Author version 0.1.0} }

CITATION.cff

cff-version: 1.2.0 message: "If you use this Skill, cite its author and this versioned security audit report." title: "container-grype security audit report (audit version 9)" version: "0.1.0" type: report authors: - name: "AgentSecOps" date-released: "2026-07-23" url: "https://skillstore.io/skills/agentsecops-container-grype/audits/9" identifiers: - type: other value: "skillstore:agentsecops-container-grype:audit:9" description: "Skillstore immutable audit report identifier"

Skillstore Score

Why this score Evidence Confidence: Medium
59
Architecture
100
Maintainability
87
Content
71
Community
91
Spec Compliance

What You Can Build

Gate container releases

Add a Grype severity threshold and retain scan reports before deployment.

Prioritize remediation work

Rank package findings using KEV status, EPSS probability, CVSS severity, and fix availability.

Assess software inventories

Scan archived SPDX, CycloneDX, or Syft SBOMs without rebuilding container images.

Try These Prompts

Run a basic scan
Show the safest Grype command to scan [image]. Explain each option and use a production severity threshold.
Review scan findings
Review this Grype report summary: [findings]. Rank the issues by KEV, EPSS, CVSS, fix availability, and package exposure.
Design a CI gate
Design a Grype gate for [CI platform] scanning [image source]. Pin dependencies and retain reports without exposing the Docker socket.
Build a remediation program
Create a remediation plan for [portfolio]. Define SLAs, exception evidence, expiry rules, rescan checks, and metrics for KEV and high-EPSS findings.

Best Practices

  • Pin scanner actions, images, and installers to reviewed immutable versions.
  • Prioritize KEV and high-EPSS findings before relying only on CVSS severity.
  • Document every suppression with evidence, ownership, expiration, and periodic review.

Avoid

  • Do not pipe remote installer content directly into a shell.
  • Do not mount the host Docker socket when an image or SBOM scan is sufficient.
  • Do not ignore scanner exit codes without enforcing equivalent result checks.

Frequently Asked Questions

What targets can Grype scan?
Grype can scan container images, local directories, image archives, and supported SBOM documents.
Does this skill install Grype?
No. It provides commands and pipeline examples. Install a pinned Grype release through a verified package or artifact.
Can it scan without Docker access?
Yes. Scan registry images, image archives, directories, or SBOMs when Docker socket access is unavailable or inappropriate.
How should findings be prioritized?
Address CISA KEV findings first, then high-EPSS issues, critical CVSS findings, and high CVSS findings with reachable vulnerable code.
Which report format should I use?
Use table output for review, SARIF for code platforms, JSON for automation, and CycloneDX for compatible supply chain tools.
When is an ignore rule acceptable?
Use one only after validating impact and recording exact scope, evidence, ownership, expiration, and a future review date.

Developer Details

License

MIT

Author version

v0.1.0

Skillstore revision

r2

Ref

9e952417e76879bc9d853e1b8b2cd6d6d8d4a1c2

Maintenance freshness

7/24/2026

Usage

6 downloads ยท 242 views

File structure

๐Ÿ“ assets/

๐Ÿ“„ .gitkeep

๐Ÿ“„ ci-config-template.yml

๐Ÿ“„ grype-ci-config.yml

๐Ÿ“„ grype-config.yaml

๐Ÿ“„ rule-template.yaml

๐Ÿ“ references/

๐Ÿ“„ cisa_kev.md

๐Ÿ“„ cvss_guide.md

๐Ÿ“„ EXAMPLE.md

๐Ÿ“„ vulnerability_remediation.md

๐Ÿ“„ WORKFLOW_CHECKLIST.md

๐Ÿ“„ SKILL.md