Skip to main content

JetLinks Community CVE-2026-110109

| EUVDEUVD-2026-98942 HIGH
Missing Authorization (CWE-862)
2026-10-13 disclosure@vulncheck.com GHSA-6q8r-vgvx-r98p
7.1
CVSS 4.0 · Vendor: vulncheck
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Authenticate as low-privilege query user
  2. Exploit
    POST crafted codec to /device/transparent-codec/{productId}
  3. Execution
    Save arbitrary codec provider (no @SaveAction check)
  4. Impact
    Control encode/decode for all product devices

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A01:2025 - Broken Access Control
ASVS 5.0
V8 - Authorization Authorization checks on every request
MITRE ATT&CK

1 technique across 1 tactic: Privilege Escalation

The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up.

Exploitation Conditions

Requires an authenticated JetLinks Community account (through 2.10.0) that holds at least query-level access to the transparent-codec resource; the attacker then issues POST /device/transparent-codec/{productId}. The root cause is that this save endpoint lacks the @SaveAction authorization annotation, so no special product configuration or feature toggle is needed - default deployments are affected. The primary limiting factor is the PR:L prerequisite: an attacker must already possess valid credentials with query permission on that resource (so an existing low-privilege user, leaked token, or compromised account), which prevents anonymous internet-wide exploitation.

Impact

The provided CVSS 4.0 vector (AV:N/AC:L/AT:N/PR:L/UI:N) scores 7.1 (High) and describes a network-reachable, low-complexity flaw whose impact is confined to integrity (VI:H) with no confidentiality or availability loss (VC:N/VA:N) and no subsequent-system scope change (SC:N/SI:N/SA:N). The decisive mitigating signal is PR:L: exploitation requires an authenticated account that already holds at least query access to the transparent-codec resource, so this is NOT a mass, unauthenticated internet-facing bug - it requires a foothold or an over-provisioned low-privilege user. No EPSS score, no CISA KEV entry, and no explicit POC flag were supplied in the input, so exploitation probability cannot be quantified; however, a detailed technical write-up (hackmd) and a VulnCheck advisory exist, lowering the barrier to weaponization. SSVC decision data was not provided. Signal conflict to note explicitly: the input Tag 'Authentication Bypass' disagrees with CWE-862 (Missing Authorization) and with PR:L - the attacker IS authenticated and is bypassing an authorization check, not authentication; defenders should treat this as a broken-access-control/privilege issue. Net: a genuine but moderate priority - real integrity risk to device message handling, gated behind requiring a valid low-privileged account.

Exploit ScenarioDerived

An attacker holding a low-privileged JetLinks account with only query access to transparent-codec sends a POST to /device/transparent-codec/{productId} to save a malicious codec provider and configuration. Because the controller endpoint omits the @SaveAction authorization annotation, the write is accepted, letting the attacker dictate how transparent messages are encoded and decoded for every device of that product. No public exploit is flagged, but a detailed technical write-up describing the exact vulnerable controller lines has been published.

This Week Schedule remediation this week. Why: HIGH severity (CVSS 7.0-8.9).
No patch listed yet 0.3% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Oct 13, 2026

JetLinks Community through 2.10.0 allows an authenticated user holding only query-level access to the transparent-codec resource to overwrite a product's codec provider and configuration via POST /device/transparent-codec/{productId}, because that save handler is missing the @SaveAction authorization annotation the hsweb-based framework uses to gate write operations. Successful abuse hands the attacker control over how transparent (raw pass-through) messages are decoded and encoded for every device belonging to the targeted product, an integrity-only impact with no confidentiality or availability loss (CVSS 4.0 7.1 High, PR:L). Exploitation requires a valid low-privilege account on the affected deployment, the flaw is network-reachable with low complexity, and no public exploit code has been identified at time of analysis with no CISA KEV listing.

RemediationAI

No vendor-released patch is identified in the provided intelligence for the transparent-codec save authorization gap, so remediation must begin with compensating controls while tracking the upstream project at https://github.com/jetlinks/jetlinks-community and the advisory at https://www.vulncheck.com/advisories/jetlinks-community-through-2.10.0-missing-authorization-via-product-level-transparent-codec-save for a fixed build. The highest-fidelity fix is to add the missing @SaveAction annotation to the save handler in TransparentMessageCodecController.java (the vulnerable lines 138-143 are visible at https://github.com/jetlinks/jetlinks-community/blob/60ecc9f65d96acfd38da8daecdb0062fc72034f3/jetlinks-manager/device-manager/src/main/java/org/jetlinks/community/device/web/TransparentMessageCodecController.java#L138-L143), or otherwise have the application enforce a write-action check on POST /device/transparent-codec/{productId}; if the platform is self-hosted, apply this change as an internal patch and rebuild, accepting the maintenance burden of carrying a local fork. Until then, restrict reachability of the codec endpoint: at the reverse proxy or API gateway, block POST (and PUT/DELETE) requests to /device/transparent-codec/* from all principals except a small administrative allowlist, which stops the attack but also prevents legitimate low-privilege configuration workflows and must be paired with a path-matching rule that does not over-block unrelated device APIs. Complement this by auditing and reducing accounts that hold query-only access to the transparent-codec resource, since the vulnerability is only exploitable by an already-authenticated low-privilege user (enforce least privilege, rotate tokens, watch for shared or leaked credentials), and by monitoring/alerting on any change to codec provider or configuration records for products so tampering with message encoding is detected; these measures do not remove the underlying missing-authorization defect, so they should be treated as temporary until an upstream fix is available. The provided CVSS 4.0 vector carries E:X, meaning exploitation maturity was not assessed at publication, so threat-hunting should treat codec-configuration changes as suspicious but not assume active exploitation.

