Skip to main content
← All vulnerabilities
CVE-2023-47248PYSEC-2023-238GHSA-5WVP-7F3H-6WMM

PyArrow, PyArrow: Arbitrary code execution when loading a malicious data file

Published
Last modified
published
Not listed in CISA KEV
Critical (apache)
Fix
Fixed in 14.0.1
1 proof of concept on GitHub, 1 Nuclei template

Summary

Deserialization of untrusted data in IPC and Parquet readers in PyArrow versions 0.14.0 to 14.0.0 allows arbitrary code execution. An application is vulnerable if it reads Arrow IPC, Feather or Parquet data from untrusted sources (for example user-supplied input files). This vulnerability only affects PyArrow, not other Apache Arrow implementations or bindings. It is recommended that users of PyArrow upgrade to 14.0.1. Similarly, it is recommended that downstream libraries upgrade their dependency requirements to PyArrow 14.0.1 or later. PyPI packages are already available, and we hope that conda-forge packages will be available soon. If it is not possible to upgrade, we provide a separate package `pyarrow-hotfix` that disables the vulnerability on older PyArrow versions. See https://pypi.org/project/pyarrow-hotfix/ for instructions.

Timeline

  1. CVE published
  2. Record last updated
  3. EPSS reached 10%

    FIRST estimates at least a 10% chance of exploitation in the next 30 days

Affected versions

  • pyarrow

    From 0.14.0 · through 14.0.0

  • pyarrow

    From 0.14.0 · through 14.0.0

  • pyarrowPyPI

    From 0.14.0 · fixed in 14.0.1

References 8

lists.apache.org

GitHub · apache/arrow

pypi.org

lists.fedoraproject.org

GitHub · projectdiscovery/nuclei-templates

GitHub · Prodigysec/pyarrow-CVE-2023-47248