Skip to content

Security: meigma/blob-argo-cmp

SECURITY.md

Security Policy

Reporting Security Issues

If you discover a security vulnerability in Blob Argo CMP, please report it through GitHub's private vulnerability reporting feature:

  1. Go to the Security tab of this repository
  2. Click "Report a vulnerability"
  3. Provide a detailed description of the issue

Please do not report security vulnerabilities through public GitHub issues, discussions, or pull requests.

Include as much of the following information as possible to help us understand and resolve the issue:

  • Type of issue (e.g., policy bypass, privilege escalation, configuration injection)
  • Full paths of source file(s) related to the issue
  • Location of the affected source code (tag/branch/commit or direct URL)
  • Step-by-step instructions to reproduce the issue
  • Proof-of-concept or exploit code (if possible)
  • Impact of the issue and how an attacker might exploit it

Issues in the Blob Library

For vulnerabilities in the core Blob library (signature verification, archive handling, integrity checks), please report those directly to the Blob repository's security process.

Supported Versions

We provide security updates for the following versions:

Version Supported
1.x

Response Timeline

  • Initial Response: We aim to acknowledge receipt of your vulnerability report within 3 business days.
  • Status Update: We will provide a more detailed response within 10 business days, including our assessment and expected timeline for a fix.
  • Resolution: We strive to resolve critical vulnerabilities within 30 days of the initial report.

Disclosure Policy

We follow a coordinated disclosure process:

  1. Security issues are handled privately until a fix is available.
  2. Once a fix is ready, we will create a security advisory and release a patched version.
  3. We will publicly disclose the vulnerability after users have had reasonable time to update.
  4. Credit will be given to the reporter (unless anonymity is preferred) in the security advisory.

Security Considerations

Blob Argo CMP is a security-focused tool. When deploying and operating it, consider the following:

Policy Configuration

  • Disable inline policies in production: Set allowInlinePolicy: false in the central policy configuration to prevent applications from bypassing centralized policy controls.
  • Require verification: Set requireVerification: true to ensure all blob references are verified before deployment.
  • Use specific patterns: Configure repository match patterns to be as specific as possible to avoid unintended policy matching.

Sidecar Container Security

The provided deployment manifests include security hardening:

  • Non-root user execution (UID 999)
  • Read-only root filesystem
  • Dropped capabilities
  • Seccomp profile

Do not relax these settings without understanding the implications.

Registry Credentials

  • Credentials are read from the Argo CD repo-server's Docker config
  • Use credential helpers rather than storing plain credentials
  • Ensure appropriate RBAC controls on the argocd namespace

Exit Codes

The plugin uses specific exit codes to distinguish security failures:

Code Meaning
0 Success - verification passed
1 Verification failed - policy violation, signature mismatch
2 Configuration error
3 Network/registry error
4 Invalid archive format

Exit code 1 indicates a security-relevant failure and should be treated as a potential supply chain attack or misconfiguration.

Third-Party Dependencies

For vulnerabilities in third-party dependencies:

Learning More

There aren’t any published security advisories