Researchers from JFrog’s Security Research team discovered five vulnerabilities in the popular PJSIP open-source multimedia communication library.
PJSIP is a communication library written in C language implementing standard-based protocols such as SIP, SDP, RTP, STUN, TURN, and ICE. It combines signaling protocol (SIP) with rich multimedia framework and NAT traversal functionality into high level API that is portable and suitable for almost any type of systems ranging from desktops, embedded systems, to mobile handsets.
PJSIP supports audio, video, presence, and instant messaging, the APT supplied by the library can be used by IP telephony applications, including VoIP devices.
Many popular communication applications use the library, including WhatsApp, BlueJeans and Asterisk.
An attacker can exploit the flaws to gain arbitrary code execution on devices running applications using the vulnerable library or to trigger a denial-of-service (DoS) condition.
Below is the list of the flaws discovered in the PJSIP library:
|CVE ID||Description||Impact||JFrog CVSS|
|CVE-2021-43299||Stack overflow in PJSUA API when calling pjsua_player_create||Code Execution||8.1|
|CVE-2021-43300||Stack overflow in PJSUA API when calling pjsua_recorder_create||Code Execution||8.1|
|CVE-2021-43301||Stack overflow in PJSUA API when calling pjsua_playlist_create||Code Execution||8.1|
|CVE-2021-43302||Read out-of-bounds in PJSUA API when calling pjsua_recorder_create||Denial of Service||5.9|
|CVE-2021-43303||Buffer overflow in PJSUA API when calling pjsua_call_dump||Denial of Service||5.9|
Maintainers for the library addressed them with the release of version 2.12 on February 24, 2022.
“Buffers used in PJSIP typically have limited sizes, especially the ones allocated in the stack or supplied by the application, however in several places, we do not check if our usage can exceed the sizes.” wrote PJSIP’s developer Sauw Ming.
(SecurityAffairs – hacking, open-source library)