Официальные колеса Flair для 0.15.0 и 0.15.1 по-прежнему содержат flair/models/clustering.py, чей статический метод ClusteringModel.load возвращает Pickle.loads(joblib.load(str(model_file))) и таким образом выполняет произвольный Python при загрузке файла модели. Таким образом, загрузка модели, предоставленной злоумышленником, запускает код злоумышленника с привилегиями процесса загрузки. Это тот же приемник и тот же файл, что и CVE-2024-10073, который записывает 0.15.0 как фиксированную версию на том основании, что в этом выпуске поддержка кластеризации была прекращена; модуль был удален из документированного API, но остается в распределенном артефакте и доступен путем непосредственного импорта flair.models.clustering, поэтому фиксированная версия предыдущей записи не применяется для поставляемого пакета.
Показать оригинальное описание (EN)
The official Flair wheels for 0.15.0 and 0.15.1 still contain flair/models/clustering.py, whose ClusteringModel.load static method returns pickle.loads(joblib.load(str(model_file))) and so executes arbitrary Python while loading a model file. Loading a model supplied by an attacker therefore runs that attacker's code with the privileges of the loading process. This is the same sink and the same file as CVE-2024-10073, which records 0.15.0 as the fixed version on the basis that clustering support was dropped in that release; the module was removed from the documented API but remains present in the distributed artifact and reachable by importing flair.models.clustering directly, so the earlier record's fixed version does not hold for the shipped package.
Характеристики атаки
Последствия
Строка CVSS v4.0