GHSA-584p-f93j-wpgc
Formie: Unauthenticated users can overwrite incomplete submissions via submit action
Quick fix
GHSA-584p-f93j-wpgc — verbb/formie: upgrade to the fixed version with the command below.
composer require verbb/formie:^3.1.31Details
### Impact
The anonymous front-end action `formie/submissions/submit` (`SubmissionsController::actionSubmit`) trusted a client-supplied `submissionId` when loading an incomplete submission, with no session binding, ownership check, or edit token validation.
An unauthenticated attacker could enumerate sequential submission IDs and overwrite or hijack another user's in-progress (multi-page / save-for-later) submission. Tampered data could be persisted and forwarded via notifications and integrations when the submission was completed.
Completed submissions were not affected (`isIncomplete=true` filter). This is an incomplete remediation of [GHSA-pgxq-p76c-x9cg](https://github.com/advisories?query=GHSA-pgxq-p76c-x9cg), which added edit-token validation to `save-submission` but not to `submit`.
### Patches
Fixed in **3.1.31** (Craft 5) and **2.2.23** (Craft 4).
When resuming an existing submission on a site request, the submission ID must match the session-bound submission (`Form::getCurrentSubmission()`) or a valid `submissionEditToken` when `editingSubmission` is set. Cross-form submission ID reuse is also rejected.
### Workarounds
No reliable workaround without upgrading. Disabling multi-page forms or save-for-later reduces exposure but does not remove the vulnerability.
- Reported by Jorge González (jorge@jmilla.es)
Are you affected?
Enter the version of the package you're using.
Affected packages
References
- https://github.com/verbb/formie/security/advisories/GHSA-584p-f93j-wpgc[WEB]
- https://github.com/verbb/formie/commit/323c2fe647a76fbccadf749728ee4ad9420efee1[WEB]
- https://github.com/verbb/formie/commit/78a298ac3baf85ac283988dfce9cd42c9b958f16[WEB]
- https://github.com/verbb/formie[PACKAGE]
- https://github.com/verbb/formie/releases/tag/2.2.23[WEB]
- https://github.com/verbb/formie/releases/tag/3.1.31[WEB]