Fiftyone
Monthly
Stored cross-site scripting in FiftyOne (all versions before v1.21.0) allows a dataset contributor to execute arbitrary JavaScript in the browser of any user who opens a poisoned dataset and hovers over a field with a malicious description. The payload persists in the dataset schema across exports, publications, and shares, giving it a supply-chain propagation vector common in ML/data-science workflows. When the script fires, it runs in the FiftyOne application origin, where it can leverage the open-source server's unauthenticated media route to read arbitrary local files from the victim's machine and interact with dataset and operator APIs as the authenticated user. No public exploit identified at time of analysis; a vendor-released patch exists in v1.21.0.
Stored cross-site scripting in FiftyOne (all versions before v1.21.0) allows a dataset contributor to execute arbitrary JavaScript in the browser of any user who opens a poisoned dataset and hovers over a field with a malicious description. The payload persists in the dataset schema across exports, publications, and shares, giving it a supply-chain propagation vector common in ML/data-science workflows. When the script fires, it runs in the FiftyOne application origin, where it can leverage the open-source server's unauthenticated media route to read arbitrary local files from the victim's machine and interact with dataset and operator APIs as the authenticated user. No public exploit identified at time of analysis; a vendor-released patch exists in v1.21.0.