Security findings 7
Code execution
criticalContextual risklow confidenceThe workflows reference instructs the agent to install Syft by piping the install script from the mutable main branch of raw.githubusercontent.com into sh, executing unpinned remote code on the host; this is the official vendor installer shown in fenced installation docs, so it is a contextual risk rather than confirmed abuse.
curl -sSfL https://raw.githubusercontent.com/anchore/syft/main/install.sh | sh -s -- -b /usr/local/bin
conceal:remotevector:instruction
Counter-argument considered
The Syft instruction is the official Anchore vendor installer inside a fenced environment-setup block, installing a Syft CLI that the skill's Prerequisites explicitly declare, so it is declared vendor-tooling setup rather than undeclared or concealed harm.
Code execution
criticalContextual risklow confidenceThe workflows reference instructs the agent to install Grype by piping the install script from the mutable main branch of raw.githubusercontent.com into sh, executing unpinned remote code on the host; this is the official vendor installer shown in fenced installation docs, so it is a contextual risk rather than confirmed abuse.
curl -sSfL https://raw.githubusercontent.com/anchore/grype/main/install.sh | sh -s -- -b /usr/local/bin
conceal:remotevector:instruction
Counter-argument considered
Line 8 repeats the exact install command declared in D1 for the official Anchore vendor installer, inside a fenced environment-setup block, so it is declared vendor-tooling documentation rather than undeclared remote execution.
Code execution
criticalContextual risklow confidenceThe skill's Prerequisites section instructs the agent to install Grype by piping the install script from the mutable main branch of raw.githubusercontent.com directly into sh, executing unpinned remote code on the host; this is the official Anchore vendor installer shown in fenced docs, so it is a contextual risk rather than confirmed abuse.
curl -sSfL https://raw.githubusercontent.com/anchore/grype/main/install.sh | sh -s -- -b /usr/local/bin
conceal:remotevector:instruction
Counter-argument considered
The command is the official Anchore vendor installer from the vendor's own repository, openly documented in the skill's Prerequisites and explicitly declared as the skill's network capability claim D1, so it falls under the vendor-installer/declared-capability carve-outs rather than being undeclared or concealed harm.
Code execution
criticalContextual risklow confidenceThe skill's Install Grype section instructs the agent to pipe the Anchore install script from the mutable main branch of raw.githubusercontent.com into sh, executing unpinned remote code on the host; this is the official vendor installer shown in fenced installation docs, so it is a contextual risk rather than confirmed abuse.
curl -sSfL https://raw.githubusercontent.com/anchore/grype/main/install.sh | sh -s -- -b /usr/local/bin
conceal:remotevector:instruction
Counter-argument considered
The fenced Install Grype section documents the official Anchore vendor installer verbatim (alongside a brew install grype alternative), and the identical fetch is declared as capability claim D1, so this is vendor-installer documentation, not undeclared or concealed abuse.
Supply chain
highContextual risklow confidenceThe workflow reference instructs the agent to fetch and pipe into sh both the Grype (line 8) and Syft (line 11) installers from the unpinned main branch of raw.githubusercontent.com, executing remote code outside the pinned commit during the documented environment-setup phase.
curl -sSfL https://raw.githubusercontent.com/anchore/grype/main/install.sh | sh -s -- -b /usr/local/bin
conceal:remotevector:instruction
Counter-argument considered
Both installers are the official Anchore vendor install scripts shown in fenced setup blocks for the skill's declared Grype/Syft toolchain; the Grype fetch is identical to declared claim D1, so the documented setup is declared and carved out, not concealed supply harm.
Supply chain
highContextual risklow confidenceThe skill's Prerequisites section (undeclared residue R1, an unexplained capability: the declared scanning purpose needs Grype installed but not via unpinned remote code) instructs the agent to pipe the Grype install script fetched from the mutable main branch of raw.githubusercontent.com directly into sh, executing whatever content sits at that URL at runtime, outside the pinned commit.
curl -sSfL https://raw.githubusercontent.com/anchore/grype/main/install.sh | sh -s -- -b /usr/local/bin
conceal:remotevector:instruction
Counter-argument considered
The 'undeclared residue' premise is contradicted by declared claim D1, which declares exactly this fetch-and-install command as the skill's network capability, and the installer is the official Anchore vendor installer documented in the skill's own install docs, a listed carve-out.
Supply chain
highContextual risklow confidenceThe skill's Install Grype section instructs the agent to fetch the Anchore Grype installer from the unpinned main branch and pipe it into sh as a prerequisite setup step, so remote unpinned code is executed on the host if the agent follows the documented setup.
curl -sSfL https://raw.githubusercontent.com/anchore/grype/main/install.sh | sh -s -- -b /usr/local/bin
conceal:remotevector:instruction
Counter-argument considered
The unpinned-fetch behavior at line 62 is the same command declared in D1 and is the official Anchore vendor installer shown in fenced install docs (with a Homebrew alternative offered), so the setup behavior is declared vendor tooling, not concealed supply harm.