CRITICAL🇵🇱 Wersja polska

CVE-2024-47883

CVSS 9.1v3.1pub. 2024-10-24upd. 2024-10-29

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.

🤖 AI Analysis
How it works

The framework uses the java.net.URL class for references to local application resources (images, templates). Before version 1.2.6, file:/ addresses were accepted directly in some code paths, instead of only relative paths. A network attacker can supply such an address, causing the application to fetch and use as a trusted resource a file from the local server file system (path traversal) or from an external machine on the network (SSRF, e.g., via SMB). If an attacker can trick a user into visiting a crafted application URL, they can cause arbitrary JavaScript code to be loaded in the victim's browser (XSS). Additionally, if the application allows external parties to control the template name, an attacker can force the download and execution of their own template, leading to RCE.

Impact

An attacker can read arbitrary files from the server's file system or network resources, execute XSS attacks on application users, and under favorable conditions lead to remote code execution (RCE) on the server side.

Mitigation & patch

The Butterfly library must be updated to version 1.2.6, which contains a patch eliminating acceptance of file:/ addresses in place of relative resource paths.

Who is affected

OpenRefine fork of the MIT Simile Butterfly — versions earlier than 1.2.6

Analysis generated by Claude AI (Anthropic) based on NVD data. Always verify with vendor.
CVSS Vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:N
  • Openrefine Butterfly

    APP
    Openrefine
    ≤ 1.2.6
🔵
CHECK WITH VENDOR
No clear patch data available. Check vendor references.
Tags
RCEXSSSSRFPath Traversal
CWE
References

Related vulnerabilities

CVE-2023-41887CRITICAL9.8PL ✓same vendor

OpenRefine – RCE przez SQL injection dostępne bez uwierzytelnienia

CVE-2024-47878HIGH8.1same vendor

OpenRefine is a free, open source tool for working with messy data. Prior to version 3.8.3, the `/extension/gd...

CVE-2024-47880HIGH8.1same vendor

OpenRefine is a free, open source tool for working with messy data. Prior to version 3.8.3, the `export-rows` ...

CVE-2024-47879HIGH7.6same vendor

OpenRefine is a free, open source tool for working with messy data. Prior to version 3.8.3, lack of cross-site...

CVE-2024-47881HIGH8.1same vendor

OpenRefine is a free, open source tool for working with messy data. Starting in version 3.4-beta and prior to ...