Authorization Bypass Affecting github.com/argoproj/argo-cd/cmd/argocd/commands package, versions >=0.0.0


Severity

Recommended
0.0
high
0
10

CVSS assessment made by Snyk's Security Team. Learn more

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 IDSNYK-GOLANG-GITHUBCOMARGOPROJARGOCDCMDARGOCDCOMMANDS-3248486
  • published26 Jan 2023
  • disclosed25 Jan 2023
  • creditChangZhuo Chen (@czchen)

Introduced: 25 Jan 2023

CVE-2023-22736  (opens in a new tab)
CWE-285  (opens in a new tab)
First added by Snyk

How to fix?

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

Overview

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