漏洞标题
Abseil中的堆缓冲区溢出漏洞
漏洞描述信息
## 漏洞概述
Abseil-cpp 中存在一个堆缓冲区溢出漏洞。`absl::{flat,node}hash{set,map}` 的有大小参数的构造函数、`reserve()` 方法和 `rehash()` 方法没有对大小参数施加上限。这可能导致调用者传递一个非常大的大小值,计算容器后备存储的大小时发生整数溢出,从而导致越界内存写入。之后对容器的访问也可能访问越界内存。
## 影响版本
未明确指定受影响的版本,但建议升级到 commit 5a0e2cb5e3958dd90bb8569a2766622cb74d90c1 之后的版本。
## 细节
- 漏洞存在于 `absl::{flat,node}hash{set,map}` 类的以下方法中:
- 有大小参数的构造函数
- `reserve()` 方法
- `rehash()` 方法
- 这些方法没有正确地限制内存分配的大小,可能引发整数溢出。
- 调用者传递的非常大的大小值可能导致容器的后备存储内存分配大小计算错误,从而导致堆缓冲区溢出。
## 影响
- 可导致越界内存写入。
- 之后对容器的访问可能导致越界内存访问。
- 建议升级到具体 commit 之后的版本以解决此漏洞。
CVSS信息
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
漏洞类别
跨界内存写
漏洞标题
Heap Buffer overflow in Abseil
漏洞描述信息
There exists a heap buffer overflow vulnerable in Abseil-cpp. The sized constructors, reserve(), and rehash() methods of absl::{flat,node}hash{set,map} did not impose an upper bound on their size argument. As a result, it was possible for a caller to pass a very large size that would cause an integer overflow when computing the size of the container's backing store, and a subsequent out-of-bounds memory write. Subsequent accesses to the container might also access out-of-bounds memory. We recommend upgrading past commit 5a0e2cb5e3958dd90bb8569a2766622cb74d90c1
CVSS信息
N/A
漏洞类别
整数溢出或超界折返
漏洞标题
Abseil 安全漏洞
漏洞描述信息
Abseil是Abseil开源的一个 Abseil 通用库(C++)。 Abseil存在安全漏洞,该漏洞源于absl::{flat,node}hash{set,map}的大小构造函数、reserve和rehash方法未对其size参数施加上限,导致缓冲区溢出问题。
CVSS信息
N/A
漏洞类别
其他