CVE-2026-54248: Doco-CD has an OCI Trust Policy Bypass via Artifact-Contained Configuration

Published Sep 11, 2026
·
Updated

Doco-CD is a GitOps continuous delivery tool that automatically deploys and updates Docker Compose projects/services and Swarm stacks. Prior to version 0.90.1, a trust-boundary flaw in OCI artifact verification allowed artifact-provided deployment config to influence the policy used to verify that same artifact. When global OCI signature verification was enabled via OCITRUSTPOLICY (enabled: true), an attacker with write access to the configured OCI tag could publish an unsigned or improperly signed artifact containing .doco-cd.yml with oci.verify: false. This could cause signature verification to be bypassed and untrusted deployment content to be applied. This primarily impacts users deploying from OCI artifacts where deployment config is read from artifact contents (for example, poll/webhook flows without trusted inline deployment overrides). The issue is fixed by enforcing a strict trust boundary and no-downgrade behavior. First, artifact-contained .doco-cd.yml is treated as untrusted for OCI trust-policy override decisions. Second, if global OCITRUSTPOLICY.enabled is true, per-deployment oci.verify: false cannot disable verification. Some workarounds are available. Do not source deployment config from untrusted OCI artifact contents. Use trusted inline POLLCONFIG.deployments and avoid relying on artifact-contained trust-policy overrides. Restrict write/push permissions for OCI repositories/tags used by doco-cd. Prefer immutable digest pinning and protected release/tag workflows. Monitor for unexpected artifact digest changes and failed/suspicious verification events.

Affected Software

1 affected component
Doco-CD Doco-CD<0.90.1

Remediation

Recommended actions to resolve this vulnerability, in priority order.

  1. Upgrade

    Upgrade Doco-CD to a version that resolves this vulnerability.

    Fixed in 0.90.1
  2. Configuration

    Use trusted inline `POLL_CONFIG.deployments` to supply deployment config, and avoid relying on artifact-contained `.doco-cd.yml` where deployment config is read from artifact contents (e.g., poll/webhook flows without trusted inline deployment overrides).

    Doco-CD (inline trusted configuration) POLL_CONFIG.deployments (trusted inline overrides) = use trusted inline deployments instead of relying on artifact-contained `.doco-cd.yml`
  3. Configuration

    If you use global OCI signature verification, keep `OCI_TRUST_POLICY.enabled: true` so that per-deployment `oci.verify: false` cannot disable verification.

    Doco-CD (OCI trust policy) OCI_TRUST_POLICY.enabled = true
  4. Compensating control

    Monitor for unexpected OCI artifact digest changes and failed/suspicious verification events.

  5. Compensating control

    Prefer immutable digest pinning and protected release/tag workflows for the OCI artifacts used by Doco-CD.

  6. Compensating control

    Restrict write/push permissions for the OCI repositories/tags used by Doco-CD (an attacker with write access to the configured OCI tag could publish an unsigned/improperly signed artifact with `.doco-cd.yml` where `oci.verify: false`).

Event History

Sep 11, 2026
CVE Published
via MITRE·09:24 PM
Data Sourced
via MITRE·09:24 PM
DescriptionSeverityWeakness

Frequently Asked Questions

1

Which deployments are most exposed to this issue?

Deployments sourced from OCI artifacts are primarily affected when Doco-CD reads deployment configuration from artifact contents. Poll or webhook flows without trusted inline deployment overrides are examples of exposed configurations.

2

What access would an attacker need?

An attacker needs write access to the configured OCI tag. They could then publish an unsigned or improperly signed artifact containing a .doco-cd.yml file that sets oci.verify to false.

3

Is global OCI signature verification sufficient to prevent exploitation in affected versions?

No. Before version 0.90.1, an artifact-provided configuration could disable verification even when OCI_TRUST_POLICY had enabled set to true.

4

What version resolves the issue?

Version 0.90.1 fixes the issue by treating artifact-contained .doco-cd.yml as untrusted for OCI trust-policy override decisions and preventing per-deployment oci.verify false from disabling globally enabled verification.

Contact

SecAlerts Pty Ltd.
132 Wickham Terrace
Fortitude Valley,
QLD 4006, Australia
info@secalerts.co
By using SecAlerts services, you agree to our services end-user license agreement. This website is safeguarded by reCAPTCHA and governed by the Google Privacy Policy and Terms of Service. All names, logos, and brands of products are owned by their respective owners, and any usage of these names, logos, and brands for identification purposes only does not imply endorsement. If you possess any content that requires removal, please get in touch with us.
© 2026 SecAlerts Pty Ltd.
ABN: 70 645 966 203, ACN: 645 966 203