目标达成 感谢每一位支持者 — 我们达成了 100% 目标!

目标: 1000 元 · 已筹: 1336

100%

CWE-122 堆缓冲区溢出 类漏洞列表 2701

CWE-122 堆缓冲区溢出 类弱点 2701 条 CVE 漏洞汇总,含 AI 中文分析。

CWE-122 堆缓冲区溢出属于内存安全漏洞,指写入数据超出在堆内存(如通过 malloc 分配)中分配的缓冲区边界。攻击者利用此漏洞可覆盖相邻内存数据,导致程序崩溃或执行任意代码,从而获取系统控制权。开发者应避免此类风险,需严格验证输入长度,确保写入操作不超出缓冲区上限,并使用现代安全语言或库来自动管理内存边界。

MITRE CWE 官方描述
CWE:CWE-122 基于堆的缓冲区溢出(Heap-based Buffer Overflow) 英文:堆溢出(Heap overflow)条件是一种缓冲区溢出(Buffer overflow),其中可被覆盖的缓冲区(Buffer)是在内存的堆(Heap)部分分配的,通常意味着该缓冲区是使用 malloc() 等例程分配的。
常见影响 (3)
Availability DoS: Crash, Exit, or Restart, DoS: Resource Consumption (CPU), DoS: Resource Consumption (Memory)
Buffer overflows generally lead to crashes. Other attacks leading to lack of availability are possible, including putting the program into an infinite loop.
Integrity, Confidentiality, Availability, Access Control Execute Unauthorized Code or Commands, Bypass Protection Mechanism, Modify Memory
Buffer overflows often can be used to execute arbitrary code, which is usually outside the scope of a program's implicit security policy. Besides important user data, heap-based overflows can be used to overwrite function pointers that may be living in memory, pointing it to the attacker's code. Eve…
Integrity, Confidentiality, Availability, Access Control, Other Execute Unauthorized Code or Commands, Bypass Protection Mechanism, Other
When the consequence is arbitrary code execution, this can often be used to subvert any other security service.
缓解措施 (5)
Pre-design: Use a language or compiler that performs automatic bounds checking.
Architecture and Design Use an abstraction library to abstract away risky APIs. Not a complete solution.
Operation, Build and Compilation Use automatic buffer overflow detection mechanisms that are offered by certain compilers or compiler extensions. Examples include: the Microsoft Visual Studio /GS flag, Fedora/Red Hat FORTIFY_SOURCE GCC flag, StackGuard, and ProPolice, which provide various mechanisms including canary-based detection and range/index checking. D3-SFCV (Stack Frame Canary Validation) from D3FEND [REF-1334] discusses…
Effectiveness: Defense in Depth
Operation, Build and Compilation Run or compile the software using features or extensions that randomly arrange the positions of a program's executable and libraries in memory. Because this makes the addresses unpredictable, it can prevent an attacker from reliably jumping to exploitable code. Examples include Address Space Layout Randomization (ASLR) [REF-58] [REF-60] and Position-Independent Executables (PIE) [REF-64]. Imported…
Effectiveness: Defense in Depth
Implementation Implement and perform bounds checking on input.
代码示例 (2)
While buffer overflow examples can be rather complex, it is possible to have very simple, yet still exploitable, heap-based buffer overflows:
#define BUFSIZE 256 int main(int argc, char **argv) { char *buf; buf = (char *)malloc(sizeof(char)*BUFSIZE); strcpy(buf, argv[1]); }
Bad · C
This example applies an encoding procedure to an input string and stores it into a buffer.
char * copy_input(char *user_supplied_string){ int i, dst_index; char *dst_buf = (char*)malloc(4*sizeof(char) * MAX_SIZE); if ( MAX_SIZE <= strlen(user_supplied_string) ){ die("user string too long, die evil hacker!"); } dst_index = 0; for ( i = 0; i < strlen(user_supplied_string); i++ ){ if( '&' == user_supplied_string[i] ){ dst_buf[dst_index++] = '&'; dst_buf[dst_index++] = 'a'; dst_buf[dst_index++] = 'm'; dst_buf[dst_index++] = 'p'; dst_buf[dst_index++] = ';'; } else if ('<' == user_supplied_string[i] ){ /* encode to &lt; */ } else dst_buf[dst_index++] = user_supplied_string[i]; } return ds
Bad · C
CVE ID 标题 CVSS 风险等级 Published
CVE-2021-43305 Yandex ClickHouse 缓冲区错误漏洞 — clickhouse 8.8 - 2022-03-14
CVE-2022-0943 Vim 缓冲区错误漏洞 — vim/vim 7.8 - 2022-03-14
CVE-2022-24096 Adobe After Effects 缓冲区错误漏洞 — After Effects 7.8 High 2022-03-11
CVE-2021-42018 Siemens RUGGEDCOM 缓冲区错误漏洞 — RUGGEDCOM i800 5.9 Medium 2022-03-08
CVE-2022-0713 radare2 缓冲区错误漏洞 — radareorg/radare2 7.1 - 2022-02-22
CVE-2022-0676 radare2 缓冲区错误漏洞 — radareorg/radare2 7.1 - 2022-02-22
CVE-2022-0714 Vim 缓冲区错误漏洞 — vim/vim 7.8 - 2022-02-22
CVE-2022-24052 MariaDB 输入验证错误漏洞 — MariaDB 7.8 - 2022-02-18
CVE-2021-46653 Bentley Systems Bentley View 安全漏洞 — View 7.8 - 2022-02-18
CVE-2021-46648 Bentley Systems MicroStation 安全漏洞 — MicroStation CONNECT 7.8 - 2022-02-18
CVE-2021-46647 Bentley Systems MicroStation 安全漏洞 — MicroStation CONNECT 7.8 - 2022-02-18
CVE-2021-46606 Bentley Systems MicroStation 安全漏洞 — MicroStation CONNECT 7.8 - 2022-02-18
CVE-2021-46605 Bentley Systems MicroStation 安全漏洞 — MicroStation CONNECT 7.8 - 2022-02-18
CVE-2021-46603 Bentley Systems MicroStation 安全漏洞 — MicroStation CONNECT 7.8 - 2022-02-18
CVE-2021-46577 Bentley Systems MicroStation 安全漏洞 — MicroStation CONNECT 7.8 - 2022-02-18
CVE-2022-0631 mruby 安全漏洞 — mruby/mruby 7.8 - 2022-02-18
CVE-2021-21958 Hancom Office 缓冲区错误漏洞 — Hancom 7.8 - 2022-02-16
CVE-2022-0570 mruby 安全漏洞 — mruby/mruby 7.8 - 2022-02-13
CVE-2022-0572 Vim 缓冲区错误漏洞 — vim/vim 7.8 - 2022-02-13
CVE-2021-44000 多款Siemens产品缓冲区错误漏洞 — JT2Go 7.8 - 2022-02-09
CVE-2022-0518 radare2 缓冲区错误漏洞 — radareorg/radare2 7.1 - 2022-02-08
CVE-2021-3861 Zephyr 缓冲区错误漏洞 — zephyr 8.2 High 2022-02-07
CVE-2021-3835 Zephyr 缓冲区错误漏洞 — zephyr 8.2 High 2022-02-07
CVE-2021-21962 Sealevel Systems SeaConnect 370W 缓冲区错误漏洞 — Sealevel 8.1 - 2022-02-04
CVE-2022-0417 vim 缓冲区错误漏洞 — vim/vim 7.8 - 2022-02-01
CVE-2022-0407 vim 缓冲区错误漏洞 — vim/vim 7.8 - 2022-01-30
CVE-2022-0392 vim 缓冲区错误漏洞 — vim/vim 7.8 - 2022-01-28
CVE-2022-0359 vim 安全漏洞 — vim/vim 7.8 - 2022-01-26
CVE-2022-0361 vim 安全漏洞 — vim/vim 7.8 - 2022-01-26
CVE-2022-0318 Vim 缓冲区错误漏洞 — vim/vim 7.8 - 2022-01-21

CWE-122(堆缓冲区溢出) 是常见的弱点类别,本平台收录该类弱点关联的 2701 条 CVE 漏洞。