Skip to content

v2.18.0

Choose a tag to compare

@mccutchen mccutchen released this 20 Mar 21:55
· 11 commits to main since this release
0decfd1

🔐 Security fix 🔐

This release fixes a reflected XSS vulnerability (GHSA-528q-4pgm-wvg2) in the following endpoints:

  • /base64/{payload} and /base64/decode/{payload}
  • /response-headers

When a request to any of those endpoints included a content-type query parameter set to a dangerous value (e.g. ?content-type=text/html).

Warning

Potential Breaking Change

The affected endpoints now HTML-escape their response bodies only if the incoming request explicitly overrides the known-safe content types. The default behavior is unchanged.

If a go-httpbin deployment depends on the previous, vulnerable behavior and reflected XSS is either not a concern or there are other mitigations in place, the previous behavior may be re-enabled via the -unsafe-allow-dangerous-responses/UNSAFE_ALLOW_DANGEROUS_RESPONSES=1 configuration options.

Important

The publicly available go-httpbin instance at https://httpbingo.org has been updated and is no longer vulnerable. All users are encouraged to upgrade to v2.18.0.

🙌 Thanks 🙌

Many thanks to @AyushXtha for responsibly reporting the vulnerability (GHSA-528q-4pgm-wvg2) according to go-httpbin's security policy and collaborating on the fix!

What's Changed

Full Changelog: v2.17.1...v2.18.0