Control: tags -1 moreinfo On 2021-06-19 18:13:16 +0200, Yadd wrote: > Package: release.debian.org > Severity: normal > User: release.debian....@packages.debian.org > Usertags: unblock > X-Debbugs-Cc: secur...@debian.org > > Please unblock package apache2 > > [ Reason ] > In the past we had some problems to follow CVE fixes for Apache2. For > Buster, we had to import the whole http2 module from 2.4.46 into 2.4.38 > because it was impossible to apply the upstream fix due to module > changes. This isolated import was really risky but we didn't found a > better way. > > Now the story restarts with CVE-2021-31618. The upstream fix is simple > but refers to other changes. In particular the whole SSL stack changed. > Even for Bullseye, there are too many differences between 2.4.46 and > 2.4.48 to apply this fix. > > Apache2 is RFH for years, but has too many reverse dependencies to be > removed from Bullseye (even if there are some alternatives). > > Our current apache2 policy keeps a lot of (maybe unimportant) CVE > opened. > > So we decided to follow upstream changes for Bullseye. So this is the > last version which fixes 6 CVEs (one grave)/ > > [ Impact ] > Multiple security issues. > > [ Tests ] > Tests passed (autopkgtest) > > [ Risks ] > Patch isn't trivial, but it looks like upstream provides version fully > tested. > > [ Checklist ] > [X] all changes are documented in the d/changelog > [X] I reviewed all changes and I approve them > [X] attach debdiff against the package in testing > > [ Other info ] > The dedbiff contains only debian/* changes. I found not interessant to > provide the real debdiff which is really big. > > Cheers, > Yadd > > unblock apache2/2.4.48-2
> diff --git a/debian/apache2-data.lintian-overrides > b/debian/apache2-data.lintian-overrides > index 902735d7..fa617892 100644 > --- a/debian/apache2-data.lintian-overrides > +++ b/debian/apache2-data.lintian-overrides > @@ -1 +1,5 @@ > debian-changelog-file-is-a-symlink > +package-contains-documentation-outside-usr-share-doc > usr/share/apache2/default-site/index.html > +package-contains-documentation-outside-usr-share-doc > usr/share/apache2/error/include/bottom.html > +package-contains-documentation-outside-usr-share-doc > usr/share/apache2/error/include/spacer.html > +package-contains-documentation-outside-usr-share-doc > usr/share/apache2/error/include/top.html > diff --git a/debian/apache2.logrotate b/debian/apache2.logrotate > index 37c5f22e..9d2356da 100644 > --- a/debian/apache2.logrotate > +++ b/debian/apache2.logrotate > @@ -1,20 +1,20 @@ > /var/log/apache2/*.log { > - daily > - missingok > - rotate 14 > - compress > - delaycompress > - notifempty > - create 640 root adm > - sharedscripts > - postrotate > - if invoke-rc.d apache2 status > /dev/null 2>&1; then \ > - invoke-rc.d apache2 reload > /dev/null 2>&1; \ > - fi; > - endscript > - prerotate > - if [ -d /etc/logrotate.d/httpd-prerotate ]; then \ > - run-parts /etc/logrotate.d/httpd-prerotate; \ > - fi; \ > - endscript > + daily > + missingok > + rotate 14 > + compress > + delaycompress > + notifempty > + create 640 root adm > + sharedscripts > + prerotate > + if [ -d /etc/logrotate.d/httpd-prerotate ]; then > + run-parts /etc/logrotate.d/httpd-prerotate > + fi > + endscript > + postrotate > + if pgrep -f ^/usr/sbin/apache2 > /dev/null; then > + invoke-rc.d apache2 reload > + fi > + endscript > } > diff --git a/debian/changelog b/debian/changelog > index fa775057..fef71d5b 100644 > --- a/debian/changelog > +++ b/debian/changelog > @@ -1,4 +1,40 @@ > -apache2 (2.4.46-6) unstable; urgency=medium > +apache2 (2.4.48-2) unstable; urgency=medium > + > + * Back to unstable: Apache2 will follow upstream changes for Bullseye > + > + [ Christian Ehrhardt ] > + * d/t/control, d/t/check-http2: basic test for http2 (Closes: #884068) > + > + -- Yadd <y...@debian.org> Sat, 19 Jun 2021 17:50:29 +0200 > + > +apache2 (2.4.48-1) experimental; urgency=medium > + > + [ Daniel Lewart ] > + * Update apache2.logrotate (Closes: #979813) > + > + [ Andreas Hasenack ] > + * Avoid test suite failure (Closes: #985012) > + > + [ Yadd ] > + * Update lintian overrides > + * Re-export upstream signing key without extra signatures. > + > + [ Ondřej Surý ] > + * New upstream version 2.4.48 (Closes: CVE-2019-17567, CVE-2020-13938, > + CVE-2020-13950, CVE-2020-35452, CVE-2021-26690, CVE-2021-26691, > + CVE-2021-30641, CVE-2021-31618) > + > + -- Ondřej Surý <ond...@debian.org> Tue, 08 Jun 2021 08:29:35 +0200 > + > +apache2 (2.4.47-1) experimental; urgency=medium > + > + * Update upstream keys file > + * New upstream version 2.4.47 > + * Refresh patches > + > + -- Yadd <y...@debian.org> Thu, 29 Apr 2021 08:03:33 +0200 > + > +apache2 (2.4.48-1) experimental; urgency=medium I suppose this should be 2.4.46-6 (unstable) instead. Could you please fix that? Cheers > > * Fix various low security issues (Closes: CVE-2020-13950, CVE-2020-35452, > CVE-2021-26690, CVE-2021-26691, CVE-2021-30641) > @@ -76,7 +112,7 @@ apache2 (2.4.43-1) unstable; urgency=medium > * Fix logrotate script for multi-instance (Closes: #914606) > > [ Xavier Guimard ] > - * New upstream version 2.4.43 > + * New upstream version 2.4.43 (Closes: CVE-2020-1927, CVE-2020-1934) > * Refresh patches > > -- Xavier Guimard <y...@debian.org> Tue, 31 Mar 2020 08:02:12 +0200 > @@ -119,7 +155,8 @@ apache2 (2.4.41-2) unstable; urgency=medium > > apache2 (2.4.41-1) unstable; urgency=medium > > - * New upstream version 2.4.41 > + * New upstream version 2.4.41 (Closes: CVE-2019-9517, CVE-2019-10081, > + CVE-2019-10082, CVE-2019-10092, CVE-2019-10098) > * Update lintian overrides > * Remove README in usr/share/apache2 > * Move httxt2dbm manpage in section 8 > @@ -139,7 +176,8 @@ apache2 (2.4.39-1) unstable; urgency=medium > * Do not install /usr/share/apache2/build/config.nice (Closes: #929510) > > [ Xavier Guimard ] > - * New upstream version 2.4.39 > + * New upstream version 2.4.39 (Closes: CVE-2019-0196, CVE-2019-0197, > + CVE-2019-0211, CVE-2019-0215, CVE-2019-0217, CVE-2019-0220) > * Refresh patches > * Remove patches now included in upstream > * Replace duplicate doc files by links using jdupes > @@ -228,7 +266,8 @@ apache2 (2.4.38-1) unstable; urgency=medium > LogFormat directives. > > [ Xavier Guimard ] > - * New upstream version 2.4.38 (Closes: #920220, #920302, #920303) > + * New upstream version 2.4.38 (Closes: #920220, #920302, #920303, > + CVE-2018-17189, CVE-2018-17199, CVE-2019-0190) > * Refresh patches > * Remove setenvifexpr.diff patch now included in upstream > * Replace libapache2-mod-proxy-uwsgi.{post*,prerm} by a maintscript > diff --git a/debian/control b/debian/control > index 11d92ea8..ac671287 100644 > --- a/debian/control > +++ b/debian/control > @@ -3,7 +3,7 @@ Maintainer: Debian Apache Maintainers > <debian-apa...@lists.debian.org> > Uploaders: Stefan Fritsch <s...@debian.org>, > Arno Töll <a...@debian.org>, > Ondřej Surý <ond...@debian.org>, > - Xavier Guimard <y...@debian.org> > + Yadd <y...@debian.org> > Section: httpd > Priority: optional > Build-Depends: debhelper-compat (= 13), > diff --git a/debian/patches/CVE-2020-13950.patch > b/debian/patches/CVE-2020-13950.patch > deleted file mode 100644 > index cf0ef992..00000000 > --- a/debian/patches/CVE-2020-13950.patch > +++ /dev/null > @@ -1,28 +0,0 @@ > -Description: The proxy connection may be NULL during prefetch, don't try to > dereference it! > - Still origin->keepalive will be set according to p_conn->close by the caller > - (proxy_http_handler). > -Author: Apache authors > -Origin: upstream, https://svn.apache.org/r1678771 > -Bug: <url in upstream bugtracker> > -Forwarded: not-needed > -Reviewed-By: Yadd <y...@debian.org> > -Last-Update: 2021-06-10 > - > ---- a/modules/proxy/mod_proxy_http.c > -+++ b/modules/proxy/mod_proxy_http.c > -@@ -577,7 +577,6 @@ > - apr_off_t bytes; > - int force10, rv; > - apr_read_type_e block; > -- conn_rec *origin = p_conn->connection; > - > - if (apr_table_get(r->subprocess_env, "force-proxy-request-1.0")) { > - if (req->expecting_100) { > -@@ -637,7 +636,6 @@ > - "chunked body with Content-Length (C-L ignored)", > - c->client_ip, c->remote_host ? c->remote_host: ""); > - req->old_cl_val = NULL; > -- origin->keepalive = AP_CONN_CLOSE; > - p_conn->close = 1; > - } > - > diff --git a/debian/patches/CVE-2020-35452.patch > b/debian/patches/CVE-2020-35452.patch > deleted file mode 100644 > index 52042108..00000000 > --- a/debian/patches/CVE-2020-35452.patch > +++ /dev/null > @@ -1,27 +0,0 @@ > -Description: <short summary of the patch> > -Author: Apache authors > -Origin: upstream, https://github.com/apache/httpd/commit/3b6431e > -Bug: https://httpd.apache.org/security/vulnerabilities_24.html#CVE-2020-35452 > -Forwarded: not-needed > -Reviewed-By: Yadd <y...@debian.org> > -Last-Update: 2021-06-10 > - > ---- a/modules/aaa/mod_auth_digest.c > -+++ b/modules/aaa/mod_auth_digest.c > -@@ -1422,9 +1422,14 @@ > - time_rec nonce_time; > - char tmp, hash[NONCE_HASH_LEN+1]; > - > -- if (strlen(resp->nonce) != NONCE_LEN) { > -+ /* Since the time part of the nonce is a base64 encoding of an > -+ * apr_time_t (8 bytes), it should end with a '=', fail early otherwise. > -+ */ > -+ if (strlen(resp->nonce) != NONCE_LEN > -+ || resp->nonce[NONCE_TIME_LEN - 1] != '=') { > - ap_log_rerror(APLOG_MARK, APLOG_ERR, 0, r, APLOGNO(01775) > -- "invalid nonce %s received - length is not %d", > -+ "invalid nonce '%s' received - length is not %d " > -+ "or time encoding is incorrect", > - resp->nonce, NONCE_LEN); > - note_digest_auth_failure(r, conf, resp, 1); > - return HTTP_UNAUTHORIZED; > diff --git a/debian/patches/CVE-2021-26690.patch > b/debian/patches/CVE-2021-26690.patch > deleted file mode 100644 > index 5ceec1fd..00000000 > --- a/debian/patches/CVE-2021-26690.patch > +++ /dev/null > @@ -1,20 +0,0 @@ > -Description: <short summary of the patch> > -Author: Apache authors > -Origin: upstream, https://github.com/apache/httpd/commit/67bd9bfe > -Bug: https://httpd.apache.org/security/vulnerabilities_24.html#CVE-2021-26690 > -Forwarded: not-needed > -Reviewed-By: Yadd <y...@debian.org> > -Last-Update: 2021-06-10 > - > ---- a/modules/session/mod_session.c > -+++ b/modules/session/mod_session.c > -@@ -405,8 +405,8 @@ > - char *plast = NULL; > - const char *psep = "="; > - char *key = apr_strtok(pair, psep, &plast); > -- char *val = apr_strtok(NULL, psep, &plast); > - if (key && *key) { > -+ char *val = apr_strtok(NULL, sep, &plast); > - if (!val || !*val) { > - apr_table_unset(z->entries, key); > - } > diff --git a/debian/patches/CVE-2021-26691.patch > b/debian/patches/CVE-2021-26691.patch > deleted file mode 100644 > index 2d786b16..00000000 > --- a/debian/patches/CVE-2021-26691.patch > +++ /dev/null > @@ -1,18 +0,0 @@ > -Description: mod_session: account for the '&' in identity_concat(). > -Author: Apache authors > -Origin: upstream, https://github.com/apache/httpd/commit/7e09dd71 > -Forwarded: not-needed > -Reviewed-By: Yadd <y...@debian.org> > -Last-Update: 2021-06-10 > - > ---- a/modules/session/mod_session.c > -+++ b/modules/session/mod_session.c > -@@ -318,7 +318,7 @@ > - static int identity_count(void *v, const char *key, const char *val) > - { > - int *count = v; > -- *count += strlen(key) * 3 + strlen(val) * 3 + 1; > -+ *count += strlen(key) * 3 + strlen(val) * 3 + 2; > - return 1; > - } > - > diff --git a/debian/patches/CVE-2021-30641.patch > b/debian/patches/CVE-2021-30641.patch > deleted file mode 100644 > index 7486e1b3..00000000 > --- a/debian/patches/CVE-2021-30641.patch > +++ /dev/null > @@ -1,50 +0,0 @@ > -Description: legacy default slash-matching behavior w/ 'MergeSlashes OFF' > -Author: Apache authors > -Origin: upstream, https://github.com/apache/httpd/commit/eb986059 > -Bug: https://httpd.apache.org/security/vulnerabilities_24.html#CVE-2021-30641 > -Forwarded: not-needed > -Reviewed-By: Yadd <y...@debian.org> > -Last-Update: 2021-06-10 > - > ---- a/server/request.c > -+++ b/server/request.c > -@@ -1419,7 +1419,20 @@ > - > - cache = prep_walk_cache(AP_NOTE_LOCATION_WALK, r); > - cached = (cache->cached != NULL); > -- entry_uri = r->uri; > -+ > -+ /* > -+ * When merge_slashes is set to AP_CORE_CONFIG_OFF the slashes in r->uri > -+ * have not been merged. But for Location walks we always go with merged > -+ * slashes no matter what merge_slashes is set to. > -+ */ > -+ if (sconf->merge_slashes != AP_CORE_CONFIG_OFF) { > -+ entry_uri = r->uri; > -+ } > -+ else { > -+ char *uri = apr_pstrdup(r->pool, r->uri); > -+ ap_no2slash(uri); > -+ entry_uri = uri; > -+ } > - > - /* If we have an cache->cached location that matches r->uri, > - * and the vhost's list of locations hasn't changed, we can skip > -@@ -1486,7 +1499,7 @@ > - pmatch = apr_palloc(rxpool, > nmatch*sizeof(ap_regmatch_t)); > - } > - > -- if (ap_regexec(entry_core->r, entry_uri, nmatch, pmatch, > 0)) { > -+ if (ap_regexec(entry_core->r, r->uri, nmatch, pmatch, 0)) { > - continue; > - } > - > -@@ -1496,7 +1509,7 @@ > - apr_table_setn(r->subprocess_env, > - ((const char > **)entry_core->refs->elts)[i], > - apr_pstrndup(r->pool, > -- entry_uri + pmatch[i].rm_so, > -+ r->uri + pmatch[i].rm_so, > - pmatch[i].rm_eo - pmatch[i].rm_so)); > - } > - } > diff --git a/debian/patches/CVE-2021-31618.patch > b/debian/patches/CVE-2021-31618.patch > deleted file mode 100644 > index 12d59c8b..00000000 > --- a/debian/patches/CVE-2021-31618.patch > +++ /dev/null > @@ -1,20 +0,0 @@ > -Description: fix NULL pointer dereference on specially crafted HTTP/2 request > -Author: Upstream > -Origin: upstream, > http://svn.apache.org/viewvc/httpd/httpd/branches/2.4.x/modules/http2/h2_stream.c?r1=1889759&r2=1889758&pathrev=1889759 > -Bug: https://httpd.apache.org/security/vulnerabilities_24.html#CVE-2021-31618 > -Bug-Debian: https://bugs.debian.org/989562 > -Forwarded: not-needed > -Reviewed-By: Yadd <y...@debian.org> > -Last-Update: 2021-06-10 > - > ---- a/modules/http2/h2_stream.c > -+++ b/modules/http2/h2_stream.c > -@@ -638,7 +638,7 @@ > - > - static void set_error_response(h2_stream *stream, int http_status) > - { > -- if (!h2_stream_is_ready(stream)) { > -+ if (!h2_stream_is_ready(stream) && stream->rtmp) { > - conn_rec *c = stream->session->c; > - apr_bucket *b; > - h2_headers *response; > diff --git a/debian/patches/build_suexec-custom.patch > b/debian/patches/build_suexec-custom.patch > index e03d54be..f3c773a1 100644 > --- a/debian/patches/build_suexec-custom.patch > +++ b/debian/patches/build_suexec-custom.patch > @@ -4,7 +4,7 @@ Author: Stefan Fritsch <s...@debian.org> > Last-Update: 2012-02-25 > --- a/Makefile.in > +++ b/Makefile.in > -@@ -272,23 +272,26 @@ > +@@ -292,23 +292,26 @@ > install-suexec: install-suexec-$(INSTALL_SUEXEC) > > install-suexec-binary: > diff --git a/debian/patches/fhs_compliance.patch > b/debian/patches/fhs_compliance.patch > index be673f96..056d31a6 100644 > --- a/debian/patches/fhs_compliance.patch > +++ b/debian/patches/fhs_compliance.patch > @@ -4,7 +4,7 @@ Author: Adam Conrad <adcon...@0c3.net> > Last-Update: 2012-02-25 > --- a/configure > +++ b/configure > -@@ -40130,17 +40130,17 @@ > +@@ -40439,17 +40439,17 @@ > > > cat >>confdefs.h <<_ACEOF > @@ -27,7 +27,7 @@ Last-Update: 2012-02-25 > > --- a/configure.in > +++ b/configure.in > -@@ -873,11 +873,11 @@ > +@@ -874,11 +874,11 @@ > echo $MODLIST | $AWK -f $srcdir/build/build-modules-c.awk > modules.c > > APR_EXPAND_VAR(ap_prefix, $prefix) > diff --git a/debian/patches/series b/debian/patches/series > index 8596c419..bb7458ed 100644 > --- a/debian/patches/series > +++ b/debian/patches/series > @@ -5,15 +5,9 @@ customize_apxs.patch > build_suexec-custom.patch > reproducible_builds.diff > #mod_proxy_ajp-add-secret-parameter.diff > -buffer-http-request-bodies-for-tlsv13.diff > -tlsv13-add-logno.diff > +#buffer-http-request-bodies-for-tlsv13.diff > +#tlsv13-add-logno.diff > > # This patch is applied manually > #suexec-custom.patch > spelling-errors.diff > -CVE-2021-31618.patch > -CVE-2021-30641.patch > -CVE-2021-26691.patch > -CVE-2021-26690.patch > -CVE-2020-35452.patch > -CVE-2020-13950.patch > diff --git a/debian/patches/spelling-errors.diff > b/debian/patches/spelling-errors.diff > index 7fe3d085..f7b6e98a 100644 > --- a/debian/patches/spelling-errors.diff > +++ b/debian/patches/spelling-errors.diff > @@ -5,7 +5,7 @@ Last-Update: 2020-11-13 > > --- a/modules/http2/h2_config.c > +++ b/modules/http2/h2_config.c > -@@ -721,7 +721,7 @@ > +@@ -730,7 +730,7 @@ > else if (!strcasecmp("BEFORE", sdependency)) { > dependency = H2_DEPENDANT_BEFORE; > if (sweight) { > diff --git a/debian/perl-framework/t/apache/expr_string.t > b/debian/perl-framework/t/apache/expr_string.t > index a9115eee..66b09030 100644 > --- a/debian/perl-framework/t/apache/expr_string.t > +++ b/debian/perl-framework/t/apache/expr_string.t > @@ -7,6 +7,8 @@ use Apache::TestUtil qw(t_write_file t_start_error_log_watch > t_finish_error_log_ > > use File::Spec; > > +use Time::HiRes qw(usleep); > + > # test ap_expr > > Apache::TestRequest::user_agent(keep_alive => 1); > @@ -62,6 +64,8 @@ foreach my $t (@test_cases) { > 'SomeHeader' => 'SomeValue', > 'User-Agent' => 'SomeAgent', > 'Referer' => 'SomeReferer'); > + ### Sleep here, attempt to avoid intermittent failures. (LP: #1890302) > + usleep(250000); > my @loglines = t_finish_error_log_watch(); > > my @evalerrors = grep {/(?:internal evaluation error|flex scanner > jammed)/i > diff --git a/debian/tests/check-http2 b/debian/tests/check-http2 > new file mode 100644 > index 00000000..6bc91251 > --- /dev/null > +++ b/debian/tests/check-http2 > @@ -0,0 +1,41 @@ > +#!/bin/sh > +set -uxe > + > +# http2 is rather new, check that it at least generally works > +# Author: Christian Ehrhardt <christian.ehrha...@canonical.com> > + > +a2enmod http2 > +a2enmod ssl > +a2ensite default-ssl > +# Enable globally > +echo "Protocols h2c h2 http/1.1" >> /etc/apache2/apache2.conf > +service apache2 restart > + > +# Use curl here. wget doesn't work on Debian, even with > --no-check-certificate > +# wget on Debian gives me: > +# GnuTLS: A TLS warning alert has been received. > +# Unable to establish SSL connection. > +# Presumably this is due to the self-signed certificate, but I'm not sure how > +# to skip the warning with wget. curl will do for now. > +echo "Hello, world!" > /var/www/html/hello.txt > + > +testapache () { > + cmd="${1}" > + result=$(${cmd}) > + > + if [ "$result" != "Hello, world!" ]; then > + echo "Unexpected result: ${result}" >&2 > + exit 1 > + else > + echo OK > + fi > +} > + > +# https shall not affect http > +testapache "curl -s -k http://localhost/hello.txt" > +# https shall not affect https > +testapache "curl -s -k https://localhost/hello.txt" > +#plain http2 > +testapache "nghttp --no-verify-peer https://localhost/hello.txt" > +#http2 upgrade > +testapache "nghttp -u --no-verify-peer http://localhost/hello.txt" > diff --git a/debian/tests/control b/debian/tests/control > index be79f603..37ae2ca6 100644 > --- a/debian/tests/control > +++ b/debian/tests/control > @@ -23,6 +23,10 @@ Tests: ssl-passphrase > Restrictions: needs-root allow-stderr breaks-testbed > Depends: apache2, curl, expect, ssl-cert > > +Tests: check-http2 > +Restrictions: needs-root allow-stderr breaks-testbed > +Depends: apache2, curl, ssl-cert, nghttp2-client > + > Tests: chroot > Features: no-build-needed > Restrictions: needs-root allow-stderr breaks-testbed > diff --git a/debian/upstream/signing-key.asc b/debian/upstream/signing-key.asc > index f7b8c0c7..593ba096 100644 > --- a/debian/upstream/signing-key.asc > +++ b/debian/upstream/signing-key.asc > @@ -5201,3 +5201,61 @@ > R9i/x4rPeMllVGUhnWedlmJP50XTUVKG9RIjDjkXY8n6fWvqlItM7+sG53c82Q6z > 2Zvzzqpnur6uMCSE2aZ8 > =FKwf > -----END PGP PUBLIC KEY BLOCK----- > + > +pub rsa4096 2021-04-21 [SC] > + C55A B7B9 139E B226 3CD1 AABC 19B0 33D1 760C 227B > +uid [ ultime ] Christophe JAILLET <christophe.jail...@wanadoo.fr> > +sub rsa4096 2021-04-21 [E] > + > +-----BEGIN PGP PUBLIC KEY BLOCK----- > + > +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 > +Ot6BQHeyFl0mtrYT1mI= > +=L7j3 > +-----END PGP PUBLIC KEY BLOCK----- -- Sebastian Ramacher
signature.asc
Description: PGP signature