CVE-2022-39269
Critical · 9.1CVSS
9.1
EPSS
0.7%
Published
Oct 6, 2022
CISA due date
—
Cloudanix analysis
A communication library can accidentally stop encrypting calls and start sending audio or video in the open, letting outsiders listen in.
- Exploitation
- Remote Unauthenticated
- Attacker needs
- None
- Complexity
- Low
- Impact
- Data Exposure
- Component
- Library
- Class
- Cryptographic Weakness
- Remediation
- Upgrade
- Effort
- Medium
- Patch risk
- Low
What it actually does
The flaw causes PJSIP to incorrectly downgrade from SRTP media transport to plaintext RTP upon SRTP restart triggered by certain packets, exposing media streams.
Why it matters to the business
Encrypted voice and video sessions can be intercepted or altered in transit, resulting in loss of confidentiality for communications in any systems relying on SRTP with this library.
How an attack unfolds
An attacker sends crafted packets that induce an SRTP restart condition, forcing the library to switch transports and transmit media without encryption that can then be captured on the network.
How to fix it
Upgrade pjsip/pjproject to commit 43c745789d291496fe1c3ed8a2c0dd6305260b32 (version 2.13) or ghantoos/lshell to commit a686f71732a3d0f16df52ef46ab8a49ee0083c68. No workarounds exist.
How to confirm the fix worked
Confirm the installed commit or version matches the fixed references and verify through testing that SRTP sessions maintain encryption across restart conditions.
Typical attack path
- Identify targets using PJSIP with SRTP enabled
- Transmit specially formed packets to trigger SRTP restart
- Observe downgrade to RTP transport
- Capture plaintext media streams for eavesdropping or tampering
How to detect it
Review application and media transport logs for unexpected switches from SRTP to RTP during active sessions; correlate with network captures showing unencrypted media.
What your security team should do
- Apply the listed commits or version upgrades immediately on all affected PJSIP deployments
- Audit applications for SRTP usage and enforce transport verification
- Monitor network traffic for unexpected plaintext RTP flows from SRTP endpoints
The record
PJSIP is a free and open source multimedia communication library written in C. When processing certain packets, PJSIP may incorrectly switch from using SRTP media transport to using basic RTP upon SRTP restart, causing the media to be sent insecurely. The vulnerability impacts all PJSIP users that use SRTP. The patch is available as commit d2acb9a in the master branch of the project and will be included in version 2.13. Users are advised to manually patch or to upgrade. There are no known workarounds for this vulnerability.
Affected packages
| Ecosystem | Package | Introduced | Fixed |
|---|---|---|---|
| Alpine:v3.18 | pjproject | 0 | 2.13-r0 |
| Alpine:v3.19 | pjproject | 0 | 2.13-r0 |
| Alpine:v3.20 | pjproject | 0 | 2.13-r0 |
| Alpine:v3.21 | pjproject | 0 | 2.13-r0 |
| Alpine:v3.22 | pjproject | 0 | 2.13-r0 |
| Debian:10 | asterisk | 0 | 1:16.28.0~dfsg-0+deb10u2 |
| Debian:11 | asterisk | 0 | 1:16.28.0~dfsg-0+deb11u2 |
| Debian:12 | ring | 0 | 20230206.0~ds1-1 |
| Ubuntu:16.04:LTS | pjproject | 0 | No fix |
| Ubuntu:18.04:LTS | asterisk | 0 | No fix |
| Ubuntu:18.04:LTS | pjproject | 0 | No fix |
| Ubuntu:20.04:LTS | asterisk | 0 | No fix |
| Ubuntu:20.04:LTS | ring | 0 | No fix |
| Ubuntu:22.04:LTS | asterisk | 0 | No fix |
| Ubuntu:24.04:LTS | asterisk | 0 | No fix |
| Ubuntu:24.10 | asterisk | 0 | No fix |
| Ubuntu:25.04 | asterisk | 0 | No fix |
| Ubuntu:25.10 | asterisk | 0 | No fix |
| Ubuntu:Pro:16.04:LTS | asterisk | 0 | No fix |
| Ubuntu:Pro:16.04:LTS | pjproject | 0 | No fix |
| Ubuntu:Pro:18.04:LTS | asterisk | 0 | No fix |
| Ubuntu:Pro:18.04:LTS | pjproject | 0 | No fix |
| Ubuntu:Pro:18.04:LTS | ring | 0 | No fix |
| Ubuntu:Pro:20.04:LTS | asterisk | 0 | No fix |
| Ubuntu:Pro:20.04:LTS | ring | 0 | No fix |
Related vulnerabilities
- CVE-2022-24763 PJSIP is a free and open source multimedia communication library written in the C… Also affects pjproject
- CVE-2008-7220 Unspecified vulnerability in Prototype JavaScript framework (prototypejs) before 1.6.0.2… Also affects asterisk
- CVE-2008-1289 Multiple buffer overflows in Asterisk Open Source 1.4.x before 1.4.18.1 and 1.4.19-rc3… Also affects asterisk
- CVE-2008-0095 The SIP channel driver in Asterisk Open Source 1.4.x before 1.4.17, Business Edition… Also affects asterisk
- CVE-2007-2293 Multiple stack-based buffer overflows in the process_sdp function in chan_sip.c of the… Also affects asterisk
- CVE-2007-1561 The channel driver in Asterisk before 1.2.17 and 1.4.x before 1.4.2 allows remote… Also affects asterisk
- CVE-2007-1306 Asterisk 1.4 before 1.4.1 and 1.2 before 1.2.16 allows remote attackers to cause a denial… Also affects asterisk
- CVE-2006-5444 Integer overflow in the get_input function in the Skinny channel driver (chan_skinny.c)… Also affects asterisk