Red Hat Bugzilla – Bug 436928
CVE-2008-1218 dovecot: unauthorized login
Last modified: 2008-03-13 03:49:37 EDT
Common Vulnerabilities and Exposures assigned an identifier CVE-2008-1218 to the following vulnerability:
Argument injection vulnerability in Dovecot 1.0.x before 1.0.13, and
1.1.x before 1.1.rc3, when using blocking passdbs, allows remote
attackers to bypass the password check via a password containing TAB
characters, which are treated as argument delimiters that enable the
skip_password_check field to be specified.
Minimal fix for 1.0 branch:
This issue does not affect dovecot version as shipped in Red Hat Enterprise
Linux 4 (it is pre-1.0 version). This issue can not be used to get
password-less login on dovecot package as shipped in Red Hat Enterprise Linux 5
and Fedora, as that was possible using skip_password_check option used by
internal dovecot inter-process communication protocol, that was only introduced
in version 1.0.11.
As mentioned in commnet #3, it was not possible to take advantage of this flaw
to get password-less login with Dovecot shipped in Red Hat Enterprise Linux 5,
due to skip_password_check option not being supported as valid internal
communication protocol issue, as is also noted in the upstream announcement.
This issue affects communication between dovecot-auth process and dedicated
dovecot-auth worker process.
Request where <tab> in the password may cause problems is created by
passdb_blocking_verify_plain() in auth/passdb-blocking.c, calling
auth_request_export() to write request options.
On the other side, worker process parses such request using
auth_request_import() function. Only options recognized by
auth_request_import(), but not added by auth_request_export(), can be injected.
There is only one such option - cert_username - which can only override
user-supplied user name.
For other options any value injected by an attacker is overridden in
auth_request_import() by the value supplied by Dovecot (listed in request after
attacker-provided value). An attacker can possibly cause minor memory leak in
dovecot-auth worker process. Those worker processes are created and destroyed
(even after some period of inactivity) by master Dovecot process as needed.
Even if it runs out of memory and crashes, it will be replaced by a new process
Based on the analysis described in comment #4, we do plan to issue updates
addressing this issue in dovecot packages shipped in Red Hat Enterprise Linux.
dovecot-1.0.13-6.fc8 has been pushed to the Fedora 8 stable repository. If problems still persist, please make note of it in this bug report.
dovecot-1.0.13-18.fc7 has been pushed to the Fedora 7 stable repository. If problems still persist, please make note of it in this bug report.