Description
An out-of-bounds read vulnerability was discovered in the Bosch BME690 SensorAPI (C-driver) in version v1.0.3 and prior, specifically within the field data parsing logic in read_all_field_data (bme69x.c).

The driver prefetches heater configuration registers into a contiguous 30-byte stack buffer (set_val) mapping IDAC, RES_HEAT, and GAS_WAIT tables.

When parsing sensor field data, the gas_index is extracted using a 4-bit mask (0..15) but lacks boundary verification against the valid range (0..9).

An attacker or a compromised peripheral mimicking a sensor on the I2C/SPI bus could return a payload with a gas index value of 10 or higher.

This causes the driver to perform an out-of-bounds array access (set_val[20 + gas_index]), reading up to 6 bytes past the stack buffer.

The leaked out-of-bounds byte is then written into the public gas_wait field, which may lead to measurement corruption or leak adjacent stack memory when telemetered or logged.
Published: 2026-09-10
Score: 4.3 Medium
EPSS: < 1% Very Low
KEV: No
Impact: Information Disclosure and Measurement Corruption
Action: Assess Impact
AI Analysis

Impact

The vulnerability is a classic out-of-bounds read within the BME690 SensorAPI driver. During sensor field data parsing, a gas index is extracted with a 4‑bit mask but no check ensures it stays within the valid 0–9 range. An attacker who can expose a fabricated sensor on the I2C/SPI bus may supply a gas index of 10 or higher, causing the driver to read up to six bytes beyond a 30‑byte stack buffer. The leaked byte is written into the public gas_wait field, which can corrupt measurement values or expose adjacent stack memory in logs or telemetry. The primary consequence is potential confidentiality loss of stack contents and integrity loss of sensor output.

Affected Systems

The affected systems are devices that use Bosch Sensortec’s BME690 SensorAPI C driver, specifically version 1.0.3 and earlier. These are embedded sensor platforms that interface over I2C or SPI.

Risk and Exploitability

Risk and exploitability are moderate. The CVSS score of 4.3 reflects limited impact beyond data corruption. EPSS data is unavailable. The KEV status is not listed. The description indicates that an attacker must have a trusted peripheral that can mimic a sensor on the same bus; therefore, the attack vector is inferred to be local, not remote. As such, the threat is significant for systems where sensor data integrity is critical, but exploitation demands physical or compromised peripheral access.

Generated by OpenCVE AI on September 10, 2026 at 10:51 UTC.

Remediation

No vendor fix or workaround currently provided.

OpenCVE Recommended Actions

  • Apply Bosch’s official patch or upgrade to a version in which the gas_index check is bounded. For example, update the BME690 SensorAPI C driver to v1.0.4 or later if released.
  • Disable or restrict access to untrusted I2C/SPI peripherals so that only authenticated sensors can communicate with the driver. This limits the ability of a malicious device to send forged gas_index values.
  • Validate returned sensor data for out‑of‑range or corrupted values before using it in calculations or telemetry.

Generated by OpenCVE AI on September 10, 2026 at 10:51 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

Thu, 10 Sep 2026 15:30:00 +0000

Type Values Removed Values Added
Metrics ssvc

{'options': {'Automatable': 'no', 'Exploitation': 'none', 'Technical Impact': 'partial'}, 'version': '2.0.3'}


Thu, 10 Sep 2026 11:15:00 +0000

Type Values Removed Values Added
Title Out‑of‑Bounds Read in BME690 SensorAPI Leading to Sensor Data Corruption

Thu, 10 Sep 2026 09:15:00 +0000

Type Values Removed Values Added
Description An out-of-bounds read vulnerability was discovered in the Bosch BME690 SensorAPI (C-driver) in version v1.0.3 and prior, specifically within the field data parsing logic in read_all_field_data (bme69x.c). The driver prefetches heater configuration registers into a contiguous 30-byte stack buffer (set_val) mapping IDAC, RES_HEAT, and GAS_WAIT tables. When parsing sensor field data, the gas_index is extracted using a 4-bit mask (0..15) but lacks boundary verification against the valid range (0..9). An attacker or a compromised peripheral mimicking a sensor on the I2C/SPI bus could return a payload with a gas index value of 10 or higher. This causes the driver to perform an out-of-bounds array access (set_val[20 + gas_index]), reading up to 6 bytes past the stack buffer. The leaked out-of-bounds byte is then written into the public gas_wait field, which may lead to measurement corruption or leak adjacent stack memory when telemetered or logged.
Weaknesses CWE-125
References
Metrics cvssV3_1

{'score': 4.3, 'vector': 'CVSS:3.1/AV:P/AC:L/PR:N/UI:N/S:U/C:L/I:L/A:L'}


Subscriptions

No data.

cve-icon MITRE

Status: PUBLISHED

Assigner: bosch

Published:

Updated: 2026-09-10T15:00:50.874Z

Reserved: 2026-04-30T08:03:11.875Z

Link: CVE-2026-42806

cve-icon Vulnrichment

Updated: 2026-09-10T15:00:43.115Z

cve-icon NVD

Status : Awaiting Analysis

Published: 2026-09-10T09:17:02.127

Modified: 2026-09-10T15:43:03.760

Link: CVE-2026-42806

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-09-10T11:00:10Z

Weaknesses