JetLinks Community through 2.10.0 Missing Authorization via Product-Level Transparent Codec Save
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.
- Products
- Not specified
- Affected versions
- Not specified
- Fixed versions
- Not specified
- CVEs
- CVE-2026-110109
- Confirmed fixed CVEs
- Not specified
- Updated in this feed
- 3 Nov 2026, 01:16 UTC · Revision 1
Source evidence
JetLinks Community through 2.10.0 Missing Authorization via Product-Level Transparent Codec Save
core-osv · Original sourcePublished 13 Oct 2026, 16:53 UTC
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.
osv:CVE-2026-110109
Complete source record
{
"id": "ee9f502947dfb196591f6448781a5e9f509f2e46829be01d01fa110e64c1a5d8",
"url": "https://osv.dev/vulnerability/CVE-2026-110109",
"method": "structured",
"payload": {
"kind": "advisory",
"title": "JetLinks Community through 2.10.0 Missing Authorization via Product-Level Transparent Codec Save",
"summary": "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.",
"evidence": "osv:CVE-2026-110109",
"products": [],
"severity": "high",
"structured": {
"id": "CVE-2026-110109",
"aliases": [
"CVE-2026-110109"
],
"metrics": [
{
"type": "CVSS_V4",
"score": "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"
}
],
"affected": [
{
"ranges": [
{
"repo": "https://github.com/jetlinks/jetlinks-community",
"type": "GIT",
"events": [
{
"introduced": "0"
},
{
"last_affected": "60ecc9f65d96acfd38da8daecdb0062fc72034f3"
}
],
"database_specific": {
"extracted_events": [
{
"range": [
{
"introduced": "0"
},
{
"last_affected": "2.10.0"
}
],
"source": "AFFECTED_FIELD",
"strategy": "StandardRange"
},
{
"range": [
{
"introduced": "0"
},
{
"last_affected": "2.10.0"
}
],
"source": "DESCRIPTION"
}
]
}
}
],
"versions": [
"2.10.0",
"2.1.0",
"1.12.0",
"1.11.0",
"1.10.0",
"1.9.0",
"1.8.0",
"1.7.0",
"1.6.0",
"1.5.0",
"1.4.0",
"1.3.0",
"1.1",
"1.0",
"1.0-RC"
],
"database_specific": {
"source": "https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-110109.json"
}
}
],
"modified": "2026-10-28T02:30:24.739815614Z",
"provider": "osv",
"references": [
"https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/110xxx/CVE-2026-110109.json",
"https://hackmd.io/@1ExmmukzRMWN7B4gQ4W-4Q/jetlinks-community-transparent-codec-save-authz-bypass",
"https://nvd.nist.gov/vuln/detail/CVE-2026-110109",
"https://www.vulncheck.com/advisories/jetlinks-community-through-2.10.0-missing-authorization-via-product-level-transparent-codec-save",
"https://github.com/jetlinks/jetlinks-community",
"https://github.com/hs-web/hsweb-framework/blob/5.0.1/hsweb-authorization/hsweb-authorization-api/src/main/java/org/hswebframework/web/authorization/Authentication.java#L206-L218",
"https://github.com/jetlinks/jetlinks-community/blob/60ecc9f65d96acfd38da8daecdb0062fc72034f3/jetlinks-manager/device-manager/src/main/java/org/jetlinks/community/device/web/TransparentMessageCodecController.java#L138-L143"
],
"provider_metadata": {
"cwe_ids": [
"CWE-862"
],
"cna_assigner": "VulnCheck",
"osv_generated_from": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/110xxx/CVE-2026-110109.json"
}
},
"related_cves": [
{
"value": "CVE-2026-110109",
"evidence": "/id"
}
],
"security_relevant": true,
"severity_evidence": "/severity/0/score"
},
"source_id": "core-osv",
"document_id": 491534,
"published_at": "2026-10-13T16:53:10.736+00:00"
}