CVE-2025-27571

4.3 MEDIUM

📋 TL;DR

This vulnerability allows authenticated users to view metadata from archived channels even when the 'Allow Users to View Archived Channels' setting is disabled. It affects Mattermost instances running vulnerable versions, potentially exposing sensitive channel information that should remain hidden.

💻 Affected Systems

Products:
  • Mattermost
Versions: 10.5.x <= 10.5.1, 10.4.x <= 10.4.3, 9.11.x <= 9.11.9
Operating Systems: All platforms running Mattermost
Default Config Vulnerable: ⚠️ Yes
Notes: Affects all deployments with archived channels where 'Allow Users to View Archived Channels' is disabled. Requires authenticated user access.

📦 What is this software?

⚠️ Risk & Real-World Impact

🔴

Worst Case

Sensitive archived channel metadata (including post content previews, participant lists, timestamps) could be exposed to unauthorized authenticated users, potentially revealing confidential discussions or project information.

🟠

Likely Case

Authenticated users can access metadata about archived channels they shouldn't have permission to view, potentially learning about past discussions, participants, or project details.

🟢

If Mitigated

With proper access controls and monitoring, impact is limited to metadata exposure rather than full channel access, and can be detected through audit logging.

🌐 Internet-Facing: MEDIUM - While authentication is required, exposed instances could allow external authenticated users to access archived channel metadata they shouldn't see.
🏢 Internal Only: MEDIUM - Internal authenticated users could access archived channel metadata beyond their intended permissions, potentially violating data segregation policies.

🎯 Exploit Status

Public PoC: ✅ No
Weaponized: UNKNOWN
Unauthenticated Exploit: ✅ No
Complexity: LOW - Requires authenticated access but no special privileges beyond standard user account.

Exploitation involves accessing posts from archived channels through normal API calls or UI interactions that bypass the configuration check.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: Versions 10.5.2, 10.4.4, 9.11.10 and later

Vendor Advisory: https://mattermost.com/security-updates

Restart Required: Yes

Instructions:

1. Backup your Mattermost instance and database. 2. Download the patched version from Mattermost releases. 3. Stop the Mattermost service. 4. Replace the installation with the patched version. 5. Restart the Mattermost service. 6. Verify the version is updated.

🔧 Temporary Workarounds

Disable archived channel access

all

Temporarily disable all archived channel functionality until patching can be completed

# Configure Mattermost to disable archived channels
# Edit config.json or use System Console:
# System Console > Site Configuration > Users and Teams > Allow Users to View Archived Channels = false

Restrict user permissions

all

Tighten user permissions and implement principle of least privilege

# Review and restrict user roles and permissions
# System Console > User Management > Permissions
# Consider removing unnecessary permissions from standard user roles

🧯 If You Can't Patch

  • Implement strict access controls and monitor for unusual access to archived channels
  • Disable archived channel functionality entirely through configuration changes

🔍 How to Verify

Check if Vulnerable:

Check Mattermost version via System Console > About Mattermost or run: mattermost version

Check Version:

mattermost version

Verify Fix Applied:

Verify version is 10.5.2+, 10.4.4+, or 9.11.10+ and test that archived channel metadata is properly restricted when 'Allow Users to View Archived Channels' is disabled.

📡 Detection & Monitoring

Log Indicators:

  • Unusual access patterns to archived channels
  • API requests for archived channel metadata from unauthorized users
  • Failed permission checks for archived channel access

Network Indicators:

  • Increased API calls to channel endpoints with archived=true parameter
  • Requests for posts from archived channels

SIEM Query:

source="mattermost" AND ("archived" OR "channel_metadata") AND user_id NOT IN [authorized_users]

🔗 References

📤 Share & Export