Tutorial

Roundcube 1.7.5 and 1.6.20: patch 20 webmail flaws

Business Email8 min read12 steps

On 19 October 2026 Roundcube released versions 1.6.20 and 1.7.5, fixing 20 security flaws in the webmail: IMAP command injection, header injection, XSS and remote-content blocking bypasses. Debian followed on 23 October 2026 with advisory DSA-6579-1. No workaround is offered: only updating fixes the problem. The real work is not installing the fix: it is knowing which version runs for each client and whether the fix is really there. This guide gives the method: take an inventory, update according to the branch, then verify.

Contents· What was released, and what to remember1/11
  1. 01What was released, and what to remember
  2. 02The classes of flaws fixed
  3. 03Which version to target for your installation
  4. 04Why the version number is not enough
  5. 05Inventory Roundcube versions
  6. 06Update according to the delivery channel
  7. 07Update an installation
  8. 08Check that the fix is really in place
  9. 09Lasting hardening, not presented as a workaround
  10. 10Looking for traces of exploitation
  11. 11The official documentation

What was released, and what to remember

On 19 October 2026 the Roundcube project announced a security update for both maintained branches: 1.6 (LTS) moves to 1.6.20 and 1.7 moves to 1.7.5. The announcement recommends updating every production installation and offers no workaround. The release notes ask you to back up your data before updating.

Roundcube's announcement lists no CVE identifier. Debian published advisory DSA-6579-1 on 23 October 2026, which groups 20 CVEs without mapping them one by one to the fixes. Third-party sites disagree on these identifiers, so this guide cites none and points to the primary sources listed at the end.

The classes of flaws fixed

  • IMAP command injection — a line break slipped into the _uid parameter (headers and view-source actions) or _flag (mark action) allowed commands to be injected towards the IMAP server.
  • Message header injection — sender name in the resend action, References, In-Reply-To and Message-ID headers, subject of a message forwarded as an attachment, media type of an inline image.
  • Session object injection — session deserialization accepted keys prefixed with an exclamation mark.
  • XSS — the error response from a password-change driver was mishandled on display.
  • Remote-content blocking bypasses — the SVG SMIL by attribute, CSS escape sequences, CSS scoping bypassed through at-rules.
  • SSRF and bypassed settings — the local-address filter ignored the NAT64 range 64:ff9b::/96, and old action aliases escaped the disabled_actions setting.
  • Drivers and imports — the Modoboa password driver could change another account's password, and the SquirrelMail import used an unsanitized login name in a file path.

Which version to target for your installation

Scroll the table

InstallationFixed versionWhat to remember
Roundcube 1.6.x (official archive)1.6.20LTS branch: stay on 1.6 and move to 1.6.20
Roundcube 1.7.x (official archive)1.7.5Move to 1.7.5 without changing branch
Debian 13 (trixie)1.6.20+dfsg-0+deb13u1Package version quoted by advisory DSA-6579-1
Other Debian releasesSee the Debian advisory and security trackerThe advisory lists only trixie: read the package tracker for your release
Webmail provided by cPanelDepends on the panel updateFollows cPanel updates: no resumption date is claimed here
Other panel or distributionDepends on the vendorRead the package changelog, not just the number

Why the version number is not enough

A webmail is installed in one of three ways: from the official archive copied by hand, from the distribution package, or through the hosting panel. Each is updated differently, and the last two carry a trap: the fix may be backported into an older version whose number does not change, or may not have been picked up yet.

An agency managing dozens of accounts therefore deals with several sources of truth. Before updating, you need an inventory: for each client, where the webmail is installed, through which channel it is delivered, and which version it really displays.

Inventory Roundcube versions

  1. List servers and the delivery channel

    Note for each server whether Roundcube comes from the distribution package, an archive dropped by hand or the hosting panel. This channel decides the update method.

  2. Read the version of a Debian or Ubuntu package

    On a machine using the distribution package: dpkg -l roundcube-core gives the installed version, and apt-cache policy roundcube-core shows the candidate version in your repositories.

  3. Read the package changelog

    On Debian the number can stay the same when a fix is backported. Read the package changelog with apt changelog roundcube-core and look for a mention of advisory DSA-6579-1, rather than trusting the displayed version alone.

  4. Record the version of a manual installation

    For an archive installed by hand, the version is visible in Roundcube's interface, in the application information. Record it in your tracking table together with the installation directory path, which you will reuse in the update step.

  5. Record the result per client

    One line per account: server, channel, version found, target version, date of update. This table becomes the proof that the fix was applied everywhere, and the follow-up list for accounts that lag behind.

