CVE-2016-9928
High · 7.4CVSS
7.4
EPSS
4.5%
Published
Feb 6, 2020
CISA due date
—
Cloudanix analysis
A flaw in a chat program lets remote attackers secretly add themselves to someone's contact list or spy on their messages.
- Exploitation
- Remote Unauthenticated
- Attacker needs
- None
- Complexity
- High
- Impact
- Privilege Gain
- Component
- Application
- Class
- Privilege Escalation
- Remediation
- Upgrade
- Effort
- Medium
- Patch risk
- Low
What it actually does
The vulnerability permits remote attackers to inject crafted XMPP roster push packets that are accepted without proper validation, enabling roster manipulation to intercept communications or add attacker-controlled entities with associated privileges.
Why it matters to the business
Attackers can silently join third-party contact lists or eavesdrop on messaging, resulting in privacy breaches, unauthorized access to conversations, and potential escalation to broader account or network compromise.
How an attack unfolds
An attacker crafts malicious XMPP roster push packets and transmits them to a vulnerable client; the client processes the packets without authentication checks, updating the roster to include the attacker or enabling message interception.
How to fix it
Upgrade MCabber to version 1.0.4 or later; for affected Horde GIT installations apply the fix from commit faf20b21798a6237f8f901c912d70448ab8201ba.
How to confirm the fix worked
Confirm MCabber version is 1.0.4 or newer; verify the specified Horde GIT commit is present in the codebase and test that roster push packets from untrusted sources are rejected.
Typical attack path
- Identify a target running a vulnerable XMPP client
- Craft and send malicious roster push packets over XMPP
- Client accepts the packets and modifies the local roster
- Attacker gains roster privileges or communication interception capability
How to detect it
Inspect XMPP client and server logs for unexpected roster push events or unauthorized roster modifications; correlate with timestamps of contact list changes originating from external sources.
- roster push
- crafted XMPP packets
- unauthorized roster addition
What your security team should do
- Immediately upgrade all MCabber instances to 1.0.4 or later
- Apply the referenced Horde GIT commit where the component is in use
- Review and harden XMPP roster handling policies
- Implement network monitoring for anomalous XMPP roster activity
The record
MCabber before 1.0.4 is vulnerable to roster push attacks, which allows remote attackers to intercept communications, or add themselves as an entity on a 3rd party's roster as another user, which will also garner associated privileges, via crafted XMPP packets.
Affected packages
| Ecosystem | Package | Introduced | Fixed |
|---|---|---|---|
| Debian:11 | mcabber | 0 | 0.10.2-1.1 |
| Debian:12 | mcabber | 0 | 0.10.2-1.1 |
| Debian:13 | mcabber | 0 | 0.10.2-1.1 |
| Debian:7 | mcabber | 0 | 0.10.1-3+deb7u1 |
| Debian:8 | mcabber | 0 | 0.10.2-1+deb8u1 |
| Mageia:5 | mcabber | 0 | 0.10.1-9.1.mga5 |
| Ubuntu:16.04:LTS | mcabber | 0 | 0.10.2-1+deb8u1build0.16.04.1 |
| openSUSE:Tumbleweed | libqxmpp | 0 | 1.16.1-1.1 |
Related vulnerabilities
- CVE-2009-3560 The big2_toUtf8 function in lib/xmltok.c in libexpat in Expat 2.0.1, as used in the… Also affects mcabber
- CVE-2009-3720 The updatePosition function in lib/xmltok_impl.c in libexpat in Expat 2.0.1, as used in… Also affects mcabber
- CVE-2026-114658 Grav Login plugin from 3.6.0 before 3.9.13 contains a missing authorization vulnerability… CWE-269
- CVE-2026-53614 util-linux is a random collection of Linux utilities. CWE-269
- CVE-2026-95837 containerd is an open-source container runtime. CWE-269
- CVE-2026-63349 AnyIO is a high level asynchronous concurrency and networking framework that works on top… CWE-269
- CVE-2026-92957 vm2 through 3.11.6 does not normalize `node:`-prefixed builtin specifiers when evaluating… CWE-269
- CVE-2026-92958 vm2 through 3.11.6 contains a builtin-module denylist bypass in NodeVM. CWE-269