目标达成 感谢每一位支持者 — 我们达成了 100% 目标!

目标: 1000 元 · 已筹: 1359 元

100%

CVE-2026-81038— 蓝牙 OTS 服务器计算校验和失败时泄露未初始化栈内存

一分钟漏洞结论

影响对象
zephyrproject zephyr
利用判断
尚无明确在野利用证据,仍需结合暴露面评估
建议动作
优先检查厂商安全公告和参考链接中的修复版本;无法立即升级时,限制受影响服务暴露并加强监测。

对象传输服务(OTS)服务器在 函数(位于 )中构建对象动作控制点(OACP)响应指示。在本次修复之前,无论结果码如何,只要请求的操作码为 ,就会在响应中追加一个四字节的校验和值字段。该响应的负载是一个在 中通过 声明的未初始化四字节的栈缓冲区,且仅在 成功路径上被填充。在所有失败路径中,该缓冲区仍为空,导致对零长度缓冲区调用了 。 OACP 特征及其客户端特征配置描述符的权限被声明为 以及 ,因此无需配对、加密或认证。任何处于无线电范围内、能够连接到运行 OTS 服务器设备的对等方,均可启用 OACP 指示,并发

CVSS 7.1 · High
获取后续新漏洞提醒 登录后订阅

一、 漏洞 CVE-2026-81038 基础信息

漏洞信息

对漏洞内容有疑问?看看神龙的深度分析是否有帮助!
查看神龙十问 ↗

尽管我们使用了先进的大模型技术,但其输出仍可能包含不准确或过时的信息。神龙努力确保数据的准确性,但请您根据实际情况进行核实和判断。

Vulnerability Title
Bluetooth OTS server discloses uninitialized stack memory in failed Calculate Checksum responses
来源: CVE Program / CVE List V5
Vulnerability Description
The Object Transfer Service server builds its Object Action Control Point (OACP) response indication in oacp_ind_send() (subsys/bluetooth/services/ots/ots_oacp.c). Before this fix the four-byte Checksum Value field was appended whenever the requested op code was BT_GATT_OTS_OACP_PROC_CHECKSUM_CALC, regardless of the result code. The response payload is a bare, uninitialized four-byte stack buffer declared with NET_BUF_SIMPLE_DEFINE(resp_param, sizeof(uint32_t)) in bt_gatt_ots_oacp_write(), and it is filled only on the success path of oacp_checksum_proc_validate(). On every failure path the buffer is still empty, so net_buf_simple_pull_le32() was invoked on a zero-length buffer. The OACP characteristic and its client characteristic configuration descriptor are declared with BT_GATT_PERM_WRITE and BT_GATT_PERM_READ | BT_GATT_PERM_WRITE, so no pairing, encryption, or authentication is required. Any peer within radio range that can connect to a device running the OTS server can enable OACP indications and write a nine-byte Calculate Checksum command that fails validation — for example by issuing it with no object selected, which returns BT_GATT_OTS_OACP_RES_INV_OBJ. Because oacp_command_decode() accepts the Calculate Checksum op code unconditionally (it is not guarded by CONFIG_BT_OTS_OACP_CHECKSUM_SUPPORT), builds without checksum support are reachable too: they answer BT_GATT_OTS_OACP_RES_OPCODE_NOT_SUP and take the same bad path. On builds with CONFIG_ASSERT enabled, the zero-length pull trips the assertion inside net_buf_simple_pull_mem() and panics the device, giving a remotely triggered denial of service. On builds with assertions disabled there is no check: the pull returns the untouched stack array and four bytes of uninitialized stack memory are copied into the indication and transmitted to the peer, repeatable on every request. The disclosure is bounded to four bytes per request and the write stays inside the seven-byte res indication buffer, so there is no memory corruption; the impact is uninitialized-memory disclosure plus an availability loss in assertion-enabled configurations.
来源: CVE Program / CVE List V5
CVSS Information
CVSS:3.1/AV:A/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:H
来源: CVE Program / CVE List V5
Vulnerability Type
可达断言
来源: CVE Program / CVE List V5

受影响产品

厂商 产品 影响版本 CPE 订阅
zephyrproject zephyr 3.3.0 ~ 4.4.2 -

二、漏洞 CVE-2026-81038 的公开POC

# POC 描述 源链接 神龙链接
AI 生成 POC 高级

未找到公开 POC。

登录以生成 AI POC

三、漏洞 CVE-2026-81038 的情报信息

请登录查看更多情报信息。

CVE-2026-81038 补丁与修复 (1)

CVE-2026-81038 厂商安全公告 (1)

同批安全公告 · zephyrproject · 2026-10-26 · 共 6 条

CVE-2026-82389 6.5 MEDIUM 蓝牙 HFP AG 连接失败时 NULL 解引用漏洞
CVE-2026-82388 5.3 MEDIUM 蓝牙经典主机 HFP 对象释放后使用漏洞
CVE-2026-81039 4.3 MEDIUM 蓝牙主机多连接集共享身份时的连接预留泄露漏洞
CVE-2026-19742 3.7 LOW IPv6 接口标识符非加密随机数生成器密钥泄露漏洞
CVE-2026-82390 3.7 LOW ESP32 硬件加密驱动跨会话 AES 密钥混淆漏洞

IV. Related Vulnerabilities