PatchClock

PHP security digest · 23 Sep 2026

The Webform module allows site builders to create forms, collect submissions, and configure access to forms and submission data. The module includes a rating e...

Unrated CVE-2026-96358

Package
drupal/webform
Fixed in
6.2.12, 6.3.1
Published
Wed 23 Sep 2026, 17:13 LisbonUpdated Mon 26 Oct 2026, 02:27 Lisbon

In plain words

Insufficient validation in Webform's rating element could allow an attacker to run script in a visitor's browser. This requires the attacker to be able to place crafted HTML markup on the same page as a Webform rating element.

Am I affected?

Look for drupal/webform and its version in composer.lock. The advisory lists fixes in 6.2.12 and 6.3.1, but gives no affected version ranges. Check whether any page contains a Webform rating element and allows an attacker to place crafted HTML markup on that same page.

What to do

Check which version you have, then update to a fixed release for your branch (6.2.12, 6.3.1):

composer show drupal/webform | grep versions
composer update drupal/webform

If your version constraint in composer.json keeps you below a fixed release, raise it first. Whether your configuration is affected, and the exact version ranges, are in the advisory itself.

If you cannot update yet

The vulnerability is mitigated by the requirement that an attacker must be able to place crafted HTML markup on the same page as a Webform rating element.

The advisory's description

The Webform module allows site builders to create forms, collect submissions, and configure access to forms and submission data.

The module includes a rating element, which did not sufficiently validate its data. Under specific circumstances, this could allow cross-site scripting on a page with a rating element.

This vulnerability is mitigated by the fact that an attacker must be able to place crafted HTML markup on the same page as a Webform rating element.

The advisory

From OSV.dev, which gathers the GitHub Advisory Database, FriendsOfPHP and Drupal security advisories; the summary is theirs. The description is OSV's record of the advisory. "In plain words", "Am I affected?" and "If you cannot update yet" are based on that advisory, and checked to name no version it does not.