This project contains known security vulnerabilities. Find detailed information at the bottom.

Crate polars-io

Dependencies

(30 total, 12 outdated, 2 insecure, 2 possibly insecure)

CrateRequiredLatestStatus
 ahash^0.80.8.12up to date
 arrow2 ⚠️^0.170.18.0insecure
 async-trait^0.1.590.1.88up to date
 bytes^1.3.01.10.1up to date
 chrono ⚠️^0.40.4.41maybe insecure
 chrono-tz^0.8.10.10.3out of date
 fast-float ⚠️^0.2.00.2.0insecure
 flate2^11.1.2up to date
 futures^0.3.250.3.31up to date
 home^0.5.40.5.11up to date
 lexical^67.0.4out of date
 lexical-core^0.81.0.5out of date
 memchr^22.7.5up to date
 memmap2^0.5.20.9.5out of date
 num-traits^0.20.2.19up to date
 object_store ⚠️^0.5.30.12.2out of date
 once_cell^11.21.3up to date
 polars-arrow^0.29.00.49.1out of date
 polars-core^0.29.00.49.1out of date
 polars-error^0.29.00.49.1out of date
 polars-time^0.29.00.49.1out of date
 polars-utils^0.29.00.49.1out of date
 rayon^1.61.10.0up to date
 regex^1.61.11.1up to date
 serde^11.0.219up to date
 serde_json^11.0.140up to date
 simd-json^0.90.15.1out of date
 simdutf8^0.10.1.5up to date
 tokio^1.26.01.46.1up to date
 url^2.3.12.5.4up to date

Dev dependencies

(1 total, all up-to-date)

CrateRequiredLatestStatus
 tempdir^0.3.70.3.7up to date

Security Vulnerabilities

chrono: Potential segfault in `localtime_r` invocations

RUSTSEC-2020-0159

Impact

Unix-like operating systems may segfault due to dereferencing a dangling pointer in specific circumstances. This requires an environment variable to be set in a different thread than the affected functions. This may occur without the user's knowledge, notably in a third-party library.

Workarounds

No workarounds are known.

References

object_store: Apache Arrow Rust Object Store: AWS WebIdentityToken exposure in log files

RUSTSEC-2024-0358

Exposure of temporary credentials in logs in Apache Arrow Rust Object Store, version 0.10.1 and earlier on all platforms using AWS WebIdentityTokens.

On certain error conditions, the logs may contain the OIDC token passed to AssumeRoleWithWebIdentity. This allows someone with access to the logs to impersonate that identity, including performing their own calls to AssumeRoleWithWebIdentity, until the OIDC token expires. Typically OIDC tokens are valid for up to an hour, although this will vary depending on the issuer.

Users are recommended to use a different AWS authentication mechanism, disable logging or upgrade to version 0.10.2, which fixes this issue.

Details

When using AWS WebIdentityTokens with the object_store crate, in the event of a failure and automatic retry, the underlying reqwest error, including the full URL with the credentials, potentially in the parameters, is written to the logs.

Thanks to Paul Hatcherian for reporting this vulnerability

fast-float: Segmentation fault due to lack of bound check

RUSTSEC-2025-0003

In this case, the "fast_float::common::AsciiStr::first" method within the "AsciiStr" struct uses the unsafe keyword to reading from memory without performing bounds checking. Specifically, it directly dereferences a pointer offset by "self.ptr". Because of the above reason, the method accesses invalid memory address when it takes an empty string as its input. This approach violates Rust’s memory safety guarantees, as it can lead to invalid memory access if empty buffer is provided.

No patched version for fast-float crate has been released, but a patch is available in the fast-float2 fork.

arrow2: Out of bounds access in public safe API

RUSTSEC-2025-0038

Rows::row_unchecked() allows out of bounds access to the underlying buffer without sufficient checks.

The arrow2 crate is no longer maintained, so there are no plans to fix this issue. Users are advised to migrate to the arrow crate, instead.