From f74baaf3b3c8a4297d40322bf0ea9a6e136a3a73 Mon Sep 17 00:00:00 2001 From: Daniel Stenberg Date: Sat, 8 Oct 2016 12:17:26 +0200 Subject: TODO: build: Enable PIE and RELRO by default --- docs/TODO | 14 ++++++++++++++ 1 file changed, 14 insertions(+) (limited to 'docs/TODO') diff --git a/docs/TODO b/docs/TODO index 7d454171d..68b6c2094 100644 --- a/docs/TODO +++ b/docs/TODO @@ -154,6 +154,7 @@ 19. Build 19.1 roffit + 19.2 Enable PIE and RELRO by default 20. Test suite 20.1 SSL tunnel @@ -1014,6 +1015,19 @@ that doesn't exist on the server, just like --ftp-create-dirs. Consider extending 'roffit' to produce decent ASCII output, and use that instead of (g)nroff when building src/tool_hugehelp.c +19.2 Enable PIE and RELRO by default + + Especially when having programs that execute cURL via the command line, PIE + renders the exploitation of memory corruption vulnerabilities a lot more + difficult. This can be attributed to the additional information leaks being + required to conduct a successful attack. RELRO, on the other hand, masks + different binary sections like the GOT as read-only and thus kills a handful + of techniques that come in handy when attackers are able to arbitrarily + overwrite memory. A few tests showed that enabling these features had close + to no impact, neither on the performance nor on the general functionality of + cURL. + + 20. Test suite 20.1 SSL tunnel -- cgit v1.2.3