High · published December 5, 2025
⚡ A tiny PDU can cause big problems! The BACnet Protocol Stack library can crash or misroute communications when it mishandles small packet data — like a crowded restaurant where servers start mixing up tiny orders! 🍽️ Imagine a restaurant where a waiter tries to deliver a meal based on a tiny, almost unreadable ticket — they might just serve the wrong dish, or worse, drop everything and crash into the kitchen! That's how this vulnerability mishandles small BACnet PDUs, leading to potential chaos in communication. An attacker could exploit this flaw to trigger a denial-of-service (DoS) condition, causing the service to crash when tiny PDUs are processed. While remote code execution is unlikely, the misrouting of replies can severely disrupt the intended communication, making this a high-risk vulnerability to address.
Imagine a restaurant where a waiter tries to deliver a meal based on a tiny, almost unreadable ticket — they might just serve the wrong dish, or worse, drop everything and crash into the kitchen! That's how this vulnerability mishandles small BACnet PDUs, leading to potential chaos in communication. The npdu_is_expected_reply function in the BACnet Protocol Stack library fails to verify the existence of certain APDU bytes before indexing them, resulting in potential out-of-bounds reads. This can lead to crashes in strict builds or undefined behavior in unprotected builds.
An attacker could exploit this flaw to trigger a denial-of-service (DoS) condition, causing the service to crash when tiny PDUs are processed. While remote code execution is unlikely, the misrouting of replies can severely disrupt the intended communication, making this a high-risk vulnerability to address. Update the BACnet Protocol Stack library to version 1.5.0.rc2 or later to address this vulnerability. Conduct a thorough review of any dependent systems to ensure they handle PDUs correctly under all conditions. Consider implementing additional input validation measures. You've got this! Follow these steps to secure your communications and keep everything running smoothly. 🛡️