RUSTSEC-2019-0006 on 2019-06-15: Buffer overflow and format vulnerabilities in functions exposed without unsafe

ncurses exposes functions from the ncurses library which:

  • Pass buffers without length to C functions that may write an arbitrary amount of data, leading to a buffer overflow. (instr, mvwinstr, etc)
  • Passes rust &str to strings expecting C format arguments, allowing hostile input to execute a format string attack, which trivially allows writing arbitrary data to stack memory (functions in the printw family).

CVE-2019-15547

CVE-2019-15548

GHSA-32v7-ghpr-c8hg

GHSA-g7r5-x7cr-vm3v

These reviews are from cargo-vet. To add your review, set up cargo-vet and submit your URL to its registry.

The current version of ncurses is 6.0.1.

5.99.0 (older version) unknown

From kornelski/crev-proofs copy of salsa.debian.org.

Only in debcargo (unstable). Changelog:

  • Team upload.
  • Package ncurses 5.99.0 from crates.io using debcargo 2.4.2

[ Alexander Kjäll ]

  • Fix the arm64 compliation

cargo-vet does not verify reviewers' identity. You have to fully trust the source the audits are from.

unknown

May have been packaged automatically without a review


These reviews are from Crev, a distributed system for code reviews. To add your review, set up cargo-crev.

The current version of ncurses is 6.0.1.


Lib.rs has been able to verify that all files in the crate's tarball, except Cargo.lock, are in the crate's repository. Please note that this check is still in beta, and absence of this confirmation does not mean that the files don't match.

Crates in the crates.io registry are tarball snapshots uploaded by crates' publishers. The registry is not using crates' git repositories, so there is a possibility that published crates have a misleading repository URL, or contain different code from the code in the repository.

To review the actual code of the crate, it's best to use cargo crev open ncurses. Alternatively, you can download the tarball of ncurses v6.0.1 or view the source online.