# GHSA-c85w-x26q-ch87: Formwork improperly validates input of User role preventing site and panel availability

> Privileged users can crash the Formwork site and admin panel by injecting invalid user role values, causing a denial of service.

- **Severity:** Not scored
- **Exploited in the wild:** Not known
- **Login needed:** An administrator
- **Attackable:** Over the internet
- **Victim action needed:** Not needed
- **Fix available:** Yes
- **Published:** 1 Mar 2025

## What is GHSA-c85w-x26q-ch87?

GHSA-c85w-x26q-ch87 is a denial of service vulnerability in getformwork/formwork, published on 1 Mar 2025. An attacker needs administrator access to exploit it, with no action from the victim.

### Official description

### Summary
Improper validation of select fields allows attackers to craft an input that crashes the system, resulting in a 500 status and making the entire site and administration panel unavailable.
This clearly impacts the Availability aspect of the CIA triad (confidentiality, integrity, and availability), although the attack still has certain limitations.

### Details
The attack involves injecting any invalid user role value. Doing this will change the users data in a way that prevents users and then the entire site from loading. Even though the actual data change is minimal, the error is unrecoverable until a valid role parameter is restored by direct modification of the user account file.
Proper validation of select fields will prevent extraneous valid from being accepted and making the entire site and administration panel unavailable.

### Patches
- [**Formwork 2.x** (d9f0c1f)](https://github.com/getformwork/formwork/commit/d9f0c1feb3b9855d5bdc8bb189c0aaab2792e7ca) adds proper validation to select fields.

### Impact
The condition for this attack is having high privileges or Admin access, which means it could be exploited by an Insider Threat. Alternatively, if an attacker gains access to a privileged user account, they can execute the attack as well.
Overall, the attack is relatively difficult to carry out, but if successful, the impact and damage would be significant.

## Which versions are affected by GHSA-c85w-x26q-ch87?

2 open source packages ship an affected version, including getformwork/formwork.


| Package | Ecosystem | Affected | Fixed in |
| --- | --- | --- | --- |
| `getformwork/formwork` | Packagist | From 2.0.0-beta.1 | 2.0.0-beta.4 |
| `getformwork/formwork` | Packagist | From 2.0.0-beta.1 | 2.0.0-beta.4 |

## How do I fix GHSA-c85w-x26q-ch87?

Upgrade getformwork/formwork to 2.0.0-beta.4 or later.

## Is GHSA-c85w-x26q-ch87 being exploited?

There is no known exploitation of GHSA-c85w-x26q-ch87 in the wild and no public exploit code.

## Fix prompt for AI coding agents

```text
Check this codebase for GHSA-c85w-x26q-ch87 and fix it if it is affected.

What it is: GHSA-c85w-x26q-ch87 is a denial of service vulnerability in getformwork/formwork, published on 1 Mar 2025. An attacker needs administrator access to exploit it, with no action from the victim.
Exploitation: There is no known exploitation of GHSA-c85w-x26q-ch87 in the wild and no public exploit code.

Affected packages and fixed versions:
- getformwork/formwork (Packagist): affected from 2.0.0-beta.1; fixed in 2.0.0-beta.4
- getformwork/formwork (Packagist): affected from 2.0.0-beta.1; fixed in 2.0.0-beta.4

Task:
1. Search the dependency manifests and lockfiles (for example package.json, package-lock.json, requirements.txt, poetry.lock, uv.lock, pom.xml, build.gradle, go.mod, Cargo.lock, Gemfile.lock) and any Dockerfiles for the affected packages, including transitive dependencies.
2. If an affected version is in use, upgrade it to the fixed version for its release line with the project's package manager, so the lockfile is regenerated. Prefer the smallest upgrade that fixes it.
3. If there is no fix, or the upgrade would break the build, do not guess: explain the risk and the safest workaround instead.
4. Run the tests and summarise what changed and why.
5. If nothing in the project is affected, say so and change nothing.

Reference: https://insights.sbomify.com/GHSA-c85w-x26q-ch87/ (Markdown: https://insights.sbomify.com/GHSA-c85w-x26q-ch87/index.md)
```

## Sources

- OSV: https://osv.dev/vulnerability/GHSA-c85w-x26q-ch87

---
From sbomify Insights: https://insights.sbomify.com/GHSA-c85w-x26q-ch87/
Summaries are generated and may contain mistakes; the official description above is the record.
