CVE-2026-13417
Executive Summary
CVE-2026-13417 is a type-validation flaw in the Mattermost Boards plugin affecting Mattermost Server releases 11.9.x (≤ 11.9.0), 11.8.x (≤ 11.8.4), 11.7.x (≤ 11.7.7), and 10.11.x (≤ 10.11.22). The product fails to validate the type of the fields.properties attribute when a board block is created, permitting an authenticated user holding editor access to a board to submit a child block whose fields.properties contains a non-object value, which crashes the Boards plugin worker and induces a denial-of-service condition (CWE-754). The vulnerability carries a CVSS v3.1 base score of 4.3 (AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:L), reflecting a low-severity availability impact that is network-reachable but requires authenticated editor privileges and causes only a partial loss of availability, and no public exploit code or Nuclei template currently exists.
This record — and 170,000+ others — are available via the ValtersIT API. One endpoint replaces five: NVD + GitHub CVE + CISA KEV + EPSS + Nuclei + Exploit-DB, unified.
No signup required
Technical Analysis
The vulnerability is a classic improper-check-of-exceptional-conditions (CWE-754) defect localized to the Mattermost Boards plugin's block-creation workflow. The Boards plugin models board content as "blocks" — structured entities persisted by the plugin — and each block carries a fields attribute that includes a nested properties member. According to the NVD description, Mattermost "fail[s] to validate the type of fields.properties on block creation," meaning the server-side handler that processes block-creation requests does not enforce that fields.properties deserializes to a JSON object.
Because the type check is missing, a caller can supply a child block whose fields.properties value is a non-object JSON value — for example a scalar, array, string, or null. When the Boards plugin worker subsequently processes this malformed child block, the unexpected type violates an internal assumption (most plausibly an access or traversal operation that expects an object), producing an unhandled exception that terminates the plugin worker process. The resulting condition is a denial of service: the worker crash causes the plugin's functionality to become unavailable for the affected tenant while the worker is restarted or remains down.
The attack surface is the Boards plugin block-creation interface, reachable over the network by any authenticated user who has been granted editor access to at least one board. The CVSS vector confirms the preconditions precisely: AV:N (network exploitation), AC:L (no specialized conditions beyond valid credentials), PR:L (low privileges — authenticated editor), UI:N (no user interaction required), S:U (the impact is scoped to the plugin component rather than the whole host), C:N / I:N (no confidentiality or integrity impact), and A:L (partial availability loss). No code-level symbols beyond fields.properties, block creation, and the Boards plugin worker are disclosed in the advisory, so implementation-level detail beyond this description would be speculative.
Exploitation Scenarios
No public proof-of-concept, exploit code, or Nuclei template exists for CVE-2026-13417, so the following chain is inferred at the vulnerability-class level from the NVD description and CVSS metrics. It does not rely on any fabricated function names or endpoints.
Reconnaissance and target identification. An attacker identifies an internet- or intranet-exposed Mattermost deployment running an affected release (11.9.x ≤ 11.9.0, 11.8.x ≤ 11.8.4, 11.7.x ≤ 11.7.7, or 10.11.x ≤ 10.11.22) with the Boards plugin enabled. Mattermost web interfaces and the Boards plugin surface can be fingerprinted with the Shodan dorks listed in the metadata section.
Precondition establishment. The attacker must possess a valid Mattermost account and must have been granted editor access to at least one board. This maps directly to the PR:L metric and restricts the attacker population to authenticated board editors rather than anonymous internet users.
Triggering the flaw class. Using the block-creation functionality exposed by the Boards plugin, the attacker submits a request that creates a child block in which the
fields.propertiesmember is set to a non-object value rather than the expected JSON object. The server performs no type validation on this member, so the malformed block is accepted and persisted.Worker crash and denial of service. When the Boards plugin worker handles the malformed child block, the unexpected non-object type for
fields.propertiestriggers an unhandled error, crashing the worker. Per the advisory, this "crash[es] the Boards plugin worker and trigger[s] a denial of service." The practical effect is loss of Boards plugin availability for users of the affected deployment; the CVSS A:L rating indicates a partial — not total — availability impact.Post-exploitation impact. The outcome is availability degradation only. There is no confidentiality or integrity impact per the CVSS vector, and the scope is unchanged, meaning the crash is contained to the plugin component. No privilege escalation, data exfiltration, or lateral movement is described in the advisory. Because no in-the-wild exploitation is recorded (EPSS 0.00212, 11.7th percentile) and CISA KEV status is negative, this should be treated as a low-urgency, insider-or-editor-abuse availability risk rather than an active campaign vector.
Impact Assessment
Business impact is bounded but operationally disruptive for organizations that depend on Mattermost Boards for project tracking, kanban workflows, or collaborative planning. The CVSS v3.1 subscores (AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:L) describe a low-severity, network-reachable flaw requiring authenticated editor privileges with no user interaction, yielding no confidentiality or integrity loss and only partial availability loss. The realistic blast radius is any tenant or team whose Boards plugin worker is shared: a single authenticated editor can repeatedly submit malformed child blocks to crash the worker, causing intermittent or sustained unavailability of board functionality. Because the exploit requires legitimate credentials with editor access, the primary threat actors are malicious or disgruntled insiders, compromised low-privilege accounts, and, in multi-tenant or federated deployments, users granted editor access across shared boards. A recursive retry loop by an attacker could convert the partial availability impact into a persistent DoS against the Boards plugin, amplifying operational cost even though the formal metric remains A:L. Confidentiality and integrity are unaffected according to the advisory, so no data-breach or tampering consequences are expected from this CVE alone. The EPSS score of 0.00212 places it in the 11.7th percentile, indicating very low predicted exploitation activity in the wild, and there is no CISA KEV listing, no public PoC, and no exploit code.
Detection Guidance
Sigma Rule
title: Mattermost Boards Plugin Block Creation with Non-Object fields.properties
id: 7f3c2a1e-4b8d-4f6a-9c2e-8d5b1a0e3f21
status: experimental
description: Detects block-creation API requests to the Mattermost Boards plugin where fields.properties is not a JSON object, the malformed input that crashes the Boards plugin worker (CVE-2026-13417).
references:
- https://nvd.nist.gov/vuln/detail/CVE-2026-13417
author: Valters IT Threat Intelligence
date: 2026/01/01
tags:
- attack.impact
- attack.t1499
logsource:
category: webserver
product: mattermost
detection:
selection_path:
cs-uri-stem|contains: '/plugins/'
selection_method:
cs-method: 'POST'
selection_body:
cs-uri-query|contains|all:
- 'boards'
- 'block'
selection_malformed:
- cs-uri-query|re: 'fields[^"]*properties":\s*("|\d|\[|true|false|null)'
- cs-uri-query|re: 'properties":\s*\['
condition: selection_path and selection_method and selection_body and selection_malformed
falsepositives:
- Legitimate API clients sending malformed test data during development
level: medium
YARA Rule
rule CVE_2026_13417_Mattermost_Boards_NonObject_Properties
{
meta:
description = "Detects Mattermost Boards plugin block payloads where fields.properties is a non-object value (CVE-2026-13417)"
author = "Valters IT Threat Intelligence"
date = "2026-01-01"
reference = "https://nvd.nist.gov/vuln/detail/CVE-2026-13417"
severity = "medium"
strings:
$block = "block" ascii nocase
$prop = "properties" ascii nocase
$fields = "fields" ascii nocase
$arr = /"properties"\s*:\s*\[/ ascii
$str = /"properties"\s*:\s*"/ ascii
$num = /"properties"\s*:\s*[0-9]/ ascii
$nul = /"properties"\s*:\s*null/ ascii
$bool = /"properties"\s*:\s*(true|false)/ ascii
condition:
filesize < 1MB and
$fields and $prop and $block and
any of ($arr, $str, $num, $nul, $bool)
}
Suricata IDS Rule
alert http any any -> any any (msg:"CVE-2026-13417 Mattermost Boards Plugin Non-Object fields.properties DoS Attempt"; flow:established,to_server; http.method; content:"POST"; http.uri; content:"/plugins/"; nocase; http.request_body; content:"fields"; nocase; content:"properties"; nocase; distance:0; pcre:"/\"properties\"\s*:\s*(?:\"|\[|[0-9]|true|false|null)/i"; classtype:attempted-dos; sid:2026134170; rev:1; reference:cve,2026-13417; reference:url,https://nvd.nist.gov/vuln/detail/CVE-2026-13417; metadata:service http, vendor Mattermost, product Boards;)
Elastic Detection
sequence by user.name, host.name with maxspan=5m
[ http.request where http.request.method == "POST"
and url.path like "*/plugins/*"
and request.body like "*fields*" ]
[ any where event.category == "process"
and process.name like "*mattermost*"
and (
process.exit_code != 0
or event.action == "process_crashed"
or message like "*plugin worker*"
) ]
Splunk SPL Query
index=web OR index=mattermost sourcetype=mattermost:* OR sourcetype=access_combined
| where (method="POST" OR http_method="POST")
| where match(uri_path, "/plugins/") AND match(uri_path, "boards|block")
| rex field=request_body max_match=0 "(?<propval>\"properties\"\s*:\s*(?:\"|\[|[0-9]|true|false|null))"
| where isnotnull(propval)
| stats count min(_time) as first_seen max(_time) as last_seen by src_ip, user, uri_path
| where count >= 1
| convert ctime(first_seen) ctime(last_seen)
| sort -count
Wazuh OSSEC Rule
<group name="mattermost,boards,cve-2026-13417,">
<rule id="100417" level="8">
<decoded_as>json</decoded_as>
<field name="http.method">POST</field>
<field name="url.path" type="pcre2">/plugins/.*boards.*block</field>
<field name="request.body" type="pcre2">"properties"\s*:\s*("|\[|[0-9]|true|false|null)</field>
<description>CVE-2026-13417: Mattermost Boards block creation with non-object fields.properties (DoS attempt)</description>
<mitre>
<id>T1499</id>
</mitre>
<group>denial_of_service,</group>
</rule>
<rule id="100418" level="10">
<if_sid>100417</if_sid>
<field name="http.response.status">500</field>
<description>CVE-2026-13417: Mattermost Boards plugin worker crash following malformed block creation</description>
<mitre>
<id>T1499</id>
</mitre>
</rule>
</group>
Mitigation & Patch Guidance
Patch confidence: 0/4 (UNPATCHED — no patch evidence from any tracked source). No vendor fix, workaround, or affected-version package mapping is available; advisory MMSA-2026-00710 is referenced in the NVD description but no patched release has been published in tracked sources.
- Immediate mitigations:
- Restrict and audit editor access to boards. Because exploitation requires editor privileges (PR:L), minimize the number of users with editor access and review board membership for stale or over-privileged accounts.
- If Boards functionality is not essential, disable the Mattermost Boards plugin to remove the attack surface entirely.
- Apply WAF or reverse-proxy inspection to reject block-creation requests whose
fields.propertiesis not a JSON object, and alert on matches using the detection content above. - Monitor the Boards plugin worker for crash/restart events and investigate the triggering account and source IP.
- Enforce least privilege and strong authentication (MFA) to reduce the risk of compromised low-privilege accounts being used as trigger vectors.
- Patch/upgrade steps:
- Monitor the Mattermost security advisories page for MMSA-2026-00710 and for patched releases superseding 11.9.0, 11.8.4, 11.7.7, and 10.11.22.
- Once a fixed version is published, upgrade affected Mattermost Server instances and restart the Boards plugin. Validate the deployed version before lifting temporary controls.
- Note: as of this report no patched version is confirmed. Do not assume any listed version is fixed.
- Long-term hardening:
- Adopt server-side schema/type validation for all plugin block attributes, particularly JSON members such as
fields.properties, and fail closed on type mismatch. - Run the Boards plugin worker under supervision with automatic restart, health checks, and crash-loop alerting to bound availability impact.
- Maintain a vulnerability management cadence that tracks Mattermost advisories and EPSS/KEV signals, and re-assess priority if EPSS rises or a PoC is published.
- Segment collaborative platforms from critical networks and apply defense-in-depth so that a plugin-worker DoS cannot cascade into broader service loss.
References
- NVD — CVE-2026-13417: https://nvd.nist.gov/vuln/detail/CVE-2026-13417
- Mattermost Security Advisories (MMSA-2026-00710): https://mattermost.com/security-updates/
- CWE-754 — Improper Check for Unusual or Exceptional Conditions: https://cwe.mitre.org/data/definitions/754.html
- FIRST EPSS — CVE-2026-13417 scoring: https://api.first.org/data/v1/epss?cve=CVE-2026-13417
- MITRE ATT&CK T1499 — Endpoint Denial of Service: https://attack.mitre.org/techniques/T1499/
Threat actor campaigns / exploit-in-the-wild evidence: None identified. CISA KEV status is negative, EPSS is 0.00212 (11.7th percentile), and no public PoC, exploit code, or Nuclei template is known for this CVE.