diff options
author | Ludovic Courtès <ludo@gnu.org> | 2017-09-18 15:41:03 +0200 |
---|---|---|
committer | Ludovic Courtès <ludo@gnu.org> | 2017-09-18 15:44:52 +0200 |
commit | e14ab0ad070b4eafa19fc1df81b7b5c3de1dc1b2 (patch) | |
tree | 4265704f4f007275b91df74ae958acf062d9d94a /gnu/packages/patches/httpd-CVE-2017-9798.patch | |
parent | c08da2ee371e7667dbed0eeb84f43e489b1be5f5 (diff) | |
download | guix-patches-e14ab0ad070b4eafa19fc1df81b7b5c3de1dc1b2.tar guix-patches-e14ab0ad070b4eafa19fc1df81b7b5c3de1dc1b2.tar.gz |
gnu: httpd: Patch "options bleed" [fixes CVE-2017-9798].
* gnu/packages/patches/httpd-CVE-2017-9798.patch: New file.
* gnu/packages/web.scm (httpd)[source]: Use it.
* gnu/local.mk (dist_patch_DATA): Add it.
Diffstat (limited to 'gnu/packages/patches/httpd-CVE-2017-9798.patch')
-rw-r--r-- | gnu/packages/patches/httpd-CVE-2017-9798.patch | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/gnu/packages/patches/httpd-CVE-2017-9798.patch b/gnu/packages/patches/httpd-CVE-2017-9798.patch new file mode 100644 index 0000000000..8391a3db4a --- /dev/null +++ b/gnu/packages/patches/httpd-CVE-2017-9798.patch @@ -0,0 +1,22 @@ +Fixes "options bleed", aka. CVE-2017-9798: + + https://nvd.nist.gov/vuln/detail/CVE-2017-9798 + https://blog.fuzzing-project.org/60-Optionsbleed-HTTP-OPTIONS-method-can-leak-Apaches-server-memory.html + +From <https://svn.apache.org/viewvc/httpd/httpd/branches/2.4.x/server/core.c?r1=1805223&r2=1807754&pathrev=1807754&view=patch>. + +--- a/server/core.c 2017/08/16 16:50:29 1805223 ++++ b/server/core.c 2017/09/08 13:13:11 1807754 +@@ -2266,6 +2266,12 @@ + /* method has not been registered yet, but resource restriction + * is always checked before method handling, so register it. + */ ++ if (cmd->pool == cmd->temp_pool) { ++ /* In .htaccess, we can't globally register new methods. */ ++ return apr_psprintf(cmd->pool, "Could not register method '%s' " ++ "for %s from .htaccess configuration", ++ method, cmd->cmd->name); ++ } + methnum = ap_method_register(cmd->pool, + apr_pstrdup(cmd->pool, method)); + } |