{
  "cveId": "CVE-2026-48702",
  "url": "https://patchblox.com/security/cve/CVE-2026-48702",
  "summary": "CVE-2026-48702 is fixed in 4 products on 1 platform, first by OPENSUSE-SU-2026:21262-1, released July 6, 2026. It is not reported as exploited. Patch Radar priority: High.",
  "title": "rekor: Rekor is a software supply chain transparency log",
  "description": "Rekor is a software supply chain transparency log. Starting in version 0.3.0 and prior to version 1.5.2, the \u0060Package.Unmarshal()\u0060 function in \u0060pkg/types/alpine/apk.go\u0060 decompresses the signature and control gzip members of an APK file into in-memory buffers without bounding the total decompressed size. The existing \u0060max_apk_metadata_size\u0060 check (default 1MB) is only applied to individual tar entry header sizes after decompression completes, so it does not prevent a decompression bomb from consuming unbounded heap memory. An attacker can craft a gzip stream that compresses at a ~1000:1 ratio (e.g., 2MB compressed zeros \u2192 2GB decompressed). When submitted as spec.package.content in an Alpine \u0060ProposedEntry\u0060, the server decompresses the full payload into memory during request processing, triggering a fatal Go runtime out-of-memory error or OS OOM-kill that cannot be caught by the server\u0027s recover() middleware. This is reachable via two unauthenticated endpoints, \u0060POST /api/v1/log/entries (createLogEntry)\u0060 and \u0060POST /api/v1/log/entries/retrieve (searchLogQuery)\u0060. Both invoke \u0060V001Entry.Canonicalize()\u0060 \u2192 \u0060fetchExternalEntities()\u0060 \u2192 \u0060apk.Unmarshal(packageData)\u0060, which performs the unbounded decompression. Version 1.5.2 patches the issue. There is no effective workaround. Setting \u0060max_request_body_size\u0060 reduces but does not eliminate exposure due to the ~1000:1 compression ratio (a 1MB body limit still allows ~1GB heap allocation). Setting \u0060max_apk_metadata_size\u0060 has no effect on this vulnerability since the check is applied after decompression.",
  "published": "2026-07-06T09:02:35Z",
  "severity": "high",
  "cvss": 7.5,
  "cvssVector": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H",
  "epss": 0.0046,
  "epssPercentile": 0.40107,
  "priority": "High",
  "priorityTier": 3,
  "exploited": false,
  "vendorExploited": false,
  "disclosed": false,
  "fixes": [
    {
      "platform": "linux",
      "product": "govulncheck-vulndb",
      "release": "opensuse-leap 16.0",
      "fixedVersion": "0.0.20260723T184607-160000.1.1",
      "fix": "OPENSUSE-SU-2026:21483-1",
      "url": "https://patchblox.com/security/fix/linux/opensuse-su-2026-21483-1",
      "released": "2026-07-30T09:09:47Z"
    },
    {
      "platform": "linux",
      "product": "hauler",
      "release": "opensuse-leap 16.0",
      "fixedVersion": "2.0.1-bp160.1.1",
      "fix": "OPENSUSE-SU-2026:21262-1",
      "url": "https://patchblox.com/security/fix/linux/opensuse-su-2026-21262-1",
      "released": "2026-07-06T09:02:35Z"
    },
    {
      "platform": "linux",
      "product": "rekor",
      "release": "Debian 14",
      "fixedVersion": "1.5.2-1",
      "fix": "DEBIAN-CVE-2026-48702",
      "url": "https://patchblox.com/security/fix/linux/debian-cve-2026-48702",
      "released": "2026-07-27T14:01:26Z"
    },
    {
      "platform": "linux",
      "product": "runfinch-finch",
      "release": "amzn 2023",
      "fixedVersion": "1.17.2-1.amzn2023.0.3",
      "fix": "ALAS2023-2026-2023",
      "url": "https://patchblox.com/security/fix/linux/alas2023-2026-2023",
      "released": "2026-08-03T09:00:00Z"
    }
  ],
  "noFixYet": [],
  "dataAsOf": "2026-11-08T06:59:42Z",
  "attribution": {
    "text": "Data: Patchblox Patch Radar",
    "url": "https://patchblox.com/security/patch-radar",
    "terms": "https://patchblox.com/security/patch-radar/use-the-data"
  }
}