Executive brief
The BACnet Stack library, which provides communication services for building automation and control networks, contains a vulnerability in its data decoding component. An attacker can send a specially crafted network message to trigger a crash in the software. This results in a denial-of-service condition, potentially disrupting the monitoring and control of building systems like HVAC, lighting, and access control.
Technical details
An out-of-bounds (OOB) read vulnerability exists in BACnet Stack 1.3.1 within the bacnet_tag_number_decode function. The root cause is a failure in bacapp_decode_application_data() to validate an oversized extended application length against the actual remaining bytes in the APDU. This malformed length is passed through bacapp_decode_data() to host_n_port_decode(), which subsequently triggers an invalid memory read in bacnet_tag_number_decode(). A remote, unauthenticated attacker can exploit this by sending a malformed UCOV (Unconfirmed Change of Value) or property-value payload, leading to a segmentation fault and denial of service.
Affected products
- BACnet Stack Project BACnet Stack 1.3.1
Timeline
- 2026-06-04: disclosed: Vulnerability reported via GitHub Issues and published to NVD.