{"url":"http://public2.vulnerablecode.io/api/vulnerabilities/74409?format=json","vulnerability_id":"VCID-hm83-nh9x-27ay","summary":"BACnet Protocol Stack library provides a BACnet application layer, network layer and media access (MAC) layer communications services. In 1.4.2, 1.5.0.rc2, and earlier, an off-by-one stack-based buffer overflow in the ubasic interpreter causes a crash (SIGABRT) when processing string literals longer than the buffer limit. The tokenizer_string function in src/bacnet/basic/program/ubasic/tokenizer.c incorrectly handles null termination for maximum-length strings. It writes a null byte to dest[40] when the buffer size is only 40 (indices 0-39), triggering a stack overflow.","aliases":[{"alias":"CVE-2026-21870"}],"fixed_packages":[],"affected_packages":[],"references":[{"reference_url":"https://api.first.org/data/v1/epss?cve=CVE-2026-21870","reference_id":"","reference_type":"","scores":[{"value":"7e-05","scoring_system":"epss","scoring_elements":"0.00531","published_at":"2026-06-11T12:55:00Z"},{"value":"7e-05","scoring_system":"epss","scoring_elements":"0.00538","published_at":"2026-06-14T12:55:00Z"},{"value":"7e-05","scoring_system":"epss","scoring_elements":"0.0053","published_at":"2026-06-13T12:55:00Z"},{"value":"7e-05","scoring_system":"epss","scoring_elements":"0.00528","published_at":"2026-06-12T12:55:00Z"}],"url":"https://api.first.org/data/v1/epss?cve=CVE-2026-21870"},{"reference_url":"https://github.com/bacnet-stack/bacnet-stack/pull/1196","reference_id":"1196","reference_type":"","scores":[{"value":"5.5","scoring_system":"cvssv3.1","scoring_elements":"CVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:U/C:N/I:N/A:H"},{"value":"Track","scoring_system":"ssvc","scoring_elements":"SSVCv2/E:N/A:N/T:P/P:M/B:A/M:M/D:T/2026-02-13T18:19:25Z/"}],"url":"https://github.com/bacnet-stack/bacnet-stack/pull/1196"},{"reference_url":"https://github.com/bacnet-stack/bacnet-stack/commit/4e1176394a5ae50d2fd0b5790d9bff806dc08465","reference_id":"4e1176394a5ae50d2fd0b5790d9bff806dc08465","reference_type":"","scores":[{"value":"5.5","scoring_system":"cvssv3.1","scoring_elements":"CVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:U/C:N/I:N/A:H"},{"value":"Track","scoring_system":"ssvc","scoring_elements":"SSVCv2/E:N/A:N/T:P/P:M/B:A/M:M/D:T/2026-02-13T18:19:25Z/"}],"url":"https://github.com/bacnet-stack/bacnet-stack/commit/4e1176394a5ae50d2fd0b5790d9bff806dc08465"},{"reference_url":"https://github.com/bacnet-stack/bacnet-stack/security/advisories/GHSA-pc83-wp6w-93mx","reference_id":"GHSA-pc83-wp6w-93mx","reference_type":"","scores":[{"value":"5.5","scoring_system":"cvssv3.1","scoring_elements":"CVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:U/C:N/I:N/A:H"},{"value":"Track","scoring_system":"ssvc","scoring_elements":"SSVCv2/E:N/A:N/T:P/P:M/B:A/M:M/D:T/2026-02-13T18:19:25Z/"}],"url":"https://github.com/bacnet-stack/bacnet-stack/security/advisories/GHSA-pc83-wp6w-93mx"}],"weaknesses":[{"cwe_id":193,"name":"Off-by-one Error","description":"A product calculates or uses an incorrect maximum or minimum value that is 1 more, or 1 less, than the correct value."}],"exploits":[],"severity_range_score":"5.5 - 5.5","exploitability":null,"weighted_severity":null,"risk_score":null,"resource_url":"http://public2.vulnerablecode.io/vulnerabilities/VCID-hm83-nh9x-27ay"}