ExecutableStacks
|
Size: 3904
Comment:
|
← Revision 62 as of 2017-08-22 14:25:31 ⇥
Size: 20600
Comment:
|
| Deletions are marked like this. | Additions are marked like this. |
| Line 9: | Line 9: |
| * found in a build, check a .o file: "scanelf -e $BIN" shows an "X". | * found in a build, check a .o file: "readelf -SW $OBJ | grep GNU-stack" shows with "X" flag. (Or "scanelf -e $OBJ" shows an "X".) |
| Line 14: | Line 14: |
| .section .note.GNU-stack, "", @progbits}}} * YASM: {{{ |
#if defined(__linux__) && defined(__ELF__) .section .note.GNU-stack, "", %progbits #endif}}} * YASM (be careful of builds that use yasm's "-f" to specific "elf64" or "elf32", which breaks the following test -- in that case just skip the ifidn/endif lines): {{{ |
| Line 24: | Line 26: |
| Originally generated from the ELF files with executable stacks in Karmic main. == Fixed == |
== Unidentified == * None known == Trampolines == * klibc (setjmp implementation) * kexec-tools (statically linked against klibc) * [[https://launchpad.net/bugs/408499|mono]] (but only in the i386 debugger, it seems) == Nested Functions == Uses [[http://grub.enbug.org/NestedFunctions|Nested Functions]] which compiler generates as [[http://gcc.gnu.org/onlinedocs/gccint/Trampolines.html|trampolines]] on the stack. Not allowed by ISO C. * grub * grub2 [[http://savannah.gnu.org/bugs/?25220|upstream bug]] (in progress upstream for 2.01 --cjwatson) == Unmarked Assembler == * None known == Shipped Precompiled Binaries == * None known == No Stack Section == * memtest86+ (is a boot-loaded ELF, not a big deal) == Fixed Lucid Main/Restricted == * [[https://launchpad.net/bugs/537650|sl-modem-daemon]] (shipped precompiled binaries) == Fixed Karmic Main/Restricted Packages == |
| Line 35: | Line 62: |
== In Progress == |
* [[https://bugs.launchpad.net/bugs/434813|mountall]] (nested functions) |
| Line 43: | Line 69: |
| * mountall (nested functions) == Trampolines == * klibc (setjmp implementation) * kexec-tools (statically linked against klibc) * [[https://launchpad.net/bugs/408499|mono]] (but only in the i386 debugger, it seems) == Nested Functions == Uses [[http://grub.enbug.org/NestedFunctions|Nested Functions]] which compiler generates as [[http://gcc.gnu.org/onlinedocs/gccint/Trampolines.html|trampolines]] on the stack. Not allowed by ISO C. * grub * grub2 [[http://savannah.gnu.org/bugs/?25220|upstream bug]] * mbr == Unmarked Assembler == * None known == No Stack Section == * memtest86+ (is a boot-loaded ELF, not a big deal) |
|
| Line 65: | Line 73: |
= List of i386 binaries in Artful with executable stack = {{{ X ./bin/lksh X ./boot/invaders.exec X ./boot/memtest86+_multiboot.bin X ./lib/klibc-T5LXP1hTwH_ezt-1EUSxPbNR_es.so X ./sbin/netplugd X ./sbin/ngetty X ./sbin/ngetty-argv X ./sbin/ngetty-helper X ./sbin/zdb X ./sbin/zfs X ./sbin/zfs-fuse X ./sbin/zpool X ./usr/alpha-linux-gnu/lib/libgnatprj.so.6 X ./usr/arm-linux-gnueabihf/lib/libgnatprj.so.5 X ./usr/arm-linux-gnueabihf/lib/libgnatprj.so.6 X ./usr/arm-linux-gnueabi/lib/libgnatprj.so.5 X ./usr/arm-linux-gnueabi/lib/libgnatprj.so.6 X ./usr/bin/aarch64-linux-gnu-gnat-5 X ./usr/bin/aarch64-linux-gnu-gnatclean-5 X ./usr/bin/aarch64-linux-gnu-gnatls-5 X ./usr/bin/aarch64-linux-gnu-gnatmake-5 X ./usr/bin/aarch64-linux-gnu-gnatname-5 X ./usr/bin/alt-ergo X ./usr/bin/altgr-ergo X ./usr/bin/aribas X ./usr/bin/arm-linux-gnueabi-gnat-5 X ./usr/bin/arm-linux-gnueabi-gnat-6 X ./usr/bin/arm-linux-gnueabi-gnatclean-5 X ./usr/bin/arm-linux-gnueabi-gnatclean-6 X ./usr/bin/arm-linux-gnueabi-gnatls-5 X ./usr/bin/arm-linux-gnueabi-gnatls-6 X ./usr/bin/arm-linux-gnueabi-gnatmake-5 X ./usr/bin/arm-linux-gnueabi-gnatmake-6 X ./usr/bin/arm-linux-gnueabi-gnatname-5 X ./usr/bin/arm-linux-gnueabi-gnatname-6 X ./usr/bin/arm-linux-gnueabihf-gnat-5 X ./usr/bin/arm-linux-gnueabihf-gnat-6 X ./usr/bin/arm-linux-gnueabihf-gnatclean-5 X ./usr/bin/arm-linux-gnueabihf-gnatclean-6 X ./usr/bin/arm-linux-gnueabihf-gnatls-5 X ./usr/bin/arm-linux-gnueabihf-gnatls-6 X ./usr/bin/arm-linux-gnueabihf-gnatmake-5 X ./usr/bin/arm-linux-gnueabihf-gnatmake-6 X ./usr/bin/arm-linux-gnueabihf-gnatname-5 X ./usr/bin/arm-linux-gnueabihf-gnatname-6 X ./usr/bin/awsres X ./usr/bin/belenios-tool X ./usr/bin/buildapp X ./usr/bin/care X ./usr/bin/curvecpclient X ./usr/bin/curvecpmakekey X ./usr/bin/dgen X ./usr/bin/dh_ada_library X ./usr/bin/dnetc X ./usr/bin/dq X ./usr/bin/fasm X ./usr/bin/frama-c X ./usr/bin/frama-c-gui X ./usr/bin/gnat-5 X ./usr/bin/gnatcheck X ./usr/bin/gnatclean-5 X ./usr/bin/gnatcoll_db2ada X ./usr/bin/gnatdoc X ./usr/bin/gnatelim X ./usr/bin/gnat-gps X ./usr/bin/gnatinspect X ./usr/bin/gnatmake-5 X ./usr/bin/gnatspark X ./usr/bin/gnatstub X ./usr/bin/gogo.i386 X ./usr/bin/gogo.i686 X ./usr/bin/gogo.k6 X ./usr/bin/gol X ./usr/bin/gprbuild X ./usr/bin/gprclean X ./usr/bin/gprconfig X ./usr/bin/gprinstall X ./usr/bin/gprslave X ./usr/bin/gps_cli X ./usr/bin/grub-emu X ./usr/bin/grub-emu-lite X ./usr/bin/hppa-linux-gnu-gnat-6 X ./usr/bin/hppa-linux-gnu-gnatclean-6 X ./usr/bin/hppa-linux-gnu-gnatls-6 X ./usr/bin/hppa-linux-gnu-gnatmake-6 X ./usr/bin/hppa-linux-gnu-gnatname-6 X ./usr/bin/i686-linux-gnu-gnat-6 X ./usr/bin/i686-linux-gnu-gnatclean-6 X ./usr/bin/i686-linux-gnu-gnatmake-6 X ./usr/bin/i686-w64-mingw32-gnatclean-posix X ./usr/bin/i686-w64-mingw32-gnatclean-win32 X ./usr/bin/i686-w64-mingw32-gnatls-posix X ./usr/bin/i686-w64-mingw32-gnatls-win32 X ./usr/bin/i686-w64-mingw32-gnatmake-posix X ./usr/bin/i686-w64-mingw32-gnatmake-win32 X ./usr/bin/i686-w64-mingw32-gnatname-posix X ./usr/bin/i686-w64-mingw32-gnatname-win32 X ./usr/bin/i686-w64-mingw32-gnat-posix X ./usr/bin/i686-w64-mingw32-gnat-win32 X ./usr/bin/iac X ./usr/bin/ikarus X ./usr/bin/ir_ab_names X ./usr/bin/likwid-bench X ./usr/bin/lkvm X ./usr/bin/mipsel-linux-gnu-gnat-6 X ./usr/bin/mipsel-linux-gnu-gnatclean-6 X ./usr/bin/mipsel-linux-gnu-gnatls-6 X ./usr/bin/mipsel-linux-gnu-gnatmake-6 X ./usr/bin/mipsel-linux-gnu-gnatname-6 X ./usr/bin/mips-linux-gnu-gnat-6 X ./usr/bin/mips-linux-gnu-gnatclean-6 X ./usr/bin/mips-linux-gnu-gnatls-6 X ./usr/bin/mips-linux-gnu-gnatmake-6 X ./usr/bin/mips-linux-gnu-gnatname-6 X ./usr/bin/music123 X ./usr/bin/pgcharts X ./usr/bin/pgloader X ./usr/bin/poly X ./usr/bin/powerpc64le-linux-gnu-gnat-5 X ./usr/bin/powerpc64le-linux-gnu-gnatclean-5 X ./usr/bin/powerpc64le-linux-gnu-gnatls-5 X ./usr/bin/powerpc64le-linux-gnu-gnatmake-5 X ./usr/bin/powerpc64le-linux-gnu-gnatname-5 X ./usr/bin/powerpc-linux-gnu-gnat-5 X ./usr/bin/powerpc-linux-gnu-gnat-6 X ./usr/bin/powerpc-linux-gnu-gnatclean-5 X ./usr/bin/powerpc-linux-gnu-gnatclean-6 X ./usr/bin/powerpc-linux-gnu-gnatls-5 X ./usr/bin/powerpc-linux-gnu-gnatls-6 X ./usr/bin/powerpc-linux-gnu-gnatmake-5 X ./usr/bin/powerpc-linux-gnu-gnatmake-6 X ./usr/bin/powerpc-linux-gnu-gnatname-5 X ./usr/bin/powerpc-linux-gnu-gnatname-6 X ./usr/bin/proot X ./usr/bin/rsh-redone-rlogin X ./usr/bin/s2cdecl X ./usr/bin/s2ch X ./usr/bin/s2ci X ./usr/bin/s2cixl X ./usr/bin/s390x-linux-gnu-gnat-5 X ./usr/bin/s390x-linux-gnu-gnatclean-5 X ./usr/bin/s390x-linux-gnu-gnatls-5 X ./usr/bin/s390x-linux-gnu-gnatmake-5 X ./usr/bin/s390x-linux-gnu-gnatname-5 X ./usr/bin/sbcl X ./usr/bin/scheme-script X ./usr/bin/sdpa X ./usr/bin/sh4-linux-gnu-gnat-6 X ./usr/bin/sh4-linux-gnu-gnatclean-6 X ./usr/bin/sh4-linux-gnu-gnatls-6 X ./usr/bin/sh4-linux-gnu-gnatmake-6 X ./usr/bin/sh4-linux-gnu-gnatname-6 X ./usr/bin/smbc X ./usr/bin/smlformat X ./usr/bin/smllex X ./usr/bin/smlsharp X ./usr/bin/smlyacc X ./usr/bin/templates2ada X ./usr/bin/victor X ./usr/bin/webxref X ./usr/bin/x86_64-w64-mingw32-gnatclean-posix X ./usr/bin/x86_64-w64-mingw32-gnatclean-win32 X ./usr/bin/x86_64-w64-mingw32-gnatls-posix X ./usr/bin/x86_64-w64-mingw32-gnatls-win32 X ./usr/bin/x86_64-w64-mingw32-gnatmake-posix X ./usr/bin/x86_64-w64-mingw32-gnatmake-win32 X ./usr/bin/x86_64-w64-mingw32-gnatname-posix X ./usr/bin/x86_64-w64-mingw32-gnatname-win32 X ./usr/bin/x86_64-w64-mingw32-gnat-posix X ./usr/bin/x86_64-w64-mingw32-gnat-win32 X ./usr/bin/xspect X ./usr/bin/zapping X ./usr/games/glhexen2 X ./usr/games/glhwcl X ./usr/games/hexen2 X ./usr/games/hwcl X ./usr/games/kraptor X ./usr/games/liquidwar X ./usr/games/powermanga X ./usr/lib/atlas-base/libatlas.so.3.0 X ./usr/lib/boinc-app-seti-graphics/setiathome_v8 X ./usr/lib/boinc-app-seti/setiathome_v8 X ./usr/lib/cafeobj-1.5/sbcl/cafeobj.sbcl X ./usr/lib/clisp-2.49/base/lisp.run X ./usr/lib/debug/.build-id/3e/03d643926bc2491fde8b14511e33ac1fe191ca.debug X ./usr/lib/debug/.build-id/4b/112c4edb27f5f0b6acddedaece2999882550cb.debug X ./usr/lib/debug/.build-id/50/fd261193829ca944588ebc2db9937afb18e047.debug X ./usr/lib/debug/.build-id/51/62b0b658c190f670fca2727edd616dba43ab75.debug X ./usr/lib/debug/.build-id/62/0e1bd3d3f5a0802677ec6bbb9951b36e244687.debug X ./usr/lib/debug/.build-id/66/4d7bd9582e4a0ca2cabe8f9559bfc70732533c.debug X ./usr/lib/debug/.build-id/6a/0468381d4aa6fe4e3bb9b7893d846dc7cf7896.debug X ./usr/lib/debug/.build-id/6f/02a685c385108b81c39648c36a44e049a2a208.debug X ./usr/lib/debug/.build-id/81/7378ae3760225b0cd065c0f7ae68f388859785.debug X ./usr/lib/debug/.build-id/81/797d256a35155df98937966670dcf8c6b89420.debug X ./usr/lib/debug/.build-id/87/499da76a3f3fe99c65041bd66278e5c5c44f4a.debug X ./usr/lib/debug/.build-id/8d/918ffc5ccccba5c458dcac633ddb09137d54bb.debug X ./usr/lib/debug/.build-id/ac/4845c431f49e7b36b7365e6f4686ff8678531a.debug X ./usr/lib/debug/.build-id/af/704c28bbff171bd673612993e93d74e4c017a6.debug X ./usr/lib/debug/.build-id/cc/e7e7ac983c80058b136aa8dd6e86b0acdcfa45.debug X ./usr/lib/debug/.build-id/d1/2dc64179acf727b586ba1f4a5a9953c518d19a.debug X ./usr/lib/debug/usr/bin/iac X ./usr/lib/debug/usr/bin/ir_ab_names X ./usr/lib/debug/usr/lib/i386-linux-gnu/libpolyorb-corba-cos-event-impl.so.4 X ./usr/lib/debug/usr/lib/i386-linux-gnu/libpolyorb-corba-cos-ir-impl.so.4 X ./usr/lib/debug/usr/lib/i386-linux-gnu/libpolyorb-corba-cos-naming.so.4 X ./usr/lib/debug/usr/lib/i386-linux-gnu/libpolyorb-corba-cos-notification.so.4 X ./usr/lib/debug/usr/lib/i386-linux-gnu/libpolyorb-corba-dynamicany.so.4 X ./usr/lib/debug/usr/lib/i386-linux-gnu/libpolyorb-corba-iop.so.4 X ./usr/lib/debug/usr/lib/i386-linux-gnu/libpolyorb-corba-messaging.so.4 X ./usr/lib/debug/usr/lib/i386-linux-gnu/libpolyorb-corba-portableinterceptor.so.4 X ./usr/lib/debug/usr/lib/i386-linux-gnu/libpolyorb-corba.so.4 X ./usr/lib/debug/usr/lib/i386-linux-gnu/libpolyorb-dsa.so.4 X ./usr/lib/debug/usr/lib/i386-linux-gnu/libpolyorb-giop-diop.so.4 X ./usr/lib/debug/usr/lib/i386-linux-gnu/libpolyorb-moma.so.4 X ./usr/lib/debug/usr/lib/i386-linux-gnu/libpolyorb.so.4 X ./usr/lib/gimp/2.0/plug-ins/resynthesizer X ./usr/lib/gprbuild/gprbind X ./usr/lib/gprbuild/gprlib X ./usr/lib/grub/i386-coreboot/kernel.exec X ./usr/lib/grub/i386-coreboot/kernel.img X ./usr/lib/grub/i386-ieee1275/kernel.exec X ./usr/lib/grub/i386-ieee1275/kernel.img X ./usr/lib/grub/i386-pc/kernel.exec X ./usr/lib/grub/i386-pc/kernel.img X ./usr/lib/grub/i386-xen/kernel.exec X ./usr/lib/grub/i386-xen/kernel.img X ./usr/lib/grub/x86_64-xen/kernel.exec X ./usr/lib/grub/x86_64-xen/kernel.img X ./usr/lib/i386-linux-gnu/fis-gtm/V6.3-000A_i686/dse X ./usr/lib/i386-linux-gnu/fis-gtm/V6.3-000A_i686/gtcm_gnp_server X ./usr/lib/i386-linux-gnu/fis-gtm/V6.3-000A_i686/gtcm_play X ./usr/lib/i386-linux-gnu/fis-gtm/V6.3-000A_i686/gtcm_server X ./usr/lib/i386-linux-gnu/fis-gtm/V6.3-000A_i686/gtcm_shmclean X ./usr/lib/i386-linux-gnu/fis-gtm/V6.3-000A_i686/gtmsecshrdir/gtmsecshr X ./usr/lib/i386-linux-gnu/fis-gtm/V6.3-000A_i686/libgtmshr.so X ./usr/lib/i386-linux-gnu/fis-gtm/V6.3-000A_i686/lke X ./usr/lib/i386-linux-gnu/fis-gtm/V6.3-000A_i686/mupip X ./usr/lib/i386-linux-gnu/fis-gtm/V6.3-000A_i686/utf8/gtmsecshrdir/gtmsecshr X ./usr/lib/i386-linux-gnu/libavcall.so.0.0.0 X ./usr/lib/i386-linux-gnu/libaws.so.3.3.2 X ./usr/lib/i386-linux-gnu/libcallback.so.0.0.0 X ./usr/lib/i386-linux-gnu/libgmpada.so.4 X ./usr/lib/i386-linux-gnu/libgnatcoll_readline.so.1.7 X ./usr/lib/i386-linux-gnu/libgnatcoll.so.1.7 X ./usr/lib/i386-linux-gnu/libgnatprj.so.5 X ./usr/lib/i386-linux-gnu/libgnatprj.so.6 X ./usr/lib/i386-linux-gnu/libgtkada.so.3.8.3 X ./usr/lib/i386-linux-gnu/libpolyorb-corba-cos-event-impl.so.4 X ./usr/lib/i386-linux-gnu/libpolyorb-corba-cos-ir-impl.so.4 X ./usr/lib/i386-linux-gnu/libpolyorb-corba-cos-naming.so.4 X ./usr/lib/i386-linux-gnu/libpolyorb-corba-cos-notification.so.4 X ./usr/lib/i386-linux-gnu/libpolyorb-corba-dynamicany.so.4 X ./usr/lib/i386-linux-gnu/libpolyorb-corba-iop.so.4 X ./usr/lib/i386-linux-gnu/libpolyorb-corba-messaging.so.4 X ./usr/lib/i386-linux-gnu/libpolyorb-corba-portableinterceptor.so.4 X ./usr/lib/i386-linux-gnu/libpolyorb-corba.so.4 X ./usr/lib/i386-linux-gnu/libpolyorb-dsa.so.4 X ./usr/lib/i386-linux-gnu/libpolyorb-giop-diop.so.4 X ./usr/lib/i386-linux-gnu/libpolyorb-moma.so.4 X ./usr/lib/i386-linux-gnu/libpolyorb.so.4 X ./usr/lib/i386-linux-gnu/libtemplates_parser.so.11.10.1 X ./usr/lib/i386-linux-gnu/libtexttools.so.7 X ./usr/lib/i386-linux-gnu/libvulkan.so.1.0.54 X ./usr/lib/i386-linux-gnu/libwaudio.so.1.0 X ./usr/lib/i386-linux-gnu/mandos/plugin-runner X ./usr/lib/i386-linux-gnu/mandos/plugins.d/mandos-client X ./usr/lib/i386-linux-gnu/mandos/plugins.d/password-prompt X ./usr/lib/i686-linux-gnu/liblikwid.so.4.2 X ./usr/lib/klibc/bin/cat X ./usr/lib/klibc/bin/chroot X ./usr/lib/klibc/bin/cpio X ./usr/lib/klibc/bin/dd X ./usr/lib/klibc/bin/dmesg X ./usr/lib/klibc/bin/false X ./usr/lib/klibc/bin/fstype X ./usr/lib/klibc/bin/gunzip X ./usr/lib/klibc/bin/gzip X ./usr/lib/klibc/bin/halt X ./usr/lib/klibc/bin/ipconfig X ./usr/lib/klibc/bin/kill X ./usr/lib/klibc/bin/kinit X ./usr/lib/klibc/bin/kinit.shared X ./usr/lib/klibc/bin/ln X ./usr/lib/klibc/bin/losetup X ./usr/lib/klibc/bin/ls X ./usr/lib/klibc/bin/minips X ./usr/lib/klibc/bin/mkdir X ./usr/lib/klibc/bin/mkfifo X ./usr/lib/klibc/bin/mknod X ./usr/lib/klibc/bin/mksh X ./usr/lib/klibc/bin/mount X ./usr/lib/klibc/bin/mv X ./usr/lib/klibc/bin/nfsmount X ./usr/lib/klibc/bin/nuke X ./usr/lib/klibc/bin/pivot_root X ./usr/lib/klibc/bin/poweroff X ./usr/lib/klibc/bin/readlink X ./usr/lib/klibc/bin/reboot X ./usr/lib/klibc/bin/resume X ./usr/lib/klibc/bin/sh.shared X ./usr/lib/klibc/bin/sleep X ./usr/lib/klibc/bin/sync X ./usr/lib/klibc/bin/true X ./usr/lib/klibc/bin/umount X ./usr/lib/klibc/bin/uname X ./usr/lib/klibc/bin/zcat X ./usr/lib/klibc/lib/klibc-T5LXP1hTwH_ezt-1EUSxPbNR_es.so X ./usr/lib/klibc/lib/libc.so X ./usr/lib/libahven.so.26 X ./usr/lib/libalog.so.0.5.2 X ./usr/lib/libatlas-test/xcblat1 X ./usr/lib/libatlas-test/xcblat3 X ./usr/lib/libatlas-test/xccblat1 X ./usr/lib/libatlas-test/xccblat3 X ./usr/lib/libatlas-test/xcinvtst X ./usr/lib/libatlas-test/xcqrtst X ./usr/lib/libatlas-test/xcslvtst X ./usr/lib/libatlas-test/xctrtritst X ./usr/lib/libatlas-test/xcuumtst X ./usr/lib/libatlas-test/xdblat1 X ./usr/lib/libatlas-test/xdblat2 X ./usr/lib/libatlas-test/xdblat3 X ./usr/lib/libatlas-test/xdcblat1 X ./usr/lib/libatlas-test/xdcblat2 X ./usr/lib/libatlas-test/xdcblat3 X ./usr/lib/libatlas-test/xdinvtst X ./usr/lib/libatlas-test/xdmvntime X ./usr/lib/libatlas-test/xdmvttime X ./usr/lib/libatlas-test/xdqrtst X ./usr/lib/libatlas-test/xdr1time X ./usr/lib/libatlas-test/xdr2time X ./usr/lib/libatlas-test/xds1nxtune X ./usr/lib/libatlas-test/xds2nxtune X ./usr/lib/libatlas-test/xdslvtst X ./usr/lib/libatlas-test/xdtrtritst X ./usr/lib/libatlas-test/xduumtst X ./usr/lib/libatlas-test/xsblat1 X ./usr/lib/libatlas-test/xsblat3 X ./usr/lib/libatlas-test/xscblat1 X ./usr/lib/libatlas-test/xscblat3 X ./usr/lib/libatlas-test/xsinvtst X ./usr/lib/libatlas-test/xsqrtst X ./usr/lib/libatlas-test/xsslvtst X ./usr/lib/libatlas-test/xstrtritst X ./usr/lib/libatlas-test/xsuumtst X ./usr/lib/libatlas-test/xzblat1 X ./usr/lib/libatlas-test/xzblat2 X ./usr/lib/libatlas-test/xzblat3 X ./usr/lib/libatlas-test/xzcblat1 X ./usr/lib/libatlas-test/xzcblat2 X ./usr/lib/libatlas-test/xzcblat3 X ./usr/lib/libatlas-test/xzinvtst X ./usr/lib/libatlas-test/xzmvntime X ./usr/lib/libatlas-test/xzmvttime X ./usr/lib/libatlas-test/xzqrtst X ./usr/lib/libatlas-test/xzr1time X ./usr/lib/libatlas-test/xzr2time X ./usr/lib/libatlas-test/xzs1nxtune X ./usr/lib/libatlas-test/xzslvtst X ./usr/lib/libatlas-test/xztrtritst X ./usr/lib/libatlas-test/xzuumtst X ./usr/lib/libdbusada.so.0.3.3 X ./usr/lib/libpcscada.so.0.7.3 X ./usr/lib/multiboot/examples/kernel X ./usr/lib/nvidia-340/bin/nvidia-cuda-mps-control X ./usr/lib/nvidia-340/bin/nvidia-cuda-mps-server X ./usr/lib/ocaml/stublibs/dllzarith.so X ./usr/lib/ocaml/zarith/zarith.cmxs X ./usr/lib/open-axiom/bin/AXIOMsys X ./usr/lib/pd/extra/pdp/pdp_scaf.pd_linux X ./usr/lib/R/lib/libblas.so.3gf X ./usr/lib/R/lib/libguide.so X ./usr/lib/R/lib/liblapack.so.3gf X ./usr/lib/scaf/default.scafo X ./usr/lib/scheme2c/s2ccomp X ./usr/lib/sdpa/mex/mexsdpa.mex X ./usr/lib/sdpa/mex/mexSedumiWrap.mex X ./usr/lib/smlnj/bin/.run/run.x86-linux X ./usr/lib/smlnj/bin/.run/run.x86-linux.so X ./usr/lib/squeak/4.10.2-2614/so.SqueakFFIPrims X ./usr/lib/syslinux/modules/bios/gfxboot.c32 X ./usr/lib/syslinux/modules/bios/ldlinux.c32 X ./usr/lib/syslinux/modules/efi32/gfxboot.c32 X ./usr/lib/syslinux/modules/efi32/ldlinux.e32 X ./usr/lib/syslinux/modules/efi64/gfxboot.c32 X ./usr/lib/syslinux/modules/efi64/ldlinux.e64 X ./usr/lib/virtualbox/VBoxManageHelp X ./usr/powerpc64le-linux-gnu/lib/libgnatprj.so.5 X ./usr/powerpc64le-linux-gnu/lib/libgnatprj.so.6 X ./usr/powerpc-linux-gnu/lib/libgnatprj.so.5 X ./usr/powerpc-linux-gnu/lib/libgnatprj.so.6 X ./usr/s390x-linux-gnu/lib/libgnatprj.so.5 X ./usr/s390x-linux-gnu/lib/libgnatprj.so.6 X ./usr/sbin/curvecpserver X ./usr/sbin/dqcache X ./usr/sbin/martian_modem X ./usr/sbin/sagan X ./usr/sbin/sks X ./usr/sh4-linux-gnu/lib/libgnatprj.so.6 X ./usr/share/android/emulator/out/host/linux-x86/lib/libcrypto-host.so X ./usr/share/dpdk/test/test X ./usr/sparc64-linux-gnu/lib/libgnatprj.so.6 }}} |
There are still some programs that have executable stack regions, which results in their being vulnerable to exploitation via stack memory. There are only a few very rare situations where executable stacks are actually desired, the rest are usually the result of lacking flags in assembly code or using nested functions (which are generally avoidable).
When the linker (ld) performs linking, it marks the stack as executable based on the lowest common demoninator. For example, if everything is marked non-executable except one .o file, the entire library would get marked for an executable stack. In the case of a shared library, this would pollute any program it was loaded into. (The assembler assumes that unmarked .S files need an executable stack, and mark them accordingly.)
If a user is running a PAE kernel or has other NX-memory protections, they lose the ability to protect that program's stack memory from execution, leaving it open to potential unknown future vulnerabilities that might try to execute shellcode from stack memory.
Detection:
- found on the system, check an ELF binary: "readelf -lW $BIN | grep GNU_STACK" shows with "E" flag.
- found in a build, check a .o file: "readelf -SW $OBJ | grep GNU-stack" shows with "X" flag. (Or "scanelf -e $OBJ" shows an "X".)
Information: Gentoo write-up about exec stack handling: http://www.gentoo.org/proj/en/hardened/gnu-stack.xml
Potential Solutions:
- fix assembly source by adding flags to assembler:
GNU as:
#if defined(__linux__) && defined(__ELF__) .section .note.GNU-stack, "", %progbits #endif
YASM (be careful of builds that use yasm's "-f" to specific "elf64" or "elf32", which breaks the following test -- in that case just skip the ifidn/endif lines):
%ifidn __OUTPUT_FORMAT__,elf section .note.GNU-stack noalloc noexec nowrite progbits %endif
fix compiler's default when encountering unmarked assembly: -Wa,--noexecstack will change the behavior of compiler's asm-without-stack-markings defaults.
- rework code to avoid using nested functions.
- force markings into a safe state via "execstack -c $BINARY" during package build.
- fix assembly source by adding flags to assembler:
Main/Restricted Packages
Unidentified
- None known
Trampolines
- klibc (setjmp implementation)
- kexec-tools (statically linked against klibc)
mono (but only in the i386 debugger, it seems)
Nested Functions
Uses Nested Functions which compiler generates as trampolines on the stack. Not allowed by ISO C.
- grub
grub2 upstream bug (in progress upstream for 2.01 --cjwatson)
Unmarked Assembler
- None known
Shipped Precompiled Binaries
- None known
No Stack Section
- memtest86+ (is a boot-loaded ELF, not a big deal)
Fixed Lucid Main/Restricted
sl-modem-daemon (shipped precompiled binaries)
Fixed Karmic Main/Restricted Packages
zip (umarked asm)
bogl (nested function)
link-grammar (nested function)
nss (unmarked asm)
icon (unmarked asm)
john (unmarked asm)
openjdk-6 (unmarked asm)
xvidcore (unmarked asm)
mountall (nested functions)
fglrx-installer (shipped precompiled binaries)
nvidia (shipped precompiled binaries)
- nvidia-graphics-drivers-173
- nvidia-graphics-drivers-180
- nvidia-graphics-drivers-71
- nvidia-graphics-drivers-96
Fedora Patches for universe packages
http://cvs.fedoraproject.org/viewcvs/devel/lightning/lightning-1.2-execstack.patch?view=markup
http://cvs.fedoraproject.org/viewcvs/devel/mlton/mlton-20070826-no-execmem.patch?view=markup
List of i386 binaries in Artful with executable stack
X ./bin/lksh X ./boot/invaders.exec X ./boot/memtest86+_multiboot.bin X ./lib/klibc-T5LXP1hTwH_ezt-1EUSxPbNR_es.so X ./sbin/netplugd X ./sbin/ngetty X ./sbin/ngetty-argv X ./sbin/ngetty-helper X ./sbin/zdb X ./sbin/zfs X ./sbin/zfs-fuse X ./sbin/zpool X ./usr/alpha-linux-gnu/lib/libgnatprj.so.6 X ./usr/arm-linux-gnueabihf/lib/libgnatprj.so.5 X ./usr/arm-linux-gnueabihf/lib/libgnatprj.so.6 X ./usr/arm-linux-gnueabi/lib/libgnatprj.so.5 X ./usr/arm-linux-gnueabi/lib/libgnatprj.so.6 X ./usr/bin/aarch64-linux-gnu-gnat-5 X ./usr/bin/aarch64-linux-gnu-gnatclean-5 X ./usr/bin/aarch64-linux-gnu-gnatls-5 X ./usr/bin/aarch64-linux-gnu-gnatmake-5 X ./usr/bin/aarch64-linux-gnu-gnatname-5 X ./usr/bin/alt-ergo X ./usr/bin/altgr-ergo X ./usr/bin/aribas X ./usr/bin/arm-linux-gnueabi-gnat-5 X ./usr/bin/arm-linux-gnueabi-gnat-6 X ./usr/bin/arm-linux-gnueabi-gnatclean-5 X ./usr/bin/arm-linux-gnueabi-gnatclean-6 X ./usr/bin/arm-linux-gnueabi-gnatls-5 X ./usr/bin/arm-linux-gnueabi-gnatls-6 X ./usr/bin/arm-linux-gnueabi-gnatmake-5 X ./usr/bin/arm-linux-gnueabi-gnatmake-6 X ./usr/bin/arm-linux-gnueabi-gnatname-5 X ./usr/bin/arm-linux-gnueabi-gnatname-6 X ./usr/bin/arm-linux-gnueabihf-gnat-5 X ./usr/bin/arm-linux-gnueabihf-gnat-6 X ./usr/bin/arm-linux-gnueabihf-gnatclean-5 X ./usr/bin/arm-linux-gnueabihf-gnatclean-6 X ./usr/bin/arm-linux-gnueabihf-gnatls-5 X ./usr/bin/arm-linux-gnueabihf-gnatls-6 X ./usr/bin/arm-linux-gnueabihf-gnatmake-5 X ./usr/bin/arm-linux-gnueabihf-gnatmake-6 X ./usr/bin/arm-linux-gnueabihf-gnatname-5 X ./usr/bin/arm-linux-gnueabihf-gnatname-6 X ./usr/bin/awsres X ./usr/bin/belenios-tool X ./usr/bin/buildapp X ./usr/bin/care X ./usr/bin/curvecpclient X ./usr/bin/curvecpmakekey X ./usr/bin/dgen X ./usr/bin/dh_ada_library X ./usr/bin/dnetc X ./usr/bin/dq X ./usr/bin/fasm X ./usr/bin/frama-c X ./usr/bin/frama-c-gui X ./usr/bin/gnat-5 X ./usr/bin/gnatcheck X ./usr/bin/gnatclean-5 X ./usr/bin/gnatcoll_db2ada X ./usr/bin/gnatdoc X ./usr/bin/gnatelim X ./usr/bin/gnat-gps X ./usr/bin/gnatinspect X ./usr/bin/gnatmake-5 X ./usr/bin/gnatspark X ./usr/bin/gnatstub X ./usr/bin/gogo.i386 X ./usr/bin/gogo.i686 X ./usr/bin/gogo.k6 X ./usr/bin/gol X ./usr/bin/gprbuild X ./usr/bin/gprclean X ./usr/bin/gprconfig X ./usr/bin/gprinstall X ./usr/bin/gprslave X ./usr/bin/gps_cli X ./usr/bin/grub-emu X ./usr/bin/grub-emu-lite X ./usr/bin/hppa-linux-gnu-gnat-6 X ./usr/bin/hppa-linux-gnu-gnatclean-6 X ./usr/bin/hppa-linux-gnu-gnatls-6 X ./usr/bin/hppa-linux-gnu-gnatmake-6 X ./usr/bin/hppa-linux-gnu-gnatname-6 X ./usr/bin/i686-linux-gnu-gnat-6 X ./usr/bin/i686-linux-gnu-gnatclean-6 X ./usr/bin/i686-linux-gnu-gnatmake-6 X ./usr/bin/i686-w64-mingw32-gnatclean-posix X ./usr/bin/i686-w64-mingw32-gnatclean-win32 X ./usr/bin/i686-w64-mingw32-gnatls-posix X ./usr/bin/i686-w64-mingw32-gnatls-win32 X ./usr/bin/i686-w64-mingw32-gnatmake-posix X ./usr/bin/i686-w64-mingw32-gnatmake-win32 X ./usr/bin/i686-w64-mingw32-gnatname-posix X ./usr/bin/i686-w64-mingw32-gnatname-win32 X ./usr/bin/i686-w64-mingw32-gnat-posix X ./usr/bin/i686-w64-mingw32-gnat-win32 X ./usr/bin/iac X ./usr/bin/ikarus X ./usr/bin/ir_ab_names X ./usr/bin/likwid-bench X ./usr/bin/lkvm X ./usr/bin/mipsel-linux-gnu-gnat-6 X ./usr/bin/mipsel-linux-gnu-gnatclean-6 X ./usr/bin/mipsel-linux-gnu-gnatls-6 X ./usr/bin/mipsel-linux-gnu-gnatmake-6 X ./usr/bin/mipsel-linux-gnu-gnatname-6 X ./usr/bin/mips-linux-gnu-gnat-6 X ./usr/bin/mips-linux-gnu-gnatclean-6 X ./usr/bin/mips-linux-gnu-gnatls-6 X ./usr/bin/mips-linux-gnu-gnatmake-6 X ./usr/bin/mips-linux-gnu-gnatname-6 X ./usr/bin/music123 X ./usr/bin/pgcharts X ./usr/bin/pgloader X ./usr/bin/poly X ./usr/bin/powerpc64le-linux-gnu-gnat-5 X ./usr/bin/powerpc64le-linux-gnu-gnatclean-5 X ./usr/bin/powerpc64le-linux-gnu-gnatls-5 X ./usr/bin/powerpc64le-linux-gnu-gnatmake-5 X ./usr/bin/powerpc64le-linux-gnu-gnatname-5 X ./usr/bin/powerpc-linux-gnu-gnat-5 X ./usr/bin/powerpc-linux-gnu-gnat-6 X ./usr/bin/powerpc-linux-gnu-gnatclean-5 X ./usr/bin/powerpc-linux-gnu-gnatclean-6 X ./usr/bin/powerpc-linux-gnu-gnatls-5 X ./usr/bin/powerpc-linux-gnu-gnatls-6 X ./usr/bin/powerpc-linux-gnu-gnatmake-5 X ./usr/bin/powerpc-linux-gnu-gnatmake-6 X ./usr/bin/powerpc-linux-gnu-gnatname-5 X ./usr/bin/powerpc-linux-gnu-gnatname-6 X ./usr/bin/proot X ./usr/bin/rsh-redone-rlogin X ./usr/bin/s2cdecl X ./usr/bin/s2ch X ./usr/bin/s2ci X ./usr/bin/s2cixl X ./usr/bin/s390x-linux-gnu-gnat-5 X ./usr/bin/s390x-linux-gnu-gnatclean-5 X ./usr/bin/s390x-linux-gnu-gnatls-5 X ./usr/bin/s390x-linux-gnu-gnatmake-5 X ./usr/bin/s390x-linux-gnu-gnatname-5 X ./usr/bin/sbcl X ./usr/bin/scheme-script X ./usr/bin/sdpa X ./usr/bin/sh4-linux-gnu-gnat-6 X ./usr/bin/sh4-linux-gnu-gnatclean-6 X ./usr/bin/sh4-linux-gnu-gnatls-6 X ./usr/bin/sh4-linux-gnu-gnatmake-6 X ./usr/bin/sh4-linux-gnu-gnatname-6 X ./usr/bin/smbc X ./usr/bin/smlformat X ./usr/bin/smllex X ./usr/bin/smlsharp X ./usr/bin/smlyacc X ./usr/bin/templates2ada X ./usr/bin/victor X ./usr/bin/webxref X ./usr/bin/x86_64-w64-mingw32-gnatclean-posix X ./usr/bin/x86_64-w64-mingw32-gnatclean-win32 X ./usr/bin/x86_64-w64-mingw32-gnatls-posix X ./usr/bin/x86_64-w64-mingw32-gnatls-win32 X ./usr/bin/x86_64-w64-mingw32-gnatmake-posix X ./usr/bin/x86_64-w64-mingw32-gnatmake-win32 X ./usr/bin/x86_64-w64-mingw32-gnatname-posix X ./usr/bin/x86_64-w64-mingw32-gnatname-win32 X ./usr/bin/x86_64-w64-mingw32-gnat-posix X ./usr/bin/x86_64-w64-mingw32-gnat-win32 X ./usr/bin/xspect X ./usr/bin/zapping X ./usr/games/glhexen2 X ./usr/games/glhwcl X ./usr/games/hexen2 X ./usr/games/hwcl X ./usr/games/kraptor X ./usr/games/liquidwar X ./usr/games/powermanga X ./usr/lib/atlas-base/libatlas.so.3.0 X ./usr/lib/boinc-app-seti-graphics/setiathome_v8 X ./usr/lib/boinc-app-seti/setiathome_v8 X ./usr/lib/cafeobj-1.5/sbcl/cafeobj.sbcl X ./usr/lib/clisp-2.49/base/lisp.run X ./usr/lib/debug/.build-id/3e/03d643926bc2491fde8b14511e33ac1fe191ca.debug X ./usr/lib/debug/.build-id/4b/112c4edb27f5f0b6acddedaece2999882550cb.debug X ./usr/lib/debug/.build-id/50/fd261193829ca944588ebc2db9937afb18e047.debug X ./usr/lib/debug/.build-id/51/62b0b658c190f670fca2727edd616dba43ab75.debug X ./usr/lib/debug/.build-id/62/0e1bd3d3f5a0802677ec6bbb9951b36e244687.debug X ./usr/lib/debug/.build-id/66/4d7bd9582e4a0ca2cabe8f9559bfc70732533c.debug X ./usr/lib/debug/.build-id/6a/0468381d4aa6fe4e3bb9b7893d846dc7cf7896.debug X ./usr/lib/debug/.build-id/6f/02a685c385108b81c39648c36a44e049a2a208.debug X ./usr/lib/debug/.build-id/81/7378ae3760225b0cd065c0f7ae68f388859785.debug X ./usr/lib/debug/.build-id/81/797d256a35155df98937966670dcf8c6b89420.debug X ./usr/lib/debug/.build-id/87/499da76a3f3fe99c65041bd66278e5c5c44f4a.debug X ./usr/lib/debug/.build-id/8d/918ffc5ccccba5c458dcac633ddb09137d54bb.debug X ./usr/lib/debug/.build-id/ac/4845c431f49e7b36b7365e6f4686ff8678531a.debug X ./usr/lib/debug/.build-id/af/704c28bbff171bd673612993e93d74e4c017a6.debug X ./usr/lib/debug/.build-id/cc/e7e7ac983c80058b136aa8dd6e86b0acdcfa45.debug X ./usr/lib/debug/.build-id/d1/2dc64179acf727b586ba1f4a5a9953c518d19a.debug X ./usr/lib/debug/usr/bin/iac X ./usr/lib/debug/usr/bin/ir_ab_names X ./usr/lib/debug/usr/lib/i386-linux-gnu/libpolyorb-corba-cos-event-impl.so.4 X ./usr/lib/debug/usr/lib/i386-linux-gnu/libpolyorb-corba-cos-ir-impl.so.4 X ./usr/lib/debug/usr/lib/i386-linux-gnu/libpolyorb-corba-cos-naming.so.4 X ./usr/lib/debug/usr/lib/i386-linux-gnu/libpolyorb-corba-cos-notification.so.4 X ./usr/lib/debug/usr/lib/i386-linux-gnu/libpolyorb-corba-dynamicany.so.4 X ./usr/lib/debug/usr/lib/i386-linux-gnu/libpolyorb-corba-iop.so.4 X ./usr/lib/debug/usr/lib/i386-linux-gnu/libpolyorb-corba-messaging.so.4 X ./usr/lib/debug/usr/lib/i386-linux-gnu/libpolyorb-corba-portableinterceptor.so.4 X ./usr/lib/debug/usr/lib/i386-linux-gnu/libpolyorb-corba.so.4 X ./usr/lib/debug/usr/lib/i386-linux-gnu/libpolyorb-dsa.so.4 X ./usr/lib/debug/usr/lib/i386-linux-gnu/libpolyorb-giop-diop.so.4 X ./usr/lib/debug/usr/lib/i386-linux-gnu/libpolyorb-moma.so.4 X ./usr/lib/debug/usr/lib/i386-linux-gnu/libpolyorb.so.4 X ./usr/lib/gimp/2.0/plug-ins/resynthesizer X ./usr/lib/gprbuild/gprbind X ./usr/lib/gprbuild/gprlib X ./usr/lib/grub/i386-coreboot/kernel.exec X ./usr/lib/grub/i386-coreboot/kernel.img X ./usr/lib/grub/i386-ieee1275/kernel.exec X ./usr/lib/grub/i386-ieee1275/kernel.img X ./usr/lib/grub/i386-pc/kernel.exec X ./usr/lib/grub/i386-pc/kernel.img X ./usr/lib/grub/i386-xen/kernel.exec X ./usr/lib/grub/i386-xen/kernel.img X ./usr/lib/grub/x86_64-xen/kernel.exec X ./usr/lib/grub/x86_64-xen/kernel.img X ./usr/lib/i386-linux-gnu/fis-gtm/V6.3-000A_i686/dse X ./usr/lib/i386-linux-gnu/fis-gtm/V6.3-000A_i686/gtcm_gnp_server X ./usr/lib/i386-linux-gnu/fis-gtm/V6.3-000A_i686/gtcm_play X ./usr/lib/i386-linux-gnu/fis-gtm/V6.3-000A_i686/gtcm_server X ./usr/lib/i386-linux-gnu/fis-gtm/V6.3-000A_i686/gtcm_shmclean X ./usr/lib/i386-linux-gnu/fis-gtm/V6.3-000A_i686/gtmsecshrdir/gtmsecshr X ./usr/lib/i386-linux-gnu/fis-gtm/V6.3-000A_i686/libgtmshr.so X ./usr/lib/i386-linux-gnu/fis-gtm/V6.3-000A_i686/lke X ./usr/lib/i386-linux-gnu/fis-gtm/V6.3-000A_i686/mupip X ./usr/lib/i386-linux-gnu/fis-gtm/V6.3-000A_i686/utf8/gtmsecshrdir/gtmsecshr X ./usr/lib/i386-linux-gnu/libavcall.so.0.0.0 X ./usr/lib/i386-linux-gnu/libaws.so.3.3.2 X ./usr/lib/i386-linux-gnu/libcallback.so.0.0.0 X ./usr/lib/i386-linux-gnu/libgmpada.so.4 X ./usr/lib/i386-linux-gnu/libgnatcoll_readline.so.1.7 X ./usr/lib/i386-linux-gnu/libgnatcoll.so.1.7 X ./usr/lib/i386-linux-gnu/libgnatprj.so.5 X ./usr/lib/i386-linux-gnu/libgnatprj.so.6 X ./usr/lib/i386-linux-gnu/libgtkada.so.3.8.3 X ./usr/lib/i386-linux-gnu/libpolyorb-corba-cos-event-impl.so.4 X ./usr/lib/i386-linux-gnu/libpolyorb-corba-cos-ir-impl.so.4 X ./usr/lib/i386-linux-gnu/libpolyorb-corba-cos-naming.so.4 X ./usr/lib/i386-linux-gnu/libpolyorb-corba-cos-notification.so.4 X ./usr/lib/i386-linux-gnu/libpolyorb-corba-dynamicany.so.4 X ./usr/lib/i386-linux-gnu/libpolyorb-corba-iop.so.4 X ./usr/lib/i386-linux-gnu/libpolyorb-corba-messaging.so.4 X ./usr/lib/i386-linux-gnu/libpolyorb-corba-portableinterceptor.so.4 X ./usr/lib/i386-linux-gnu/libpolyorb-corba.so.4 X ./usr/lib/i386-linux-gnu/libpolyorb-dsa.so.4 X ./usr/lib/i386-linux-gnu/libpolyorb-giop-diop.so.4 X ./usr/lib/i386-linux-gnu/libpolyorb-moma.so.4 X ./usr/lib/i386-linux-gnu/libpolyorb.so.4 X ./usr/lib/i386-linux-gnu/libtemplates_parser.so.11.10.1 X ./usr/lib/i386-linux-gnu/libtexttools.so.7 X ./usr/lib/i386-linux-gnu/libvulkan.so.1.0.54 X ./usr/lib/i386-linux-gnu/libwaudio.so.1.0 X ./usr/lib/i386-linux-gnu/mandos/plugin-runner X ./usr/lib/i386-linux-gnu/mandos/plugins.d/mandos-client X ./usr/lib/i386-linux-gnu/mandos/plugins.d/password-prompt X ./usr/lib/i686-linux-gnu/liblikwid.so.4.2 X ./usr/lib/klibc/bin/cat X ./usr/lib/klibc/bin/chroot X ./usr/lib/klibc/bin/cpio X ./usr/lib/klibc/bin/dd X ./usr/lib/klibc/bin/dmesg X ./usr/lib/klibc/bin/false X ./usr/lib/klibc/bin/fstype X ./usr/lib/klibc/bin/gunzip X ./usr/lib/klibc/bin/gzip X ./usr/lib/klibc/bin/halt X ./usr/lib/klibc/bin/ipconfig X ./usr/lib/klibc/bin/kill X ./usr/lib/klibc/bin/kinit X ./usr/lib/klibc/bin/kinit.shared X ./usr/lib/klibc/bin/ln X ./usr/lib/klibc/bin/losetup X ./usr/lib/klibc/bin/ls X ./usr/lib/klibc/bin/minips X ./usr/lib/klibc/bin/mkdir X ./usr/lib/klibc/bin/mkfifo X ./usr/lib/klibc/bin/mknod X ./usr/lib/klibc/bin/mksh X ./usr/lib/klibc/bin/mount X ./usr/lib/klibc/bin/mv X ./usr/lib/klibc/bin/nfsmount X ./usr/lib/klibc/bin/nuke X ./usr/lib/klibc/bin/pivot_root X ./usr/lib/klibc/bin/poweroff X ./usr/lib/klibc/bin/readlink X ./usr/lib/klibc/bin/reboot X ./usr/lib/klibc/bin/resume X ./usr/lib/klibc/bin/sh.shared X ./usr/lib/klibc/bin/sleep X ./usr/lib/klibc/bin/sync X ./usr/lib/klibc/bin/true X ./usr/lib/klibc/bin/umount X ./usr/lib/klibc/bin/uname X ./usr/lib/klibc/bin/zcat X ./usr/lib/klibc/lib/klibc-T5LXP1hTwH_ezt-1EUSxPbNR_es.so X ./usr/lib/klibc/lib/libc.so X ./usr/lib/libahven.so.26 X ./usr/lib/libalog.so.0.5.2 X ./usr/lib/libatlas-test/xcblat1 X ./usr/lib/libatlas-test/xcblat3 X ./usr/lib/libatlas-test/xccblat1 X ./usr/lib/libatlas-test/xccblat3 X ./usr/lib/libatlas-test/xcinvtst X ./usr/lib/libatlas-test/xcqrtst X ./usr/lib/libatlas-test/xcslvtst X ./usr/lib/libatlas-test/xctrtritst X ./usr/lib/libatlas-test/xcuumtst X ./usr/lib/libatlas-test/xdblat1 X ./usr/lib/libatlas-test/xdblat2 X ./usr/lib/libatlas-test/xdblat3 X ./usr/lib/libatlas-test/xdcblat1 X ./usr/lib/libatlas-test/xdcblat2 X ./usr/lib/libatlas-test/xdcblat3 X ./usr/lib/libatlas-test/xdinvtst X ./usr/lib/libatlas-test/xdmvntime X ./usr/lib/libatlas-test/xdmvttime X ./usr/lib/libatlas-test/xdqrtst X ./usr/lib/libatlas-test/xdr1time X ./usr/lib/libatlas-test/xdr2time X ./usr/lib/libatlas-test/xds1nxtune X ./usr/lib/libatlas-test/xds2nxtune X ./usr/lib/libatlas-test/xdslvtst X ./usr/lib/libatlas-test/xdtrtritst X ./usr/lib/libatlas-test/xduumtst X ./usr/lib/libatlas-test/xsblat1 X ./usr/lib/libatlas-test/xsblat3 X ./usr/lib/libatlas-test/xscblat1 X ./usr/lib/libatlas-test/xscblat3 X ./usr/lib/libatlas-test/xsinvtst X ./usr/lib/libatlas-test/xsqrtst X ./usr/lib/libatlas-test/xsslvtst X ./usr/lib/libatlas-test/xstrtritst X ./usr/lib/libatlas-test/xsuumtst X ./usr/lib/libatlas-test/xzblat1 X ./usr/lib/libatlas-test/xzblat2 X ./usr/lib/libatlas-test/xzblat3 X ./usr/lib/libatlas-test/xzcblat1 X ./usr/lib/libatlas-test/xzcblat2 X ./usr/lib/libatlas-test/xzcblat3 X ./usr/lib/libatlas-test/xzinvtst X ./usr/lib/libatlas-test/xzmvntime X ./usr/lib/libatlas-test/xzmvttime X ./usr/lib/libatlas-test/xzqrtst X ./usr/lib/libatlas-test/xzr1time X ./usr/lib/libatlas-test/xzr2time X ./usr/lib/libatlas-test/xzs1nxtune X ./usr/lib/libatlas-test/xzslvtst X ./usr/lib/libatlas-test/xztrtritst X ./usr/lib/libatlas-test/xzuumtst X ./usr/lib/libdbusada.so.0.3.3 X ./usr/lib/libpcscada.so.0.7.3 X ./usr/lib/multiboot/examples/kernel X ./usr/lib/nvidia-340/bin/nvidia-cuda-mps-control X ./usr/lib/nvidia-340/bin/nvidia-cuda-mps-server X ./usr/lib/ocaml/stublibs/dllzarith.so X ./usr/lib/ocaml/zarith/zarith.cmxs X ./usr/lib/open-axiom/bin/AXIOMsys X ./usr/lib/pd/extra/pdp/pdp_scaf.pd_linux X ./usr/lib/R/lib/libblas.so.3gf X ./usr/lib/R/lib/libguide.so X ./usr/lib/R/lib/liblapack.so.3gf X ./usr/lib/scaf/default.scafo X ./usr/lib/scheme2c/s2ccomp X ./usr/lib/sdpa/mex/mexsdpa.mex X ./usr/lib/sdpa/mex/mexSedumiWrap.mex X ./usr/lib/smlnj/bin/.run/run.x86-linux X ./usr/lib/smlnj/bin/.run/run.x86-linux.so X ./usr/lib/squeak/4.10.2-2614/so.SqueakFFIPrims X ./usr/lib/syslinux/modules/bios/gfxboot.c32 X ./usr/lib/syslinux/modules/bios/ldlinux.c32 X ./usr/lib/syslinux/modules/efi32/gfxboot.c32 X ./usr/lib/syslinux/modules/efi32/ldlinux.e32 X ./usr/lib/syslinux/modules/efi64/gfxboot.c32 X ./usr/lib/syslinux/modules/efi64/ldlinux.e64 X ./usr/lib/virtualbox/VBoxManageHelp X ./usr/powerpc64le-linux-gnu/lib/libgnatprj.so.5 X ./usr/powerpc64le-linux-gnu/lib/libgnatprj.so.6 X ./usr/powerpc-linux-gnu/lib/libgnatprj.so.5 X ./usr/powerpc-linux-gnu/lib/libgnatprj.so.6 X ./usr/s390x-linux-gnu/lib/libgnatprj.so.5 X ./usr/s390x-linux-gnu/lib/libgnatprj.so.6 X ./usr/sbin/curvecpserver X ./usr/sbin/dqcache X ./usr/sbin/martian_modem X ./usr/sbin/sagan X ./usr/sbin/sks X ./usr/sh4-linux-gnu/lib/libgnatprj.so.6 X ./usr/share/android/emulator/out/host/linux-x86/lib/libcrypto-host.so X ./usr/share/dpdk/test/test X ./usr/sparc64-linux-gnu/lib/libgnatprj.so.6
SecurityTeam/Roadmap/ExecutableStacks (last edited 2017-08-22 14:25:31 by jdstrand)