CI/CD systems hold the keys to everything: cloud credentials, signing keys, package registries and the ability to ship code to every user. Through 2026, pipeline compromise became one of the most exploited attack paths in software — which makes the pipeline itself a production system deserving production security.
Pin everything
Pin action versions to commit SHAs rather than floating tags, lock dependency versions with integrity hashes, and pin base images by digest. Floating references are convenient until a compromised upstream publishes a malicious update that every build silently pulls.
Verify what you produce
Sign build artifacts and generate an SBOM for every release. Consumers of your builds then have something to verify against, and you gain the ability to detect if a released artifact does not match your pipeline output.

Assume the pipeline is targeted
Restrict who can modify workflow files, require review for pipeline changes, and alert on new outbound network calls during builds. An attacker who controls CI controls every release you will ever make, which makes it a more valuable target than most production servers.
Hardening the pipeline
The baseline controls are now well established: OIDC instead of stored secrets, ephemeral runners for untrusted workloads, pinned action and dependency versions (a moving tag is not a pin), protected environments with required review for production credentials, and full audit logging of every pipeline change. Treat pipeline configuration with the same review rigor as authentication code — attackers certainly do.
Watching what the pipeline consumes
Dependencies flow through CI even when application dependencies are locked: base images, marketplace actions, plugin updates and shared templates all execute with your credentials. Inventory them, verify signatures and attestations where available (SLSA provenance, image signing), and alert on new or unpinned transitive components. The 2026 breaches shared one trait — a trusted component changed hands or behavior below the review layer.

Key takeaways
- Pipeline config executes with credentials — review it like auth code.
- Pin actions, images and templates; moving tags are not pins.
- Inventory and attest everything the pipeline consumes.
Final thoughts
Securing CI/CD is the highest-leverage security work in the delivery chain: one hardened pipeline protects every artifact, credential and deployment downstream, while one soft pipeline makes all other controls performative.