[Pkg-mozext-maintainers] Bug#778880: xul-ext-https-everywhere: Breaks redirects with query string (e.g. deb.li/… to =?UTF-8?Q?anonscm.d.o/cgit/=E2=80=A6?=)
Axel Beckert
abe at debian.org
Sat Feb 21 01:25:05 UTC 2015
Package: xul-ext-https-everywhere
Version: 4.0.2-3
Severity: grave
Justification: Breaks iceweasel in a non-obvious way, potentially causes data loss
Control: affects -1 iceweasel conkeror
Dear Lunar and Fabrizio,
If I enter the URL http://deb.li/3czsE into Iceweasel's location bar
with HTTPS Everywhere enabled, I end up at
https://anonscm.debian.org/cgit/pkg-perl/website.git/diff/?id= (which
says "Bad object name" due to the missing value behind "id=") instead of
https://anonscm.debian.org/cgit/pkg-perl/website.git/diff/?id=24f0998 as
expected.
The same URL and redirect chain works fine again, if I deactivate HTTPS
Everywhere in Iceweasel's tool bar. (It also works fine in the following
browsers/HTTP clients in Jessie: Chromium, Lynx, libwww-perl ("GET"),
Links2, Netsurf, Arora, and wget. I initially suspected Iceweasel itself
to be the culprit.)
I'm not sure which exact characteristic of this specific case causes the
misbehaviour, but I suspect it's query strings with ";" as delimiter.
Example redirect chain captured with wget:
→ wget -S --spider http://deb.li/3czsE
Spider mode enabled. Check if remote file exists.
--2015-02-21 01:56:09-- http://deb.li/3czsE
Resolving deb.li (deb.li)... 2001:470:1f0b:168f::4, 217.196.146.214
Connecting to deb.li (deb.li)|2001:470:1f0b:168f::4|:80... failed: Network is unreachable.
Connecting to deb.li (deb.li)|217.196.146.214|:80... connected.
HTTP request sent, awaiting response...
HTTP/1.1 302 FOUND
Date: Sat, 21 Feb 2015 00:56:09 GMT
Server: Apache/2.2.22 (Debian)
Content-Length: 365
Location: http://anonscm.debian.org/gitweb/?p=pkg-perl/website.git;a=commitdiff;h=24f0998
Vary: Accept-Encoding
Keep-Alive: timeout=5, max=100
Connection: Keep-Alive
Content-Type: text/html; charset=utf-8
Location: http://anonscm.debian.org/gitweb/?p=pkg-perl/website.git;a=commitdiff;h=24f0998 [following]
Spider mode enabled. Check if remote file exists.
--2015-02-21 01:56:09-- http://anonscm.debian.org/gitweb/?p=pkg-perl/website.git;a=commitdiff;h=24f0998
Resolving anonscm.debian.org (anonscm.debian.org)... 5.153.231.21
Connecting to anonscm.debian.org (anonscm.debian.org)|5.153.231.21|:80... connected.
HTTP request sent, awaiting response...
HTTP/1.1 302 Found
Date: Sat, 21 Feb 2015 00:56:09 GMT
Server: Apache/2.2.22 (Debian)
Location: http://anonscm.debian.org/cgit/pkg-perl/website.git/diff/?id=24f0998
Vary: Accept-Encoding
Keep-Alive: timeout=5, max=100
Connection: Keep-Alive
Content-Type: text/html; charset=iso-8859-1
Location: http://anonscm.debian.org/cgit/pkg-perl/website.git/diff/?id=24f0998 [following]
Spider mode enabled. Check if remote file exists.
--2015-02-21 01:56:10-- http://anonscm.debian.org/cgit/pkg-perl/website.git/diff/?id=24f0998
Connecting to anonscm.debian.org (anonscm.debian.org)|5.153.231.21|:80... connected.
HTTP request sent, awaiting response...
HTTP/1.1 200 OK
Date: Sat, 21 Feb 2015 00:56:10 GMT
Server: Apache/2.2.22 (Debian)
Expires: Tue, 18 Feb 2025 00:56:10 GMT
Last-Modified: Sat, 21 Feb 2015 00:56:10 GMT
X-Robots-Tag: noindex, nofollow
Vary: Accept-Encoding
Keep-Alive: timeout=5, max=100
Connection: Keep-Alive
Content-Type: text/html; charset=UTF-8
Length: unspecified [text/html]
Remote file exists and could contain further links,
but recursion is disabled -- not retrieving.
Filing as RC as this will likely break many web applications in
non-obvious ways and potentially causes data loss (despite
non-reproducible data should not be handled in query strings, but
anyways).
Feel free to downgrade to important in case you don't agree with this
judgement. (Or to serious if you just don't agree with the reasoning,
but still think it's RC.) I at least think, this misbehaviour should be
fixed for Jessie, also because of its hidden character as users don't
see the redirect chain inside the browser.
-- System Information:
Debian Release: 8.0
APT prefers testing
APT policy: (909, 'testing'), (500, 'testing-updates'), (500, 'testing-proposed-updates'), (500, 'testing')
Architecture: amd64 (x86_64)
Kernel: Linux 3.16.0-4-amd64 (SMP w/2 CPU cores)
Locale: LANG=en_GB.UTF-8, LC_CTYPE=en_GB.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Init: sysvinit (via /sbin/init)
Versions of packages xul-ext-https-everywhere depends on:
ii conkeror 1.0~~pre-1+git150129+2307-~nightly1
ii icedove 31.4.0-2
ii iceweasel 31.4.0esr-1
xul-ext-https-everywhere recommends no packages.
xul-ext-https-everywhere suggests no packages.
-- no debconf information
More information about the Pkg-mozext-maintainers
mailing list