]> git.ipfire.org Git - thirdparty/squid.git/commit
Certificate fields injection via %D in ERR_SECURE_CONNECT_FAIL (#306) M-staged-PR306
authorChristos Tsantilas <christos@chtsanti.net>
Wed, 17 Oct 2018 15:14:07 +0000 (15:14 +0000)
committerSquid Anubis <squid-anubis@squid-cache.org>
Tue, 23 Oct 2018 17:51:02 +0000 (17:51 +0000)
commit6feeb15ff312f3e145763adf8d234ed6a0b3f11d
tree498b287a4486949918327a412ae44b8e73e0c368
parent518c743093ee0e2df6316b0545c318a92f75e907
Certificate fields injection via %D in ERR_SECURE_CONNECT_FAIL (#306)

%ssl_subject, %ssl_ca_name, and %ssl_cn values were not properly escaped
when %D code was expanded in HTML context of the ERR_SECURE_CONNECT_FAIL
template. This bug affects all ERR_SECURE_CONNECT_FAIL page templates
containing %D, including the default template.

Other error pages are not vulnerable because Squid does not populate %D
with certificate details in other contexts (yet).

Thanks to Nikolas Lohmann [eBlocker] for identifying the problem.

TODO: If those certificate details become needed for ACL checks or other
non-HTML purposes, make their HTML-escaping conditional.

This is a Measurement Factory project.
src/ssl/ErrorDetail.cc