<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:webfeeds="http://webfeeds.org/rss/1.0"><channel><title>Cpe:2.3:o:zephyrproject:zephyr:*:*:*:*:*:*:*:* - CraftedSignal Threat Feed</title><link>https://feed.craftedsignal.io/cpes/cpe2.3ozephyrprojectzephyr/</link><description>Trending threats, MITRE ATT&amp;CK coverage, and detection metadata. Fed continuously.</description><generator>Hugo</generator><language>en</language><managingEditor>hello@craftedsignal.io</managingEditor><webMaster>hello@craftedsignal.io</webMaster><lastBuildDate>Mon, 19 Oct 2026 22:24:23 +0000</lastBuildDate><atom:link href="https://feed.craftedsignal.io/cpes/cpe2.3ozephyrprojectzephyr/feed.xml" rel="self" type="application/rss+xml"/><image><url>https://feed.craftedsignal.io/favicon-32x32.png</url><title>CraftedSignal Threat Feed</title><link>https://feed.craftedsignal.io/</link><width>32</width><height>32</height></image><webfeeds:icon>https://feed.craftedsignal.io/favicon.svg</webfeeds:icon><item><title>Stack-Based Buffer Overflow in Zephyr RTOS OSDP Implementation</title><link>https://feed.craftedsignal.io/briefs/2026-10-osdp-overflow/</link><pubDate>Mon, 19 Oct 2026 22:24:23 +0000</pubDate><author>hello@craftedsignal.io</author><guid isPermaLink="true">https://feed.craftedsignal.io/briefs/2026-10-osdp-overflow/</guid><description>A vulnerability in the Zephyr RTOS OSDP Control Panel implementation allows attackers with access to the RS-485 bus to trigger a stack-based buffer overflow and potential code execution.</description><content:encoded><![CDATA[<p>CVE-2026-76788 identifies a critical buffer overflow vulnerability within the Open Supervised Device Protocol (OSDP) implementation in the Zephyr RTOS, specifically within the <code>cp_decode_response()</code> function. This vulnerability stems from improper bounds checking when handling <code>REPLY_KEYPAD</code> and <code>REPLY_RAW</code> frames, which are copied into stack-allocated <code>osdp_event</code> structures. Because the code trusts length fields provided by the Peripheral Device without validating them against the <code>OSDP_EVENT_MAX_DATALEN</code> constant, an attacker can supply an oversized payload.</p>
<p>The vulnerability is accessible to any entity with physical access to the RS-485 wiring, such as a compromised or malicious card reader. Even if Secure Channel (SC) communication is enabled, an attacker can force a secure channel deactivation by sending a single unauthenticated frame with an invalid MAC, effectively reverting the connection to plaintext. The resulting overflow can overwrite stack-based return addresses or registers on Cortex-M or RISC-V architectures, leading to either a system crash (Denial of Service) or arbitrary code execution in the context of the OSDP receive thread.</p>
<h2 id="attack-chain">Attack Chain</h2>
<ol>
<li>Attacker gains physical access to the RS-485 wiring connecting a peripheral device to the OSDP Control Panel.</li>
<li>Attacker transmits an unauthenticated frame with an incorrect MAC to the Control Panel to trigger <code>sc_deactivate()</code> and disable secure channel protection.</li>
<li>Attacker crafts a malicious OSDP frame containing a <code>REPLY_KEYPAD</code> or <code>REPLY_RAW</code> message ID.</li>
<li>Attacker includes a payload length in the frame that exceeds the 64-byte <code>OSDP_EVENT_MAX_DATALEN</code> limit.</li>
<li>The Control Panel's <code>osdp_process_reply()</code> function processes the packet after it passes initial CRC-16 checks.</li>
<li><code>cp_decode_response()</code> fails to validate the payload length and proceeds to <code>memcpy()</code> the oversized data into the stack-allocated <code>osdp_event</code> structure.</li>
<li>The <code>memcpy()</code> operation overflows the stack buffer, overwriting adjacent memory including saved registers and the return address.</li>
<li>The OSDP thread returns execution to an attacker-controlled address, leading to arbitrary code execution or a system crash.</li>
</ol>
<h2 id="impact">Impact</h2>
<p>Successful exploitation of this vulnerability permits unauthorized control over access-control panels. An attacker may achieve persistent remote code execution on the device, potentially bypassing security gates, manipulating access logs, or disrupting facility security infrastructure. The vulnerability affects all systems utilizing Zephyr RTOS with the <code>CONFIG_OSDP</code> and <code>CONFIG_OSDP_MODE_CP</code> features enabled, provided they do not implement manual stack-protection mitigations.</p>
<h2 id="recommendation">Recommendation</h2>
<ul>
<li>Upgrade all affected Zephyr RTOS deployments to a version that includes the fix for CVE-2026-76788, which explicitly adds bounds checking for <code>REPLY_KEYPAD</code> and <code>REPLY_RAW</code> handlers using <code>OSDP_EVENT_MAX_DATALEN</code>.</li>
<li>Restrict physical access to RS-485 bus wiring to prevent unauthorized device injection or frame manipulation.</li>
<li>Enable stack protection mechanisms (e.g., stack canaries) in Zephyr RTOS configurations to detect or mitigate buffer overflow attempts.</li>
</ul>
]]></content:encoded><category domain="severity">high</category><category domain="type">advisory</category><category>zephyr</category><category>rtos</category><category>buffer-overflow</category><category>osdp</category></item></channel></rss>