rustsec-2025-0051
Vulnerability from osv_rustsec
Published
2025-08-05 12:00
Modified
2025-10-28 06:02
Summary
`xcb::Connection::connect_to_fd*` functions violate I/O safety
Details
The API of xcb::Connection has constructors which allow an arbitrary RawFd
to be used as a socket connection. On either failure of these constructors or
on the drop of Connection, it closes the associated file descriptor. Thus, a
program which uses an OwnedFd (such as a UnixStream) as the file descriptor
can close the file descriptor and continue to attempt using it or close an
already-closed file descriptor, violating I/O safety.
Starting in version 1.6.0, xcb provides Connection::connect_with_fd and
Connection::connect_with_fd_and_extensions as safe alternatives and
deprecates the problematic functions.
{
"affected": [
{
"database_specific": {
"categories": [],
"cvss": null,
"informational": "unsound"
},
"ecosystem_specific": {
"affected_functions": null,
"affects": {
"arch": [],
"functions": [
"xcb::Connection::connect_to_fd",
"xcb::Connection::connect_to_fd_with_extensions"
],
"os": []
}
},
"package": {
"ecosystem": "crates.io",
"name": "xcb",
"purl": "pkg:cargo/xcb"
},
"ranges": [
{
"events": [
{
"introduced": "0.0.0-0"
},
{
"fixed": "1.6.0"
}
],
"type": "SEMVER"
}
],
"versions": []
}
],
"aliases": [
"GHSA-655h-hg88-5qmf"
],
"database_specific": {
"license": "CC0-1.0"
},
"details": "The API of `xcb::Connection` has constructors which allow an arbitrary `RawFd`\nto be used as a socket connection. On either failure of these constructors or\non the drop of `Connection`, it closes the associated file descriptor. Thus, a\nprogram which uses an `OwnedFd` (such as a `UnixStream`) as the file descriptor\ncan close the file descriptor and continue to attempt using it or close an\nalready-closed file descriptor, violating I/O safety.\n\nStarting in version 1.6.0, `xcb` provides `Connection::connect_with_fd` and\n`Connection::connect_with_fd_and_extensions` as safe alternatives and\ndeprecates the problematic functions.",
"id": "RUSTSEC-2025-0051",
"modified": "2025-10-28T06:02:18Z",
"published": "2025-08-05T12:00:00Z",
"references": [
{
"type": "PACKAGE",
"url": "https://crates.io/crates/xcb"
},
{
"type": "ADVISORY",
"url": "https://rustsec.org/advisories/RUSTSEC-2025-0051.html"
},
{
"type": "REPORT",
"url": "https://github.com/rust-x-bindings/rust-xcb/issues/282"
},
{
"type": "REPORT",
"url": "https://github.com/rust-x-bindings/rust-xcb/issues/167"
},
{
"type": "WEB",
"url": "https://github.com/rust-x-bindings/rust-xcb/pull/283"
}
],
"related": [],
"severity": [],
"summary": "`xcb::Connection::connect_to_fd*` functions violate I/O safety"
}
Loading…
Loading…
Sightings
| Author | Source | Type | Date |
|---|
Nomenclature
- Seen: The vulnerability was mentioned, discussed, or observed by the user.
- Confirmed: The vulnerability has been validated from an analyst's perspective.
- Published Proof of Concept: A public proof of concept is available for this vulnerability.
- Exploited: The vulnerability was observed as exploited by the user who reported the sighting.
- Patched: The vulnerability was observed as successfully patched by the user who reported the sighting.
- Not exploited: The vulnerability was not observed as exploited by the user who reported the sighting.
- Not confirmed: The user expressed doubt about the validity of the vulnerability.
- Not patched: The vulnerability was not observed as successfully patched by the user who reported the sighting.
Loading…
Loading…