Update according to the delivery channel

The rule is the same for every channel: target 1.6.20 for the 1.6 branch and 1.7.5 for the 1.7 branch, after a backup. For a distribution package, the update goes through the package manager. For an official archive, it goes through the installto.sh script shipped with Roundcube. For a webmail provided by a panel, the update follows the panel's own.

Update an installation

  1. Back up the directory and the database

    Copy the Roundcube directory and export the database (schema and data) to a safe place. The release notes explicitly ask for this backup before any update.

  2. Debian or Ubuntu package

    Run apt update, then apt install --only-upgrade roundcube-core. Then check the version with dpkg -l roundcube-core and the package changelog.

  3. Official archive: download the release

    Download the archive of the target version from the Roundcube download page, then unpack it in a working directory outside the production installation.

  4. Official archive: run the update script

    From the unpacked directory, run bin/installto.sh giving it the directory of the existing installation. The script first copies the updated files, then runs the update script, which migrates local configuration and updates the database schema if needed.

  5. Install dependencies if needed

    If you did not download the so-called complete archive, the documentation asks you to run php composer.phar install --no-dev in the installation directory with Composer 1.1.0 or higher.

  6. Apply the database manually if needed

    If the schema was not migrated by the script, bin/updatedb.sh applies the database changes. Read the manual update section of Roundcube's UPGRADING file before running it.

  7. Webmail provided by cPanel

    The webmail is delivered by the panel: its update follows cPanel's. No resumption date for this fix is claimed here. For a client, read the version in Roundcube's interface, in the application information, after each panel update, and record it in the tracking table. If the displayed version is not a fixed one, report it to the host's support.

Check that the fix is really in place

An update that raises no error is not a verified update. Check the displayed version, which must match 1.6.20 or 1.7.5 for an archive, or the package number for a distribution. On Debian, also check that the package changelog mentions advisory DSA-6579-1.

Then test a full cycle on a test account: login, reading a message, sending, replying, marking. Finally go through the webmail and web server error logs: an error appearing right after the version change usually points to a plugin or configuration file to migrate.

Lasting hardening, not presented as a workaround

These measures do not replace the update: they reduce the surface for the next ones. Disable unused plugins, in particular the password-change plugin (password) when clients have no use for it, since two of the fixed flaws touched its drivers. Limit webmail exposure to what is needed, and keep web server and Roundcube logs.

Looking for traces of exploitation

Injection flaws are triggered by requests where a parameter contains a line break. As a hint, search the web server logs for webmail requests whose _uid or _flag parameters contain encoded line breaks (%0d%0a), and look for unusual outgoing messages from the mailboxes concerned. The absence of traces is not proof: logs only cover what they record. Update first, investigate afterwards if a client account shows abnormal behavior.

The official documentation

The facts in this guide come from primary sources, to be read before acting: Roundcube's announcement at https://roundcube.net/news/2026/10/19/security-updates-1.6.20-and-1.7.5, the 1.6.20 release notes at https://github.com/roundcube/roundcubemail/releases/tag/1.6.20 and 1.7.5 at https://github.com/roundcube/roundcubemail/releases/tag/1.7.5, Debian advisory DSA-6579-1 at https://lists.debian.org/debian-security-announce/2026/msg00495.html, and the update procedure at https://github.com/roundcube/roundcubemail/wiki/Upgrade.

One view of your clients' mail accounts

On ServOrbit.com reseller hosting, the webmail follows the panel's updates. You keep the client relationship and the follow-up of their mailboxes; we run the infrastructure.

Need help?

Browse our help center and FAQ, or reach our team — callback, WhatsApp or email. Support in French, English and Arabic.

Message us on WhatsAppopens in a new tab