Debian DLA-2962-1:pjproject - LTS 安全更新

critical Nessus 插件 ID 159329

简介

远程 Debian 主机上缺少一个或多个与安全性相关的更新。

描述

远程 Debian 9 主机上安装的多个程序包受到 dla-2962 公告中提及的多个漏洞影响。

- PJSIP 是用 C 语言编写的免费开源多媒体通信库,实现基于标准的协议,例如 SIP、SDP、RTP、STUN、TURN 和 ICE。在 PJSIP 2.11.1 之前版本的 SSL 套接字中发现一些问题。首先,callback 和 destroy 之间存在争用条件,这是因为已接受的套接字不含组锁所致。第二,SSL 套接字父级/监听器可能会在握手期间遭到破坏。据报告,这两个问题在重负载 TLS 连接中间歇性发生。它们会造成崩溃,从而导致拒绝服务。这些问题已在版本 2.11.1 中得到修复。(CVE-2021-32686)

- PJSIP 是用 C 语言编写的免费开源多媒体通信库,实现基于标准的协议,例如 SIP、SDP、RTP、STUN、TURN 和 ICE。在受影响版本中,如果传入的 STUN 消息包含 ERROR-CODE 属性,则在执行减法操作前不会检查标头长度,继而有可能导致整数下溢情形。此问题会影响所有使用 STUN 的用户。位于受害者网络内的恶意执行者可能会伪造并发送特别构建的 UDP (STUN) 消息,继而可能在受害者的计算机上远程执行任意代码。建议用户尽快升级。没有已知的变通方案。(CVE-2021-37706)

- PJSIP 是用 C 语言编写的免费开源多媒体通信库,实现基于标准的协议,例如 SIP、SDP、RTP、STUN、TURN 和 ICE。在 PJSIP 的各个部分中,当发生错误/失败时,函数未释放当前持有的锁便已经返回。
这可导致系统死锁,进而造成用户拒绝服务。尚未发布包含所链接修复提交的版本。包括 2.11.1 之前的所有版本都会受到影响。用户可能需要手动应用补丁。(CVE-2021-41141)

- 调用 pjsua_player_create 时,PJSUA API 中发生堆栈溢出问题。攻击者控制的“filename”参数可能会造成缓冲区溢出漏洞,原因是该参数在未经验证大小的情况下,便被复制到固定大小的堆栈缓冲区。
(CVE-2021-43299)

- 调用 pjsua_recorder_create 时,PJSUA API 中发生堆栈溢出问题。攻击者控制的“filename”参数可能会造成缓冲区溢出漏洞,原因是该参数在未经验证大小的情况下,便被复制到固定大小的堆栈缓冲区。
(CVE-2021-43300)

- 调用 pjsua_playlist_create 时,PJSUA API 中发生堆栈溢出问题。攻击者控制的“file_names”参数可能会造成缓冲区溢出漏洞,原因是该参数在未经验证大小的情况下,便被复制到固定大小的堆栈缓冲区。(CVE-2021-43301)

- 调用 pjsua_recorder_create 时,PJSUA API 中发生读取越界问题。当文件名短于 4 个字符时,攻击者控制的“filename”参数可能导致越界读取。(CVE-2021-43302)

- 调用 pjsua_call_dump 时,PJSUA API 中发生缓冲区溢出问题。攻击者控制的“buffer”参数可能导致缓冲区溢出,原因是提供小于 128 个字符的输出缓冲区可能会造成输出缓冲区溢出问题,无论提供的“maxlen”参数为何 (CVE-2021-43303)

- PJSIP 是用 C 语言编写的免费开源多媒体通信库,实现基于标准的协议,例如 SIP、SDP、RTP、STUN、TURN 和 ICE。在受影响版本中,如果传入的 RTCP BYE 消息包含原因长度,则不会针对实际接收到的数据包大小检查此声明长度,从而可能导致越界读取访问问题。此问题会影响所有使用 PJMEDIA 和 RTCP 的用户。恶意执行者可发送包含无效原因长度的 RTCP BYE 消息。
建议用户尽快升级。没有已知的变通方案。(CVE-2021-43804)

- PJSIP 是一个免费开源多媒体通信库。在 2.11.1 及之前版本中,如果传入的 RTCP XR 消息包含区块,则不会针对接收到的数据包大小检查数据字段,继而有可能导致越界读取访问问题。此问题会影响所有使用 PJMEDIA 和 RTCP 的用户。恶意执行者可发送包含无效数据包大小的 RTCP XR 消息。(CVE-2021-43845)

- PJSIP 是用 C 语言编写的免费开源多媒体通信库,实现基于标准的协议,例如 SIP、SDP、RTP、STUN、TURN 和 ICE。在 2.11.1 版及之前版本中,某些传入的 RTP/RTCP 数据包可能会在多种情况下造成越界读取访问问题。此问题会影响所有使用 PJMEDIA 和接受传入 RTP/RTCP 的用户。可以在 `master` 分支中提交补丁。没有已知的变通方案。(CVE-2022-21722)

- PJSIP 是用 C 语言编写的免费开源多媒体通信库,实现基于标准的协议,例如 SIP、SDP、RTP、STUN、TURN 和 ICE。在 2.11.1 及之前版本中,解析包含畸形分段的传入 SIP 消息可能会造成越界读取访问问题。此问题影响接受 SIP 分段的所有 PJSIP 用户。可以在 `master` 分支中提交补丁。没有已知的变通方案。(CVE-2022-21723)

