Description
Formidable (aka node-formidable) 2.1.0 through 3.x before 3.5.3 relies on hexoid to prevent guessing of filenames for untrusted executable content; however, hexoid is documented as not "cryptographically secure." (Also, there is a scenario in which only the last two characters of a hexoid string need to be guessed, but this is not often relevant.) NOTE: this does not imply that, in a typical use case, attackers will be able to exploit any hexoid behavior to upload and execute their own content.
Affected products
| Vendor | Product | Affected | Fixed |
|---|---|---|---|
| node-formidable | Formidable | 2.1.0 – < 3.5.3 | 3.5.3 |
Fixed in Linux distributions
Distributions backport fixes, so the version that fixes this vulnerability differs per release — upgrade to at least the version shown. From the distributions' security trackers and advisories.
Debian
Security tracker ↗| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| Debian 14 | node-formidable | 3.5.4+~cs11.10.5-1 | — |
| Debian 13 | node-formidable | No fix yet | — |
| Debian 12 | node-formidable | No fix yet | — |
Ubuntu
Security tracker ↗| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| Ubuntu 26.10 | node-formidable | No fix yet | — |
| Ubuntu 26.04 LTS | node-formidable | No fix yet | — |
| Ubuntu 25.10 | node-formidable | No fix yet | — |
| Ubuntu 24.04 LTS | node-formidable | No fix yet | — |
| Ubuntu 22.04 LTS | node-formidable | No fix yet | — |
Show 3 more (older releases, extended support, other products)Fewer releases
| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| Ubuntu 20.04 LTS | node-formidable | No fix yet | — |
| Ubuntu 18.04 LTS | node-formidable | No fix yet | — |
| Ubuntu 16.04 LTS | node-formidable | No fix yet | — |
Wolfi
| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| Wolfi rolling | tileserver-gl +1 | 5.3.0-r1 | — |
Affected packages
| Ecosystem | Package | Affected | Fixed | Record |
|---|---|---|---|---|
| npm | formidable | >= 3.1.1-canary.20211030, < 3.5.3 | 3.5.3 | GHSA-75v8-2h7p-7m2m |
| npm | formidable | >= 2.1.0, < 2.1.3 | 2.1.3 | GHSA-75v8-2h7p-7m2m |
References
- https://github.com/zast-ai/vulnerability-reports/blob/main/formidable/file_upload/report.md
- https://github.com/node-formidable/formidable/blob/d0fbec13edc8add54a1afb9ce1a8d3db803f8d47/CHANGELOG.md?plain=1#L10
- https://github.com/node-formidable/formidable/commit/022c2c5577dfe14d2947f10909d81b03b6070bf5