diff -Nru nginx-1.1.19/debian/changelog nginx-1.1.19/debian/changelog --- nginx-1.1.19/debian/changelog 2013-05-28 19:29:55.000000000 +0000 +++ nginx-1.1.19/debian/changelog 2013-11-22 02:44:55.000000000 +0000 @@ -1,3 +1,32 @@ +nginx (1.1.19-1ubuntu0.5) precise-security; urgency=low + + * SECURITY UPDATE: ACL bypass via space character (LP: #1253691) + - debian/patches/cve-2013-4547.patch: modify src/http/ngx_http_parse.c + to account for a space character, fixing an issue which could result in + security restrictions being bypassed + - CVE-2013-4547 + + -- Thomas Ward Thu, 21 Nov 2013 13:02:22 -0500 + +nginx (1.1.19-1ubuntu0.4) precise; urgency=low + + [ Thomas Ward ] + * Move postinst symlinking of default nginx config to nginx-common only. + (closes LP: #1206878) + + [ Iain Lane ] + * Take additional change from Debian patch to check sites-enabled and + sites-available are directories before symlinking .../default. + + -- Thomas Ward Thu, 10 Oct 2013 10:48:16 +0100 + +nginx (1.1.19-1ubuntu0.3) precise-proposed; urgency=low + + * Move configuration file removal for package purging to nginx-common only. + (closes LP: #1206878) + + -- Thomas Ward Tue, 06 Aug 2013 13:20:29 -0400 + nginx (1.1.19-1ubuntu0.2) precise-security; urgency=low * Security update (closes LP: #1182586): diff -Nru nginx-1.1.19/debian/nginx-common.postinst nginx-1.1.19/debian/nginx-common.postinst --- nginx-1.1.19/debian/nginx-common.postinst 2012-03-12 06:48:17.000000000 +0000 +++ nginx-1.1.19/debian/nginx-common.postinst 2013-10-10 09:47:18.000000000 +0000 @@ -3,6 +3,10 @@ case "$1" in configure) + if [ -z $2 ] && [ ! -e /etc/nginx/sites-enabled/default ] && + [ -d /etc/nginx/sites-enabled ] && [ -d /etc/nginx/sites-available ]; then + ln -s /etc/nginx/sites-available/default /etc/nginx/sites-enabled/default + fi logdir="/var/log/nginx" # Ensure existance and right state of log files and directory if [ ! -d "$logdir" -a ! -L "$logdir" ]; then diff -Nru nginx-1.1.19/debian/nginx-common.postrm nginx-1.1.19/debian/nginx-common.postrm --- nginx-1.1.19/debian/nginx-common.postrm 2012-03-12 06:47:52.000000000 +0000 +++ nginx-1.1.19/debian/nginx-common.postrm 2013-08-08 11:11:57.000000000 +0000 @@ -14,7 +14,11 @@ fi ;; - purge|remove|failed-upgrade|abort-install|abort-upgrade|disappear) + purge) + rm -rf /var/lib/nginx /var/log/nginx /etc/nginx + ;; + + remove|failed-upgrade|abort-install|abort-upgrade|disappear) ;; *) diff -Nru nginx-1.1.19/debian/nginx-extras.postinst nginx-1.1.19/debian/nginx-extras.postinst --- nginx-1.1.19/debian/nginx-extras.postinst 2012-04-09 12:29:25.000000000 +0000 +++ nginx-1.1.19/debian/nginx-extras.postinst 2013-10-10 09:46:03.000000000 +0000 @@ -2,13 +2,7 @@ set -e case "$1" in - configure) - if [ -z $2 ] && [ ! -e /etc/nginx/sites-enabled/default ]; then - ln -s /etc/nginx/sites-available/default /etc/nginx/sites-enabled/default - fi - ;; - - abort-upgrade|abort-remove|abort-deconfigure) + abort-upgrade|abort-remove|abort-deconfigure|configure) ;; *) diff -Nru nginx-1.1.19/debian/nginx-extras.postrm nginx-1.1.19/debian/nginx-extras.postrm --- nginx-1.1.19/debian/nginx-extras.postrm 2011-09-25 06:12:07.000000000 +0000 +++ nginx-1.1.19/debian/nginx-extras.postrm 1970-01-01 00:00:00.000000000 +0000 @@ -1,20 +0,0 @@ -#!/bin/sh - -set -e - -case "$1" in - purge) - rm -rf /var/lib/nginx /var/log/nginx /etc/nginx - ;; - - remove|upgrade|failed-upgrade|abort-install|abort-upgrade|disappear) - ;; - - *) - echo "postrm called with unknown argument \`$1'" >&2 - exit 1 -esac - -#DEBHELPER# - -exit 0 diff -Nru nginx-1.1.19/debian/nginx-full.postinst nginx-1.1.19/debian/nginx-full.postinst --- nginx-1.1.19/debian/nginx-full.postinst 2012-04-09 12:29:25.000000000 +0000 +++ nginx-1.1.19/debian/nginx-full.postinst 2013-10-10 09:46:09.000000000 +0000 @@ -2,13 +2,7 @@ set -e case "$1" in - configure) - if [ -z $2 ] && [ ! -e /etc/nginx/sites-enabled/default ]; then - ln -s /etc/nginx/sites-available/default /etc/nginx/sites-enabled/default - fi - ;; - - abort-upgrade|abort-remove|abort-deconfigure) + abort-upgrade|abort-remove|abort-deconfigure|configure) ;; *) diff -Nru nginx-1.1.19/debian/nginx-full.postrm nginx-1.1.19/debian/nginx-full.postrm --- nginx-1.1.19/debian/nginx-full.postrm 2011-09-25 06:12:07.000000000 +0000 +++ nginx-1.1.19/debian/nginx-full.postrm 1970-01-01 00:00:00.000000000 +0000 @@ -1,20 +0,0 @@ -#!/bin/sh - -set -e - -case "$1" in - purge) - rm -rf /var/lib/nginx /var/log/nginx /etc/nginx - ;; - - remove|upgrade|failed-upgrade|abort-install|abort-upgrade|disappear) - ;; - - *) - echo "postrm called with unknown argument \`$1'" >&2 - exit 1 -esac - -#DEBHELPER# - -exit 0 diff -Nru nginx-1.1.19/debian/nginx-light.postinst nginx-1.1.19/debian/nginx-light.postinst --- nginx-1.1.19/debian/nginx-light.postinst 2012-04-09 12:29:25.000000000 +0000 +++ nginx-1.1.19/debian/nginx-light.postinst 2013-10-10 09:46:13.000000000 +0000 @@ -2,13 +2,7 @@ set -e case "$1" in - configure) - if [ -z $2 ] && [ ! -e /etc/nginx/sites-enabled/default ]; then - ln -s /etc/nginx/sites-available/default /etc/nginx/sites-enabled/default - fi - ;; - - abort-upgrade|abort-remove|abort-deconfigure) + abort-upgrade|abort-remove|abort-deconfigure|configure) ;; *) diff -Nru nginx-1.1.19/debian/nginx-light.postrm nginx-1.1.19/debian/nginx-light.postrm --- nginx-1.1.19/debian/nginx-light.postrm 2011-09-25 06:12:07.000000000 +0000 +++ nginx-1.1.19/debian/nginx-light.postrm 1970-01-01 00:00:00.000000000 +0000 @@ -1,20 +0,0 @@ -#!/bin/sh - -set -e - -case "$1" in - purge) - rm -rf /var/lib/nginx /var/log/nginx /etc/nginx - ;; - - remove|upgrade|failed-upgrade|abort-install|abort-upgrade|disappear) - ;; - - *) - echo "postrm called with unknown argument \`$1'" >&2 - exit 1 -esac - -#DEBHELPER# - -exit 0 diff -Nru nginx-1.1.19/debian/nginx-naxsi.postinst nginx-1.1.19/debian/nginx-naxsi.postinst --- nginx-1.1.19/debian/nginx-naxsi.postinst 2012-04-09 12:29:25.000000000 +0000 +++ nginx-1.1.19/debian/nginx-naxsi.postinst 2013-10-10 09:46:16.000000000 +0000 @@ -2,13 +2,7 @@ set -e case "$1" in - configure) - if [ -z $2 ] && [ ! -e /etc/nginx/sites-enabled/default ]; then - ln -s /etc/nginx/sites-available/default /etc/nginx/sites-enabled/default - fi - ;; - - abort-upgrade|abort-remove|abort-deconfigure) + abort-upgrade|abort-remove|abort-deconfigure|configure) ;; *) diff -Nru nginx-1.1.19/debian/nginx-naxsi.postrm nginx-1.1.19/debian/nginx-naxsi.postrm --- nginx-1.1.19/debian/nginx-naxsi.postrm 2012-03-24 02:59:10.000000000 +0000 +++ nginx-1.1.19/debian/nginx-naxsi.postrm 1970-01-01 00:00:00.000000000 +0000 @@ -1,20 +0,0 @@ -#!/bin/sh - -set -e - -case "$1" in - purge) - rm -rf /var/lib/nginx /var/log/nginx /etc/nginx - ;; - - remove|upgrade|failed-upgrade|abort-install|abort-upgrade|disappear) - ;; - - *) - echo "postrm called with unknown argument \`$1'" >&2 - exit 1 -esac - -#DEBHELPER# - -exit 0 diff -Nru nginx-1.1.19/debian/patches/cve-2013-4547.patch nginx-1.1.19/debian/patches/cve-2013-4547.patch --- nginx-1.1.19/debian/patches/cve-2013-4547.patch 1970-01-01 00:00:00.000000000 +0000 +++ nginx-1.1.19/debian/patches/cve-2013-4547.patch 2013-11-21 20:04:17.000000000 +0000 @@ -0,0 +1,21 @@ +Description: CVE-2013-4547 - Fix an issue in which an attacker may be able to bypass security restrictions on certain configurations with specially crafted requests. +Origin: upstream http://nginx.org/download/patch.2013.space.txt +Bug-Ubuntu: https://bugs.launchpad.net/bugs/1253691 +--- a/src/http/ngx_http_parse.c ++++ b/src/http/ngx_http_parse.c +@@ -617,6 +617,7 @@ ngx_http_parse_request_line(ngx_http_req + default: + r->space_in_uri = 1; + state = sw_check_uri; ++ p--; + break; + } + break; +@@ -670,6 +671,7 @@ ngx_http_parse_request_line(ngx_http_req + default: + r->space_in_uri = 1; + state = sw_uri; ++ p--; + break; + } + break; diff -Nru nginx-1.1.19/debian/patches/series nginx-1.1.19/debian/patches/series --- nginx-1.1.19/debian/patches/series 2013-05-28 19:29:55.000000000 +0000 +++ nginx-1.1.19/debian/patches/series 2013-11-21 20:04:17.000000000 +0000 @@ -1,3 +1,4 @@ perl-use-dpkg-buildflags.patch uri_segfault_fix_LP1065555.patch cve-2013-2070.patch +cve-2013-4547.patch