You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
When packing with upx in Linux, executables with their NX set failed to set NX when packed. That is, the stack/heap/etc. of an upx-packed executable are always executable(PROT_READ implies PROT_EXEC in mmap).
What should have happened?
An executable with GNU_STACK in its program header (implying that the kernel should unset READ_IMPLIES_EXEC for the executable), when packed, should keep their stack+heap+bss not executable.
Do you have an idea for a solution?
Preserve the personality() ..?
How can we reproduce the issue?
Fairly easy. Following steps are self-explanatory.
(Tested on Ubuntu 16.04)
upx 3.92
NRV data compression library 0.84
UCL data compression library 1.03
zlib data compression library 1.2.3
LZMA SDK version 4.43
Copyright (C) 1996-2016 Markus Franz Xaver Johannes Oberhumer
Copyright (C) 1996-2016 Laszlo Molnar
Copyright (C) 2000-2016 John F. Reiser
Copyright (C) 2002-2016 Jens Medoch
Copyright (C) 1995-2005 Jean-loup Gailly and Mark Adler
Copyright (C) 1999-2006 Igor Pavlov
UPX comes with ABSOLUTELY NO WARRANTY; for details type 'upx -L'.
Operating System and version:
Ubuntu 16.04
CPU architecture:
$ uname -a
Linux [computer-name] 4.10.3-041003-generic #201703142331 SMP Wed Mar 15 03:32:45 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux
The text was updated successfully, but these errors were encountered:
What's the problem (or question)?
When packing with upx in Linux, executables with their NX set failed to set NX when packed. That is, the stack/heap/etc. of an upx-packed executable are always executable(
PROT_READ
impliesPROT_EXEC
in mmap).What should have happened?
An executable with
GNU_STACK
in its program header (implying that the kernel should unsetREAD_IMPLIES_EXEC
for the executable), when packed, should keep their stack+heap+bss not executable.Do you have an idea for a solution?
Preserve the
personality()
..?How can we reproduce the issue?
Fairly easy. Following steps are self-explanatory.
(Tested on Ubuntu 16.04)
Please tell us details about your environment.
upx --version
):Ubuntu 16.04
The text was updated successfully, but these errors were encountered: