Skip to content
Heist/ feed
Back to feed
UnratedFix available

drupal/imageapi_optimize_webp — security advisory

Type: advisorySources: OSVAdvisory ID: DRUPAL-CONTRIB-2026-247

This module enables you to generate and serve WebP derivatives of image style images, overriding Drupal core's image style download controller to serve them. The module serves WebP image derivative responses with the HTTP header `Cache-Control: public` for all file schemes other than the private file system, including the temporary file system and access-controlled custom schemes. This can lead to some users getting cached versions of files with information they should not be able to access. For example, files may be cached by Varnish or a CDN. This vulnerability is mitigated by the fact that it only affects sites that serve image derivatives from a custom or temporary file scheme with access control, behind a shared cache that honors the `Cache-Control` header. Access checks are still enforced on requests that reach the site itself. An attacker would also need to know the path of a previously requested file still in cache. This is the same vulnerability class fixed in Drupal core by [SA-CORE-2025-008](https://www.drupal.org/sa-core-2025-008) and [SA-CORE-2026-010](https://www.drupal.org/sa-core-2026-010); the module's controller override reintroduced the behavior.

Products
drupal/imageapi_optimize_webp
Affected versions
Not specified
Fixed versions
2.1.2
CVEs
CVE-2026-114548
Confirmed fixed CVEs
Not specified
Updated in this feed
31 Oct 2026, 16:07 UTC · Revision 1

Source evidence

DRUPAL-CONTRIB-2026-247

core-osv · Original source

Published 21 Oct 2026, 18:06 UTC

This module enables you to generate and serve WebP derivatives of image style images, overriding Drupal core's image style download controller to serve them. The module serves WebP image derivative responses with the HTTP header `Cache-Control: public` for all file schemes other than the private file system, including the temporary file system and access-controlled custom schemes. This can lead to some users getting cached versions of files with information they should not be able to access. For example, files may be cached by Varnish or a CDN. This vulnerability is mitigated by the fact that it only affects sites that serve image derivatives from a custom or temporary file scheme with access control, behind a shared cache that honors the `Cache-Control` header. Access checks are still enforced on requests that reach the site itself. An attacker would also need to know the path of a previously requested file still in cache. This is the same vulnerability class fixed in Drupal core by [SA-CORE-2025-008](https://www.drupal.org/sa-core-2025-008) and [SA-CORE-2026-010](https://www.drupal.org/sa-core-2026-010); the module's controller override reintroduced the behavior.

osv:DRUPAL-CONTRIB-2026-247

drupal/imageapi_optimize_webp

Fixed versions: 2.1.2

Complete source record
{
  "id": "39a002b119568da58c4d4e6d1ac27a79f3a399400394540f4fec5521ac5ceb3b",
  "url": "https://osv.dev/vulnerability/DRUPAL-CONTRIB-2026-247",
  "method": "structured",
  "payload": {
    "kind": "advisory",
    "title": "DRUPAL-CONTRIB-2026-247",
    "summary": "This module enables you to generate and serve WebP derivatives of image style images, overriding Drupal core's image style download controller to serve them. The module serves WebP image derivative responses with the HTTP header `Cache-Control: public` for all file schemes other than the private file system, including the temporary file system and access-controlled custom schemes. This can lead to some users getting cached versions of files with information they should not be able to access. For example, files may be cached by Varnish or a CDN. This vulnerability is mitigated by the fact that it only affects sites that serve image derivatives from a custom or temporary file scheme with access control, behind a shared cache that honors the `Cache-Control` header. Access checks are still enforced on requests that reach the site itself. An attacker would also need to know the path of a previously requested file still in cache. This is the same vulnerability class fixed in Drupal core by [SA-CORE-2025-008](https://www.drupal.org/sa-core-2025-008) and [SA-CORE-2026-010](https://www.drupal.org/sa-core-2026-010); the module's controller override reintroduced the behavior.",
    "evidence": "osv:DRUPAL-CONTRIB-2026-247",
    "products": [
      {
        "name": {
          "value": "drupal/imageapi_optimize_webp",
          "evidence": "/affected/0/package/name"
        },
        "prerequisites": [],
        "fixed_versions": [
          {
            "value": "2.1.2",
            "evidence": "/affected/0/ranges"
          }
        ],
        "affected_versions": []
      }
    ],
    "severity": "unknown",
    "structured": {
      "id": "DRUPAL-CONTRIB-2026-247",
      "aliases": [
        "CVE-2026-114548",
        "DRUPAL-CONTRIB-2026-247"
      ],
      "affected": [
        {
          "ranges": [
            {
              "type": "ECOSYSTEM",
              "events": [
                {
                  "introduced": "0"
                },
                {
                  "fixed": "2.1.2"
                }
              ],
              "database_specific": {
                "constraint": "<2.1.2"
              }
            }
          ],
          "package": {
            "name": "drupal/imageapi_optimize_webp",
            "purl": "pkg:composer/drupal/imageapi_optimize_webp?repository_url=https:%2F%2Fpackages.drupal.org%2F8",
            "ecosystem": "Packagist:https://packages.drupal.org/8"
          },
          "database_specific": {
            "source": "https://github.com/DrupalSecurityTeam/drupal-advisory-database/blob/main/advisories/imageapi_optimize_webp/DRUPAL-CONTRIB-2026-247.json",
            "affected_versions": "<2.1.2"
          }
        }
      ],
      "modified": "2026-10-21T18:45:02.705402171Z",
      "provider": "osv",
      "references": [
        "https://www.drupal.org/sa-contrib-2026-247"
      ]
    },
    "related_cves": [
      {
        "value": "CVE-2026-114548",
        "evidence": "/aliases"
      }
    ],
    "security_relevant": true,
    "severity_evidence": null
  },
  "source_id": "core-osv",
  "document_id": 399243,
  "published_at": "2026-10-21T18:06:14+00:00"
}