GHSA-gcj9-jj38-hwmc

Suggest an improvement
Source
https://github.com/advisories/GHSA-gcj9-jj38-hwmc
Import Source
https://github.com/github/advisory-database/blob/main/advisories/github-reviewed/2023/06/GHSA-gcj9-jj38-hwmc/GHSA-gcj9-jj38-hwmc.json
JSON Data
https://api.osv.dev/v1/vulns/GHSA-gcj9-jj38-hwmc
Aliases
Published
2023-06-09T19:31:47Z
Modified
2023-11-08T04:04:41.457792Z
Severity
  • 5.3 (Medium) CVSS_V3 - CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L CVSS Calculator
Summary
Vapor's Metrics integration could cause a system drain
Details

Impact

This is a DoS attack against anyone who Bootstraps a metrics backend for their Vapor app with the following attack vector:

  1. send unlimited requests against a vapor instance with different paths. this will create “unlimited” counters and timers, which will eventually drain the system.
  2. downstream services might suffer from this attack as well by being spammed with error paths

Patches

This has been patched in 4.40.1. The DefaultResponder will rewrite any undefined route paths for to vapor_route_undefined to avoid unlimited counters.

Workarounds

Don't bootstrap a metrics system or upgrade to 4.40.1

For more information

If you have any questions or comments about this advisory: * Open an issue in Vapor * Ask in Discord

Database specific
{
    "nvd_published_at": "2021-02-26T02:15:00Z",
    "cwe_ids": [
        "CWE-400"
    ],
    "severity": "MODERATE",
    "github_reviewed": true,
    "github_reviewed_at": "2023-06-09T19:31:47Z"
}
References

Affected packages

SwiftURL / github.com/vapor/vapor

Package

Name
github.com/vapor/vapor
Purl
pkg:swift/github.com/vapor/vapor

Affected ranges

Type
SEMVER
Events
Introduced
0Unknown introduced version / All previous versions are affected
Fixed
4.40.1

Database specific

{
    "last_known_affected_version_range": "<= 4.40.0"
}