CVE-2024-47883Форк OpenRefine MIT Simile Butterfly server представляет собой модульный фреймворк для веб-приложений. Фреймворк Butterfly использует класс `java.net.URL` для обращения к (как ожидается) локальным файлам ресурсов, таким как изображения или шаблоны. Это работает: "открытие соединения" к этим URL открывает локальный файл. Однако, до версии 1.2.6, если `file:/` URL напрямую указан там, где ожидается относительный путь (имя ресурса), это также принимается в некоторых путях кода; затем приложение извлекает файл с удаленной машины, если указано, и использует его, как если бы это была доверенная часть кодовой базы приложения. Это приводит к многочисленным слабостям и потенциальным слабостям. Злоумышленник, имеющий сетевой доступ к приложению, может использовать его для получения доступа к файлам, либо в файловой системе сервера (обход пути), либо к файлам, совместно используемым близлежащими машинами (подделка запроса на стороне сервера, например, с SMB). Злоумышленник, который может направить или перенаправить пользователя на специально созданный URL, принадлежащий приложению, может вызвать загрузку произвольного JavaScript, контролируемого злоумышленником, в браузере жертвы (межсайтовый скриптинг). Если приложение написано таким образом, что злоумышленник может повлиять на имя ресурса, используемое для шаблона, этот злоумышленник может заставить приложение извлечь и выполнить шаблон, контролируемый злоумышленником (удаленное выполнение кода). Версия 1.2.6 содержит исправление.