Affected VersionsENISA

JetLinks Community 0 ≤2.10.0

Affected Packages

euvd jetlinks_community no fix

Source: OSV (Open Source Vulnerabilities)

Affects your stack

Affects 1 package in euvd

Checking this CVE against your own stacks and servers is part of the Basic plan and up.

Technical ContextAI · show details

JetLinks Community is an open-source IoT/device-management platform built on Spring Boot and the hsweb-framework, in which endpoints are protected by action-level annotations that the framework's Authentication and authorization API (see hsweb-framework Authentication.java, lines 206-218) consult when deciding whether the current principal may perform a given data access action. Transparent codecs are a per-product configuration feature: a codec provider registered for a product defines how transparent messages (raw payloads sent to or from devices without a formal model) are encoded and decoded, so the codec is shared by all devices of that product. The controller org.jetlinks.community.device.web.TransparentMessageCodecController exposes the endpoint, and the save handler at lines 138-143 lacks the @SaveAction annotation that would require the caller to hold write/save permission on the transparent-codec resource; the corresponding query (read) handler does carry its authorization requirement, so a principal that only has query access can still reach the unprotected save path. This is a classic CWE-862 Missing Authorization defect: authentication succeeds and the session is valid, but no authorization check binds the requested write action to the caller's granted actions, letting the read-only role be escalated into a write role for codec configuration. The impact stays within the JetLinks application (no subsequent-system scope change, SC:N/SI:N/SA:N) and is confined to integrity (VI:H), since an attacker can substitute arbitrary codec providers and parameters, altering how every device's transparent traffic is interpreted, but cannot directly read secrets or take the platform down through this endpoint alone.

Know when the next one hits your stack

  • Watch products and get an email when something new is published
  • Check this CVE against your own stack and servers
  • Exploit and PoC references, threat intelligence from 22 sources

No credit card · 7-day full trial

Severity by source

Vendor (vulncheck) PRIMARY 7.1 HIGH
CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:N/VI:H/VA:N/SC:N/SI:N/SA:N
vuln.today AI 6.5 MEDIUM

Authenticated low-privilege query user (PR:L) remotely overwrites codec config with no interaction; impact is integrity-only (I:H), with no confidentiality or availability effect.

3.1 AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:H/A:N
4.0 AV:N/AC:L/AT:N/PR:L/UI:N/VC:N/VI:H/VA:N/SC:N/SI:N/SA:N

Primary rating from Vendor (vulncheck).

CVSS VectorVendor: vulncheck

Attack Vector
Network
Attack Complexity
Low
Attack Requirements
None
Privileges Required
Low
User Interaction
None
Vulnerable system: Confidentiality
None
Vulnerable system: Integrity
High
Vulnerable system: Availability
None
Subsequent system: Confidentiality
None
Subsequent system: Integrity
None
Subsequent system: Availability
None

DescriptionCVE.org

JetLinks Community through 2.10.0 contains a missing authorization vulnerability that allows users with only query access on transparent-codec to overwrite product codecs via POST /device/transparent-codec/{productId}. Because the endpoint lacks @SaveAction, attackers can save arbitrary codec providers and configurations, controlling how transparent messages are decoded and encoded for every device of that product.

Executive ViewAI

Why It Matters

JetLinks Community deployments up to and including 2.10.0 contain an authorization gap that lets any user with a valid low-privilege account rewrite how raw device traffic is decoded and encoded for an entire product line, affecting every device registered under that product. Because the flaw is network-reachable and trivially triggered once an account exists, organizations running this IoT platform for production device fleets or customer deployments face a broad, hard-to-detect integrity risk to device communications. There is no vendor-released patch at this time, so risk reduction depends on access restrictions and monitoring until a fix is published.

Business Impact: High
Compensating Controls

No vendor-released patch identified at time of analysis. Interim mitigations: restrict network access to POST /device/transparent-codec/{productId} at the reverse proxy, gateway, or WAF; enforce least-privilege RBAC and remove or disable accounts with query-only access that do not require platform use; require administrative approval for codec changes; enable logging and alerting on codec provider/configuration modifications and on endpoint access; segment the JetLinks deployment so codec administration is reachable only from a trusted management network.

Threat Intelligence Overview

EPSS Score
0.3%
Top 81% exploitable
Prevalence
Low
open-source IoT device platform, niche enterprise/IoT deployment footprint
Social Media
1
Sightings
Data Quality
6 sources
Confidence: High

How this decision was reached

The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.

SignalValue
Severity HIGH
CISA KEV No
Public POC No
EPSS 0.3%
Patch available No
Active threat No
Deciding rule
HIGH severity (CVSS 7.0-8.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision
Scheduled
Exploitation
None
System Exposure· derived
Open
Automatable
No
Human Impact
High
Technical Impact
Partial

Priority Score

36
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +36
PoC: 0
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

Authentication bypass attacks exploit flaws in the verification mechanisms that control access to systems and applications.

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy