Butterfly has path/URL confusion in resource handling leading to multiple weaknesses
Key facts
- Attack vector
- Network
- Privileges required
- None
- User interaction
- None
- Attack complexity
- Low
- Impact type
- —
- Confidentiality · integrity · availability
- High · High · None
- Fix status
- Fixed
Attack profile from CVSS 3.1 · CNA. Fix status from CNA and GitHub.
Summary
The OpenRefine fork of the MIT Simile Butterfly server is a modular web application framework. The Butterfly framework uses the `java.net.URL` class to refer to (what are expected to be) local resource files, like images or templates. This works: "opening a connection" to these URLs opens the local file. However, prior to version 1.2.6, if a `file:/` URL is directly given where a relative path (resource name) is expected, this is also accepted in some code paths; the app then fetches the file, from a remote machine if indicated, and uses it as if it was a trusted part of the app's codebase. This leads to multiple weaknesses and potential weaknesses. An attacker that has network access to the application could use it to gain access to files, either on the the server's filesystem (path traversal) or shared by nearby machines (server-side request forgery with e.g. SMB). An attacker that can lead or redirect a user to a crafted URL belonging to the app could cause arbitrary attacker-controlled JavaScript to be loaded in the victim's browser (cross-site scripting). If an app is written in such a way that an attacker can influence the resource name used for a template, that attacker could cause the app to fetch and execute an attacker-controlled template (remote code execution). Version 1.2.6 contains a patch.
Why it matters now
SSVC decision points
CISA ADP · SSVC 2.0.3
- Exploitation
- Poc
- Automatable
- No
- Technical impact
- Partial
The decision (Track, Attend, Act) also depends on your mission and well-being impact; see CISA's SSVC guide.
Affected products
| Vendor | Product | Affected versions | Fixed in | Status | Source |
|---|---|---|---|---|---|
| OpenRefine | simile-butterfly | before 1.2.6 | 1.2.6 | Patch available | CNA |
| — | org.openrefine.dependencies:butterfly (Maven) | before 1.2.6 | 1.2.6 | Patch available | GHSA-3p8v-w8mr-m3x8 |
- simile-butterfly VendorOpenRefine Affected before 1.2.6 Fixed in 1.2.6 Patch available CNA
- org.openrefine.dependencies:butterfly (Maven) Vendor— Affected before 1.2.6 Fixed in 1.2.6 Patch available GHSA-3p8v-w8mr-m3x8
CPE configurations NVD · 1
| CPE | Versions | Role | Vendor |
|---|---|---|---|
| cpe:2.3:a:openrefine:butterfly:*:*:*:*:*:*:*:* | up to 1.2.6 | Vulnerable | OpenRefine |
- cpe:2.3:a:openrefine:butterfly:*:*:*:*:*:*:*:* Versions up to 1.2.6 Vulnerable ·OpenRefine
Remediation
- Fix · CNA simile-butterfly (OpenRefine) Fixed in 1.2.6
- Fix · GHSA-3p8v-w8mr-m3x8 org.openrefine.dependencies:butterfly (Maven) Fixed in 1.2.6 Advisory →
Timeline
- 2026-10-02 Threatist record created from CVE-2024-47883
- 2026-10-03 Alias added: GHSA-3p8v-w8mr-m3x8
References
Patch 1
Sources
- CVE-2024-47883 · CVE Program
- CVE-2024-47883 · NVD
- FIRST EPSS
- GHSA-3p8v-w8mr-m3x8 · GitHub Advisory Database · CC BY 4.0
This product uses the NVD API but is not endorsed or certified by the NVD. Sources and licences