Authorization Bypass Affecting github.com/argoproj/argo-cd/util/session package, versions >=0.0.0


Severity

Recommended
0.0
high
0
10

CVSS assessment made by Snyk's Security Team

    Threat Intelligence

    EPSS
    0.1% (44th percentile)

Do your applications use this vulnerable package?

In a few clicks we can analyze your entire application and see what components are vulnerable in your application, and suggest you quick fixes.

Test your applications
  • Snyk ID SNYK-GOLANG-GITHUBCOMARGOPROJARGOCDUTILSESSION-3248487
  • published 26 Jan 2023
  • disclosed 25 Jan 2023
  • credit ChangZhuo Chen (@czchen)

How to fix?

A fix was pushed into the master branch but not yet published.

Overview

github.com/argoproj/argo-cd/util/session is a Declarative continuous deployment for Kubernetes.

Affected versions of this package are vulnerable to Authorization Bypass which allows a malicious Argo CD user to deploy Applications outside the configured allowed namespaces.

Note:

  1. This bug only applies to users who have explicitly enabled the "apps-in-any-namespace" feature by setting application.namespaces in the argocd-cmd-params-cm ConfigMap or otherwise setting the --application-namespaces flags on the Application controller and API server components.

  2. The vulnerability is limited to Argo CD instances where sharding is enabled by increasing the replicas count for the Application controller.

  3. The AppProjects' sourceNamespaces field acts as a secondary check against this exploit. To cause reconciliation of an Application in an out-of-bounds namespace, an AppProject must be available which permits Applications in the out-of-bounds namespace.

Workarounds

Users that are not able to update to a fixed version are advised to run only one replica of the Application controller. It will prevent the exploitation of this issue.

Also, making sure all AppProjects' sourceNamespaces are restricted within the confines of the configured Application namespaces will also prevent exploitation of this bug.

References

CVSS Scores

version 3.1
Expand this section

Snyk

Recommended
8.5 high
  • Attack Vector (AV)
    Network
  • Attack Complexity (AC)
    High
  • Privileges Required (PR)
    Low
  • User Interaction (UI)
    None
  • Scope (S)
    Changed
  • Confidentiality (C)
    High
  • Integrity (I)
    High
  • Availability (A)
    High
Expand this section

NVD

8.5 high