First published: Wed Aug 23 2023(Updated: )
### Impact All versions of Argo CD starting from v2.6.0 have a bug where open web terminal sessions do not expire. This bug allows users to send any websocket messages even if the token has already expired. The most straightforward scenario is when a user opens the terminal view and leaves it open for an extended period. This allows the user to view sensitive information even when they should have been logged out already. ### Patches A patch for this vulnerability has been released in the following Argo CD version: * v2.6.14 * v2.7.12 * v2.8.1 ### Workarounds The only way to completely resolve the issue is to upgrade. #### Mitigations Disable web-based terminal or define RBAC rules to it [https://argo-cd.readthedocs.io/en/latest/operator-manual/web_based_terminal/](https://argo-cd.readthedocs.io/en/latest/operator-manual/web_based_terminal/) ### For more information If you have any questions or comments about this advisory: * Open an issue in [the Argo CD issue tracker](https://github.com/argoproj/argo-cd/issues) or [discussions](https://github.com/argoproj/argo-cd/discussions) * Join us on [Slack](https://argoproj.github.io/community/join-slack) in channel #argo-cd ### Credits Thank you to bean.zhang (@zhlu32 ) of HIT-IDS ChunkL Team who discovered the issue and reported it confidentially according to our [guidelines](https://github.com/argoproj/argo-cd/blob/master/SECURITY.md#reporting-a-vulnerability).
Credit: security-advisories@github.com security-advisories@github.com security-advisories@github.com
Affected Software | Affected Version | How to fix |
---|---|---|
go/github.com/argoproj/argo-cd | =2.8.0 | 2.8.1 |
go/github.com/argoproj/argo-cd | >=2.7.0<2.7.12 | 2.7.12 |
go/github.com/argoproj/argo-cd | >=2.6.0<2.6.14 | 2.6.14 |
Linuxfoundation Argo-cd | >=2.6.0<=2.6.13 | |
Linuxfoundation Argo-cd | =2.7.11 | |
Linuxfoundation Argo-cd | =2.8.0 | |
Argoproj Argo Cd | >=2.6.0<=2.6.13 | |
Argoproj Argo Cd | =2.7.11 | |
Argoproj Argo Cd | =2.8.0 |
Sign up to SecAlerts for real-time vulnerability data matched to your software, aggregated from hundreds of sources.
CVE-2023-40025 is a vulnerability in Argo CD, a declarative GitOps continuous delivery tool for Kubernetes.
CVE-2023-40025 allows users to send websocket messages even if the token has already expired in Argo CD web terminal sessions.
To fix CVE-2023-40025, update Argo CD to version 2.8.1, 2.7.12, or 2.6.14 depending on your version.
CVE-2023-40025 has a severity score of 7.1 (high).
You can find more information about CVE-2023-40025 in the following references: [GitHub Commit](https://github.com/argoproj/argo-cd/commit/e047efa8f9518c54d00d2e4493b64bc4dba98478), [GitHub Security Advisory](https://github.com/argoproj/argo-cd/security/advisories/GHSA-c8xw-vjgf-94hr), [NVD](https://nvd.nist.gov/vuln/detail/CVE-2023-40025).