Prosody security advisory 2016/01/27

CVE-2016-0756

Project
Prosody XMPP server
URL
https://prosody.im/
CVE
CVE-2016-0756
Date

2016-01-27

Affected versions
All versions prior to 0.9.10
Affected Prosody modules
mod_dialback
Fixed versions

0.9.10, 0.10 nightly build 201, trunk nightly build 612

Description

The flaw allows a malicious server to impersonate the vulnerable domain to any XMPP domain whose domain name includes the attacker's domain as a suffix.

For example, 'bber.example' would be able to connect to 'jabber.example' and successfully impersonate any vulnerable server on the network.

Affected configurations

The default configuration is affected. Servers with mod_dialback disabled are not affected.

Servers with s2s_secure_auth enabled will reject incoming impersonation attempts (that is, servers attempting to impersonate other domains will be rejected), but may still be impersonated to other servers on the network.

Temporary mitigation

Disable mod_dialback by adding "dialback" to your modules_disabled list in the global section of your config file, and restart Prosody:

modules_disabled = { "dialback" }

Note that disabling dialback will affect interoperability with servers that do not have trusted TLS certificates.

Advice

All users should upgrade to 0.9.10, or check their OS distribution for security updates. Users of development branches (0.10, trunk) should upgrade to the latest nightly builds.

Credits

The flaw was discovered and responsibly disclosed to us by Thijs Alkemade.