From: deraadt Date: Wed, 21 Jun 2017 20:31:46 +0000 (+0000) Subject: elf64_x86_64_plt0_entry had a hardcoded nop-sled, before the subsequent X-Git-Url: http://artulab.com/gitweb/?a=commitdiff_plain;h=3714365dbbba6b4c75a216cfb2a6800fa13e1f81;p=openbsd elf64_x86_64_plt0_entry had a hardcoded nop-sled, before the subsequent plt entry. Since previous effective instruction is a a jmp, this can be a sequence of traps. ok mlarkin --- diff --git a/gnu/usr.bin/binutils-2.17/bfd/elf64-x86-64.c b/gnu/usr.bin/binutils-2.17/bfd/elf64-x86-64.c index c63bf138994..da4398159c8 100644 --- a/gnu/usr.bin/binutils-2.17/bfd/elf64-x86-64.c +++ b/gnu/usr.bin/binutils-2.17/bfd/elf64-x86-64.c @@ -350,7 +350,7 @@ static const bfd_byte elf64_x86_64_plt0_entry[PLT_ENTRY_SIZE] = { 0xff, 0x35, 8, 0, 0, 0, /* pushq GOT+8(%rip) */ 0xff, 0x25, 16, 0, 0, 0, /* jmpq *GOT+16(%rip) */ - 0x90, 0x90, 0x90, 0x90 /* pad out to 16 bytes with nops. */ + 0xcc, 0xcc, 0xcc, 0xcc /* pad out to 16 bytes with int3. */ }; /* Subsequent entries in a procedure linkage table look like this. */