CVE-2025-46653 json
Formidable relies on hexoid to prevent guessing of filenames for untrusted executable content
published 2025-04-26 18 mo ago modified 2026-09-10 1 mo ago also GHSA-75v8-2h7p-7m2m , EUVD-2025-12478
- cvss
- 3.1
- version 3.1, CNA
- cisa kev
- Not listed
- not in CISA's catalog
- epss
- 0.4%
- EPSS 0.4% chance of exploitation in 30 days, percentile 39%
- public exploits
- 0
- none known
Summary
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.
Patch / fix
- npm formidable 2.1.3, 3.5.3
- node-formidable Formidable 3.5.3
- node-formidable Debian 14 3.5.4+~cs11.10.5-1
debian advisories DEBIAN-CVE-2025-46653
Vendor advisories
What the vendors themselves say about their products: affected, fixed or not affected, and what to do.
red hat product security vex CVE-2025-46653 updated cvss 6.8
formidable: Use of Cryptographically Weak Pseudo-Random Number Generator (PRNG) in Formidable
-
Red Hat OpenShift Serverless openshift-serverless-1/kn-plugin-func-func-util-rhel8, openshift-serverless-1/kn-backstage-plugins-eventmesh-rhel8 Red Hat Developer Hub 1 rhdh/rhdh-hub-rhel9 Red Hat Enterprise Linux 6 firefox, thunderbird Red Hat Enterprise Linux 7 firefox, thunderbird Red Hat Enterprise Linux 8 firefox, mozjs60, thunderbird Red Hat Enterprise Linux 9 gjs, polkit, firefox, firefox-x11, polkit-libs, thunderbirdaffected: workaround, no fix available “Fix deferred”
+3 more productsfewer
Red Hat Enterprise Linux 10 gjs, firefox, thunderbird Red Hat OpenShift AI (RHOAI) rhoai/odh-data-science-pipelines-argo-argoexec-rhel8, rhoai/odh-data-science-pipelines-argo-workflowcontroller-rhel8 Red Hat OpenShift GitOps openshift-gitops-1/argocd-rhel8, openshift-gitops-1/argocd-rhel9, openshift-gitops-1/gitops-operator-bundle
Red Hat CSAF VEX © Red Hat, Inc., from https://security.access.redhat.com/data/csaf/v2/vex/; changed: reduced to product statuses and remediations. CC BY 4.0 · csaf
CISA SSVC
- Exploitation
- Proof of concept is public
- Automatable
- no
- Technical impact
- partial
- Assessed
- 18 mo ago
Exploit prediction
0.45% chance of exploitation in the next 30 days, higher than 39% of all scored CVEs (FIRST EPSS, 2026-11-08).
Exploits and checks
- github.com https://github.com/zast-ai/vulnerability-reports/blob/main/formidable/file_upload/report.md referenced PoC, tagged "exploit" by a source, unverified
CVSS scores
| assigned by | version | score | vector |
|---|---|---|---|
| CNA | 3.1 | 3.1 | CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:N/I:L/A:N |
| NVD | 3.1 | 3.1 | CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:N/I:L/A:N |
| GitHub | 3.1 | 3.1 | CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:N/I:L/A:N |
Affected packages
| ecosystem | package | affected | fixed in |
|---|---|---|---|
| npm | formidable | >=3.1.1-canary.20211030, <3.5.3 >=2.1.0, <2.1.3 |
3.5.3 2.1.3 |
Affected products
- node-formidable Formidable
Classification
- Weakness
-
- CWE-338 Use of Cryptographically Weak Pseudo-Random Number Generator (PRNG)
References
-
github.com
/node-formidable/formidable/commit/022c2c5577dfe14d2947f10909d81b03b6070bf5
web, patch
-
github.com
/node-formidable/formidable/commit/37a3e89fca1ed68ec674a539f13aafd62221ddaa
web
-
github.com
/zast-ai/vulnerability-reports/blob/main/formidable/file_upload/report.md
exploit, web, third-party-advisory
-
github.com
/node-formidable/formidable/blob/d0fbec13edc8add54a1afb9ce1a8d3db803f8d47/CHANGELOG.md?plain=1#L10
web, product
-
nvd.nist.gov
/vuln/detail/CVE-2025-46653
advisory
-
github.com
/node-formidable/formidable
package
-
npmjs.com
/package/formidable/v/2.1.3
web
-
npmjs.com
/package/formidable/v/3.5.3
web
Sources
- CVE List CVE-2025-46653
- GitHub Advisory GHSA-75v8-2h7p-7m2m
- NVD CVE-2025-46653
Fencer Vulns keeps one entry per vulnerability: the CVE id wins, then GHSA, and records that alias each other are merged, except that two CVEs always keep separate entries. The same data is available as JSON.