- PJSIP 是用 C 语言编写的免费开源多媒体通信库,实现基于标准的协议,例如 SIP、SDP、RTP、STUN、TURN 和 ICE。在 2.11.1 及之前版本中,当处于对话集(或分支)情况下,由多个 UAC 对话共享的哈希密钥可能会因其中一个对话遭到破坏而被过早释放。该问题可能导致在哈希表中多次注册对话框集(使用不同的哈希密钥),从而导致未定义的行为,例如最终将导致死循环的对话框列表冲突。db3235953baa56d2fb0e276ca510fefca751643f 提交中包含一个将在下个版本中引入的补丁。目前尚无针对此问题的解决方案。(CVE-2022-23608)

- PJSIP 是一个以 C 语言编写的免费开源多媒体通信库。PJSIP 2.12 及之前版本中存在一个堆栈缓冲区溢出漏洞,但此漏洞仅会影响接受哈希摘要凭据(具有 data_type `PJSIP_CRED_DATA_DIGEST`)的 PJSIP 用户。此问题已在 PJSIP 存储库的主分支中进行修补,并将包含在下个版本中。
无法升级的用户需要先检查哈希摘要数据长度是否必须等于“PJSIP_MD5STRLEN”,然后再将其传递到 PJSIP。(CVE-2022-24754)

- PJSIP 是以 C 语言编写的免费开源多媒体通信库。2.12 及之前版本中包含一个堆栈缓冲区溢出漏洞,该漏洞会影响 PJSUA2 用户或者调用 API `pjmedia_sdp_print()、pjmedia_sdp_media_print()` 的用户。不使用 PJSUA2 且不直接调用 `pjmedia_sdp_print()` 或 `pjmedia_sdp_media_print()` 的应用程序不应受到影响。“pjsip/pjproject”GitHub 存储库的“master”分支上提供补丁。目前没有任何已知的解决方法。
(CVE-2022-24764)

请注意,Nessus 尚未测试这些问题,而是只依靠应用程序自我报告的版本号来判断。

解决方案

升级 pjproject 程序包。

针对 Debian 9 stretch,这些问题已在 2.5.5~dfsg-6+deb9u3 版本中解决。

另见

https://security-tracker.debian.org/tracker/source-package/pjproject

https://www.debian.org/lts/security/2022/dla-2962

https://security-tracker.debian.org/tracker/CVE-2021-32686

https://security-tracker.debian.org/tracker/CVE-2021-37706

https://security-tracker.debian.org/tracker/CVE-2021-41141

https://security-tracker.debian.org/tracker/CVE-2021-43299

https://security-tracker.debian.org/tracker/CVE-2021-43300

https://security-tracker.debian.org/tracker/CVE-2021-43301

https://security-tracker.debian.org/tracker/CVE-2021-43302

https://security-tracker.debian.org/tracker/CVE-2021-43303

https://security-tracker.debian.org/tracker/CVE-2021-43804

https://security-tracker.debian.org/tracker/CVE-2021-43845

https://security-tracker.debian.org/tracker/CVE-2022-21722

https://security-tracker.debian.org/tracker/CVE-2022-21723

https://security-tracker.debian.org/tracker/CVE-2022-23608

https://security-tracker.debian.org/tracker/CVE-2022-24754

https://security-tracker.debian.org/tracker/CVE-2022-24764

https://packages.debian.org/source/stretch/pjproject

插件详情

严重性: Critical

ID: 159329

文件名: debian_DLA-2962.nasl

版本: 1.2

类型: local

代理: unix

发布时间: 2022/3/30

最近更新时间: 2022/3/30

支持的传感器: Frictionless Assessment Agent, Nessus Agent

风险信息

VPR

风险因素: Medium

分数: 6.7

CVSS v2

风险因素: High

基本分数: 9.3

时间分数: 6.9

矢量: AV:N/AC:M/Au:N/C:C/I:C/A:C

时间矢量: E:U/RL:OF/RC:C

CVSS 分数来源: CVE-2021-37706

CVSS v3

风险因素: Critical

基本分数: 9.8

时间分数: 8.5

矢量: CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H

时间矢量: E:U/RL:O/RC:C

漏洞信息

CPE: p-cpe:/a:debian:debian_linux:libpj2, p-cpe:/a:debian:debian_linux:libpjlib-util2, p-cpe:/a:debian:debian_linux:libpjmedia-audiodev2, p-cpe:/a:debian:debian_linux:libpjmedia-codec2, p-cpe:/a:debian:debian_linux:libpjmedia-videodev2, p-cpe:/a:debian:debian_linux:libpjmedia2, p-cpe:/a:debian:debian_linux:libpjnath2, p-cpe:/a:debian:debian_linux:libpjproject-dev, p-cpe:/a:debian:debian_linux:libpjsip-simple2, p-cpe:/a:debian:debian_linux:libpjsip-ua2, p-cpe:/a:debian:debian_linux:libpjsip2, p-cpe:/a:debian:debian_linux:libpjsua2, p-cpe:/a:debian:debian_linux:libpjsua2-2v5, p-cpe:/a:debian:debian_linux:python-pjproject, cpe:/o:debian:debian_linux:9.0

必需的 KB 项: Host/local_checks_enabled, Host/Debian/release, Host/Debian/dpkg-l

易利用性: No known exploits are available

补丁发布日期: 2022/3/28

漏洞发布日期: 2021/7/23

参考资料信息

CVE: CVE-2021-32686, CVE-2021-37706, CVE-2021-41141, CVE-2021-43299, CVE-2021-43300, CVE-2021-43301, CVE-2021-43302, CVE-2021-43303, CVE-2021-43804, CVE-2021-43845, CVE-2022-21722, CVE-2022-21723, CVE-2022-23608, CVE-2022-24754, CVE-2022-24764