{"id":"DRUPAL-CONTRIB-2026-015","details":"This module enables you to protect web forms from automated spam by requiring users to pass a challenge.\n\nThe module doesn't sufficiently invalidate used security tokens under certain scenarios, which can lead to the CAPTCHA being bypassed on subsequent submissions.\n\nThis vulnerability is mitigated by the fact that an attacker must first successfully solve at least one CAPTCHA manually to harvest the valid tokens.","aliases":["CVE-2026-3214"],"modified":"2026-03-18T18:00:07.664402Z","published":"2026-02-25T18:47:57Z","references":[{"type":"WEB","url":"https://www.drupal.org/sa-contrib-2026-015"}],"affected":[{"package":{"name":"drupal/captcha","ecosystem":"Packagist:https://packages.drupal.org/8","purl":"pkg:composer/drupal/captcha"},"ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"1.17.0"}],"database_specific":{"constraint":"\u003c1.17.0"}},{"type":"ECOSYSTEM","events":[{"introduced":"2.0.0"},{"fixed":"2.0.10"}],"database_specific":{"constraint":"\u003e=2.0.0 \u003c 2.0.10"}}],"database_specific":{"affected_versions":"\u003c1.17.0 || \u003e=2.0.0 \u003c 2.0.10","source":"https://github.com/DrupalSecurityTeam/drupal-advisory-database/blob/main/advisories/captcha/DRUPAL-CONTRIB-2026-015.json"}}],"schema_version":"1.7.5","credits":[{"name":"Andrew Belcher (andrewbelcher)","contact":["https://www.drupal.org/u/andrewbelcher"]},{"name":"Andrew Wang (andrew.wang)","contact":["https://www.drupal.org/u/andrewwang"]},{"name":"Chris Dudley (dudleyc)","contact":["https://www.drupal.org/u/dudleyc"]},{"name":"M Parker (mparker17)","contact":["https://www.drupal.org/u/mparker17"]},{"name":"Tim Wood (timwood)","contact":["https://www.drupal.org/u/timwood"]},{"name":"tamasd","contact":["https://www.drupal.org/u/tamasd"]}]}