Bug 2196282 - rust: Support SHSTK ELF notes in binaries
Summary: rust: Support SHSTK ELF notes in binaries
Keywords:
Status: NEW
Alias: None
Product: Fedora
Classification: Fedora
Component: rust
Version: 39
Hardware: x86_64
OS: Linux
unspecified
medium
Target Milestone: ---
Assignee: Rust SIG
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2023-05-08 15:46 UTC by Siddhesh Poyarekar
Modified: 2023-08-16 08:09 UTC (History)
5 users (show)

Fixed In Version:
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Environment:
Last Closed:
Type: ---
Embargoed:


Attachments (Terms of Use)


Links
System ID Private Priority Status Summary Last Updated
Github rust-lang rust issues 93754 0 None open Tracking Issue for control-flow enforcement technology (CET) 2023-05-09 18:59:54 UTC

Description Siddhesh Poyarekar 2023-05-08 15:46:58 UTC
Linux will support SHSTK in userspace and glibc will eventually have support to use it and subsequently enable shadow stacks on all binaries that are marked up with SHSTK in ELF notes.

Rust still does not have support for cf-protection in a stable release yet and hence compiled binaries don't have the SHSTK markup. This is problematic for applications that dlopen rust based plugins, since that will be unsupported and hence result in program termination.  Work on rust support is ongoing; CET support is in unstable but there are still some loose ends to resolve, e.g. actual generation of the property note.

Track rebase of rust into rawhide, to the version that supports SHSTK markup in ELF binaries generated by rust so that dependent packages can be rebuilt with it.

References:

https://github.com/rust-lang/rust/issues/73820
https://github.com/rust-lang/rust/pull/110304

Reproducible: Always

Comment 1 Fedora Release Engineering 2023-08-16 08:09:24 UTC
This bug appears to have been reported against 'rawhide' during the Fedora Linux 39 development cycle.
Changing version to 39.


Note You need to log in before you can comment on or make changes to this bug.