GHSA-mp3g-vpm9-9vqv

Suggest an improvement
Source
https://github.com/advisories/GHSA-mp3g-vpm9-9vqv
Import Source
https://github.com/github/advisory-database/blob/main/advisories/github-reviewed/2024/06/GHSA-mp3g-vpm9-9vqv/GHSA-mp3g-vpm9-9vqv.json
JSON Data
https://api.test.osv.dev/v1/vulns/GHSA-mp3g-vpm9-9vqv
Aliases
Related
Published
2024-06-26T19:12:23Z
Modified
2024-06-26T21:56:15Z
Severity
  • 5.3 (Medium) CVSS_V3 - CVSS:3.1/AV:N/AC:H/PR:H/UI:R/S:U/C:L/I:L/A:H CVSS Calculator
Summary
@fastly/js-compute has a use-after-free in some host call implementations
Details

Impact

The implementation of the following functions were determined to include a use-after-free bug:

  • FetchEvent.client.tlsCipherOpensslName
  • FetchEvent.client.tlsProtocol
  • FetchEvent.client.tlsClientCertificate
  • FetchEvent.client.tlsJA3MD5
  • FetchEvent.client.tlsClientHello
  • CacheEntry.prototype.userMetadata of the fastly:cache subsystem
  • Device.lookup of the fastly:device subsystem

This bug could allow for an unintended data leak if the result of the preceding functions were sent anywhere else, and often results in a Compute service crash causing an HTTP 500 error to be returned. As all requests to Compute are isolated from one another, the only data at risk is data present for a single request.

Patches

This bug has been fixed in version 3.16.0 of the @fastly/js-compute package.

Workarounds

There are no workarounds for this bug, any use of the affected functions introduces the possibility of a data leak or crash in guest code.

Database specific
{
    "nvd_published_at": "2024-06-26T19:15:13Z",
    "cwe_ids": [
        "CWE-416"
    ],
    "severity": "MODERATE",
    "github_reviewed": true,
    "github_reviewed_at": "2024-06-26T19:12:23Z"
}
References

Affected packages

npm / @fastly/js-compute

Package

Name
@fastly/js-compute
View open source insights on deps.dev
Purl
pkg:npm/%40fastly/js-compute

Affected ranges

Type
SEMVER
Events
Introduced
3.0.0
Fixed
3.16.0