CVE-2024-21491: Svix Authentication Bypass Vulnerability
MODERATECVE-2024-21491 is a MODERATE (CVSS 6.8) authentication bypass vulnerability (CWE-288: Authentication Bypass Using an Alternate Path or Channel) affecting Svix libraries in the crates.io ecosystem. The issue involves svix vulnerable to authentication bypass. Remediation is available by upgrading affected packages to version 1.17.0.
CVE-2024-21491 at a Glance
Security Impact
CVSS: 6.8
The security impact metrics below are parsed directly from the CVSS v3.1 vector string (CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:U/C:H/I:H/A:N).
How to Fix CVE-2024-21491
To remediate this vulnerability, upgrade all affected Svix dependencies to a patched release. Both direct and transitive dependencies should be checked, as frameworks or security libraries may pull in vulnerable versions transitively.
Upgrade svix to 1.17.0
Run the following command in your project directory to verify that all resolved dependencies use the patched release:
inspect dependencies for svix
How to Check if You Are Affected
To determine whether your application is affected by CVE-2024-21491, inspect your project dependencies for Svix:
inspect dependencies for svix
Analyze the terminal output to locate any version of Svix in your dependency tree. If any resolved version matches the vulnerable ranges listed in the table below (for example, versions earlier than 1.17.0), your application is affected.
Note: Verify declared build manifests and deployed runtime container environments.
Technical Details
Vulnerability Mechanism & Technical Analysis
This vulnerability is classified under CWE-288: Authentication Bypass Using an Alternate Path or Channel, where the product requires authentication, but the product has an alternate path or channel that does not require authentication. In Svix, software state validation or input boundaries are circumvented during processing. Review the official source advisory statement below for specific affected components, classes, and reproduction details.
Source Advisory Statement
CVE-2024-21491 Affected Svix Versions
1 component(s)| Product / Package | Ecosystem | Affected Versions | Fixed Version |
|---|---|---|---|
|
svix
|
crates.io |
< 1.17.0
|
1.17.0
|
References
Frequently Asked Questions
What is CVE-2024-21491?
Which Svix versions are affected?
What version fixes CVE-2024-21491?
Is svix affected?
What is the CVSS score of CVE-2024-21491?
What CWE is associated with CVE-2024-21491?
How can I check crates.io dependencies for CVE-2024-21491?
Machine-readable OSV JSON
OSV v1.5 Schema
{
"schema_version" : "1.4.0",
"id" : "GHSA-747x-5m58-mq97",
"modified" : "2024-10-16T17:06:15Z",
"published" : "2024-02-13T06:30:28Z",
"aliases" : [ "CVE-2024-21491" ],
"summary" : "svix vulnerable to Authentication Bypass",
"details" : "Versions of the package svix before 1.17.0 are vulnerable to Authentication Bypass due to an issue in the verify function where signatures of different lengths are incorrectly compared. An attacker can bypass signature verification by providing a shorter signature that matches the beginning of the actual signature.\n\n**Note:**\n\nThe attacker would need to know a victim uses the Rust library for verification,no easy way to automatically check that; and uses webhooks by a service that uses Svix, and then figure out a way to craft a malicious payload that will actually include all of the correct identifiers needed to trick the receivers to cause actual issues.",
"severity" : [ {
"type" : "CVSS_V3",
"score" : "CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:U/C:H/I:H/A:N"
} ],
"affected" : [ {
"package" : {
"ecosystem" : "crates.io",
"name" : "svix"
},
"ranges" : [ {
"type" : "ECOSYSTEM",
"events" : [ {
"introduced" : "0"
}, {
"fixed" : "1.17.0"
} ]
} ]
} ],
"references" : [ {
"type" : "ADVISORY",
"url" : "https://nvd.nist.gov/vuln/detail/CVE-2024-21491"
}, {
"type" : "WEB",
"url" : "https://github.com/svix/svix-webhooks/pull/1190"
}, {
"type" : "WEB",
"url" : "https://github.com/svix/svix-webhooks/commit/958821bd3b956d1436af65f70a0964d4ffb7daf6"
}, {
"type" : "PACKAGE",
"url" : "https://github.com/svix/svix-webhooks"
}, {
"type" : "WEB",
"url" : "https://rustsec.org/advisories/RUSTSEC-2024-0010.html"
}, {
"type" : "WEB",
"url" : "https://security.snyk.io/vuln/SNYK-RUST-SVIX-6230729"
} ],
"database_specific" : {
"cwe_ids" : [ "CWE-288", "CWE-347" ],
"severity" : "MODERATE",
"github_reviewed" : true,
"github_reviewed_at" : "2024-02-13T18:36:52Z",
"nvd_published_at" : "2024-02-13T05:15:08Z"
}
}