High severity · published Apr 21, 2026
CVE-2026-40614
PJSIP: Heap buffer overflow in Opus codec decoding
8.8
CVSS
0.2%
EPSS
No
On KEV
Description
PJSIP is a free and open source multimedia communication library written in C. In 2.16 and earlier, there is a buffer overflow when decoding Opus audio frames due to insufficient buffer size validation in the Opus codec decode path. The FEC decode buffers (dec_frame[].buf) were allocated based on a PCM-derived formula: (sample_rate/1000) * 60 * channel_cnt * 2. At 8 kHz mono this yields only 960 bytes, but codec_parse() can output encoded frames up to MAX_ENCODED_PACKET_SIZE (1280) bytes via opus_repacketizer_out_range(). The three pj_memcpy() calls in codec_decode() copied input->size bytes without bounds checking, causing a heap buffer overflow.
CVSS vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H
Attack vector
Network
Complexity
Low
Privileges
None
User interaction
Required
Confidentiality
High
Integrity
High
Availability
High
Scope
Unchanged
Exploitation
Is it being used?
Exploit prediction (EPSS)0.2% · higher than 13% of CVEs
Exploited in the wildNo evidence yet
CISA KEVNot listed
Ransomware campaign useNot known
Affected products
Which versions
PJ
pjproject · pjsip
<= 2.16 · source: vendor
PJ
Pjsip · Pjsip
before 2.17 · source: NVD
Affected product
PJ
pjproject
pjsip
More from pjproject
9.8
CVE-2026-40892
PJSIP: Stack buffer overflow in pjsip_auth_create_digest2()
9.8
CVE-2026-32945
PJSIP is vulnerable to Heap-based Buffer Overflow through DNS parser
9.8
CVE-2026-25994
PJSIP has a heap buffer overflow in ICE with long username
9.8
CVE-2022-39244
Buffer overflow in pjlib scanner and pjmedia
9.1
CVE-2026-57163
PJSIP: Stack overflow parsing a TLS peer certificate's SubjectAltName in GnuTLS backend