CVE-2019-15547
Mishandling of format strings in ncurses
An issue was discovered in the ncurses crate through 5.99.0 for Rust. There are format string issues in printw functions because C format arguments are mishandled.
Attack profile
How easy it is to exploit
- Attack vector
- Network
- Complexity
- Low
- Privileges needed
- None
- User interaction
- None
What an attacker can affect
- Confidentiality
- None
- Integrity
- High
- Availability
- None
Exploit likelihood
What each source reports
NVD Score used
7.5
An issue was discovered in the ncurses crate through 5.99.0 for Rust. There are format string issues in printw functions because C format arguments are mishandled.
- Record
CVE-2019-15547- CVSS 3.0
- 7.5 High
CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:N - CVSS 2.0
- 6.4 Medium
AV:N/AC:L/Au:N/C:N/I:P/A:P - Weakness
- CWE-134
- Updated
- 2026-11-02
CVE List No score
An issue was discovered in the ncurses crate through 5.99.0 for Rust. There are format string issues in printw functions because C format arguments are mishandled.
- Record
CVE-2019-15547- Updated
- 2026-11-02
EUVDEUVD-2021-1524 No score
An issue was discovered in the ncurses crate through 5.99.0 for Rust. There are format string issues in printw functions because C format arguments are mishandled.
- Record
EUVD-2021-1524- Updated
- 2026-11-03
GitHub AdvisoriesGHSA-32v7-ghpr-c8hg
7.5
Mishandling of format strings in ncurses
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).
- Record
GHSA-32v7-ghpr-c8hg- CVSS 3.0
- 7.5 High
CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:N - Weakness
- CWE-134
- Updated
- 2026-11-02
OSVGHSA-32v7-ghpr-c8hg
7.5
Mishandling of format strings in ncurses
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).
- Record
GHSA-32v7-ghpr-c8hg- CVSS 3.0
- 7.5 High
CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:N - Weakness
- CWE-134
- Updated
- 2026-11-02
OSVGHSA-g7r5-x7cr-vm3v
9.8
Buffer overflow and format vulnerabilities in ncurses
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).
- Record
GHSA-g7r5-x7cr-vm3v- CVSS 3.0
- 9.8 Critical
CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H - Weakness
- CWE-119
- Updated
- 2026-11-02
OSVUBUNTU-CVE-2019-15547
7.5
An issue was discovered in the ncurses crate through 5.99.0 for Rust. There are format string issues in printw functions because C format arguments are mishandled.
- Record
UBUNTU-CVE-2019-15547- CVSS 3.0
- 7.5 High
CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:N - Updated
- 2026-11-02
OSVRUSTSEC-2019-0006 No score
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
printwfamily).
- Record
RUSTSEC-2019-0006- Updated
- 2026-11-02
Affected products
Affected packages
| Package | Affected | Fixed |
|---|---|---|
ncursescrates.io |
through 5.101.0 | None known |
ncursescrates.io From an advisory covering 2 CVEs |
through 5.101.0 | None known |
ncursescrates.io From an advisory covering 2 CVEs |
0.0.0-0 and later | None known |
rust-ncursesUbuntu:20.04:LTS |
All versions, plus listed versions 5.99.0-1 |
None known |
rust-ncursesUbuntu:22.04:LTS |
All versions, plus listed versions 5.99.0-3 |
None known |
History
| Recorded | Changed | Sources |
|---|---|---|
| affected, facts | ||
| aliases | EUVD | |
| first indexed | CVE List, GitHub Advisories, NVD, OSV |
Dates are when Every CVE recorded each change. Upstream dates may differ.
In short
CVE-2019-15547 is a high vulnerability (CVSS 7.5) in Ncurses Project Ncurses, published June 15, 2019. No source lists public exploit code. EPSS puts the chance of exploitation in the next 30 days at 1.24%, the 69th percentile. No source names a fixed version.