Enable ASLR, DEP and Fortify Source
authorAndre Heinecke <aheinecke@intevation.de>
Mon, 15 Aug 2016 09:51:07 +0000 (11:51 +0200)
committerAndre Heinecke <aheinecke@intevation.de>
Mon, 15 Aug 2016 09:51:07 +0000 (11:51 +0200)
* configure.ac (HARDENING): Add hardening flags.

--
As plugins without DEP and ASLR lower the security of the
parent application if it is buggy we better enable these for
GpgOL.

GnuPG-Bug-Id: 2366

configure.ac

index 3699875..709e427 100644 (file)
@@ -201,6 +201,16 @@ fi
 if test "$GCC" = yes; then
     CFLAGS="$CFLAGS -Wall -mms-bitfields -fno-strict-aliasing"
     CXXFLAGS="$CXXFLAGS -Wall -mms-bitfields -fno-strict-aliasing"
+    # Hardening flags
+    # Stack protection
+    # -fstack-protector-all -Wstack-protector --param ssp-buffer-size=4
+    # causes gpgol not to be loaded by Outlook due to a runtime error.
+    # This needs to be analysed but could be an incompatibility between
+    # gcc's stack protection and COM / Outlook system calls.
+    HARDENING="-Wl,--dynamicbase -Wl,--nxcompat -fno-exceptions -D_FORTIFY_SOURCE=2 -O0"
+    CFLAGS="$CFLAGS $HARDENING"
+    CXXFLAGS="$CXXFLAGS $HARDENING"
+
     if test "$USE_MAINTAINER_MODE" = "yes"; then
         CFLAGS="$CFLAGS -Werror -Wcast-align -Wshadow -Wstrict-prototypes"
         CFLAGS="$CFLAGS -Wformat-security"