Community Packages

Please read this before reporting a bug:
https://wiki.archlinux.org/title/Bug_reporting_guidelines

Do NOT report bugs when a package is just outdated, or it is in the AUR. Use the 'flag out of date' link on the package page, or the Mailing List.

REPEAT: Do NOT report bugs for outdated packages!
Tasklist

FS#68674 - [io] package lacks FULL RELRO and contains dangerous RPATH's

Attached to Project: Community Packages
Opened by Jelle van der Waa (jelly) - Thursday, 19 November 2020, 20:55 GMT
Last edited by Alexander F. Rødseth (xyproto) - Wednesday, 25 November 2020, 19:10 GMT
Task Type Bug Report
Category Packages
Status Closed
Assigned To Alexander F. Rødseth (xyproto)
Architecture All
Severity Low
Priority Normal
Reported Version
Due in Version Undecided
Due Date Undecided
Percent Complete 100%
Votes 0
Private No

Details

Description:

Building the package shows tons of namcap warnings most importantly:

io W: ELF file ('usr/bin/io') lacks FULL RELRO, check LDFLAGS.
io W: ELF file ('usr/bin/io_static') lacks FULL RELRO, check LDFLAGS.

And insecure RPATH's

io E: Insecure RPATH '/build/io/src/build/_build/dll' in file ('usr/lib/io/addons/AsyncRequest/_build/dll/libIoAsyncRequest.so')
io E: Insecure RPATH '/build/io/src/build/_build/dll' in file ('usr/lib/io/addons/BigNum/_build/dll/libIoBigNum.so')
This task depends upon

Closed by  Alexander F. Rødseth (xyproto)
Wednesday, 25 November 2020, 19:10 GMT
Reason for closing:  Fixed
Comment by loqs (loqs) - Thursday, 19 November 2020, 22:38 GMT
The attached patch drops all RPATH use, adds FULL RELRO and removes executable stack.
Build tested only.
Comment by Alexander F. Rødseth (xyproto) - Monday, 23 November 2020, 13:41 GMT
Thanks for reporting. I'll look into this.
Comment by Alexander F. Rødseth (xyproto) - Wednesday, 25 November 2020, 15:24 GMT
When applying the suggested patch and rebuilding io, I get this error when starting io:

io: Relink `/usr/lib/libbasekit.so' with `/usr/lib/libm.so.6' for IFUNC symbol `ceil'
zsh: segmentation fault (core dumped) io

I'm in the process of trying to figure out why.
Comment by Alexander F. Rødseth (xyproto) - Wednesday, 25 November 2020, 19:09 GMT
I could not find any trick to make the dynamically linked io executable work. Ideas for how to make this work are warmly welcome.

For now, I'm installing the statically compiled `io` executable as `/usr/bin/io`. This works without any RELRO or RPATH issues.

Loading...