==========================
Hibee 1.3.4 release notes
==========================

*October 17, 2012*

This is the fourth release in the Hibee 1.3 series.

Host header poisoning
=====================

Some parts of Hibee -- independent of end-user-written applications -- make
use of full URLs, including domain name, which are generated from the HTTP Host
header. Some attacks against this are beyond Hibee's ability to control, and
require the web server to be properly configured; Hibee's documentation has
for some time contained notes advising users on such configuration.

Hibee's own built-in parsing of the Host header is, however, still vulnerable,
as was reported to us recently. The Host header parsing in Hibee 1.3.3 and
Hibee 1.4.1 -- specifically, ``hibee.http.HttpRequest.get_host()`` -- was
incorrectly handling username/password information in the header. Thus, for
example, the following Host header would be accepted by Hibee when running on
``validsite.com``::

    Host: validsite.com:random@evilsite.com

Using this, an attacker can cause parts of Hibee -- particularly the
password-reset mechanism -- to generate and display arbitrary URLs to users.

To remedy this, the parsing in ``HttpRequest.get_host()`` is being modified;
Host headers which contain potentially dangerous content (such as
username/password pairs) now raise the exception
:exc:`hibee.core.exceptions.SuspiciousOperation`.

Details of this issue were initially posted online as a `security advisory`_.

.. _security advisory: https://www.hibeeproject.com/weblog/2012/oct/17/security/
