NetBSD-Bugs archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

port-alpha/57511: ld.elf_so(1) does not support secure PLT for alpha



>Number:         57511
>Category:       port-alpha
>Synopsis:       ld.elf_so(1) does not support secure PLT for alpha
>Confidential:   no
>Severity:       serious
>Priority:       medium
>Responsible:    port-alpha-maintainer
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Fri Jul 07 08:20:00 +0000 2023
>Originator:     Rin Okuyama
>Release:        10.99.4
>Organization:
Internet Initiative Japan Inc.
>Environment:
NetBSD ds10 10.99.4 NetBSD 10.99.4 (GENERIC-$Revision: 1.418 $) #6: Wed Jun 28 19:19:37 JST 2023 rin@latipes:/home/rin/repos/src/sys/arch/alpha/compile/DS10 alpha
>Description:
Dynamic-linked binaries for alpha built with binutils 2.39 crash
due to SIGSEGV in __start, trying to jump into NULL.

This is worked around by forcibly disabling secure PLT option,
introduced by binutils 2.39 for us.

With this option, write permission to .plt section is dropped,
and we need to parse GOT differently as before, see
``if (elf64_alpha_use_secureplt)'' blocks in
external/gpl3/binutils/dist/bfd/elf64-alpha.c.

Also note that there is no official System V (or ELF) ABI
definitions published for alpha.
>How-To-Repeat:
Try to run any dynamically-linked binaries generated by binutils
2.39 on alpha. Then, it will crash due to SIGSEGV.
>Fix:
Add support for secure PLT for ld.elf_so(1) on alpha.



Home | Main Index | Thread Index | Old Index