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

目标: 1000 元 · 已筹: 1310

100%

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

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

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

MITRE CWE 官方描述
CWE:CWE-122 基于堆的缓冲区溢出(Heap-based Buffer Overflow) 英文:堆溢出(Heap overflow)条件是一种缓冲区溢出(Buffer overflow),其中可被覆盖的缓冲区(Buffer)是在内存的堆(Heap)部分分配的,通常意味着该缓冲区是使用 malloc() 等例程分配的。
常见影响 (3)
AvailabilityDoS: 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 ControlExecute 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, OtherExecute 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 DesignUse an abstraction library to abstract away risky APIs. Not a complete solution.
Operation, Build and CompilationUse 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 CompilationRun 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
ImplementationImplement 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-2018-8797 rdesktop 缓冲区错误漏洞 — rdesktop 9.8 -2019-02-05
CVE-2018-8800 rdesktop 缓冲区错误漏洞 — rdesktop 9.8 -2019-02-05
CVE-2018-18981 Rockwell Automation FactoryTalk Services Platform 安全漏洞 — Rockwell Automation FactoryTalk Services Platform v2.90 and earlier 7.5 -2019-01-24
CVE-2018-6345 Facebook HHVM 缓冲区错误漏洞 — HHVM 9.1 -2019-01-15
CVE-2018-6344 Facebook WhatsApp 缓冲区错误漏洞 — WhatsApp for Android 7.5 -2018-12-31
CVE-2018-11457 多款Siemens产品缓冲区错误漏洞 — SINUMERIK 828D V4.7, SINUMERIK 840D sl V4.7, SINUMERIK 840D sl V4.8 8.1 -2018-12-12
CVE-2016-2123 Samba 缓冲区错误漏洞 — samba 8.8 -2018-11-01
CVE-2018-14653 Red Hat Gluster 缓冲区错误漏洞 — glusterfs 8.8 -2018-10-31
CVE-2017-7908 GE Communicator Gigasoft 缓冲区错误漏洞 — GE Communicator 7.6 -2018-10-02
CVE-2018-14794 Fuji Electric Alpha5 Smart Loader 缓冲区错误漏洞 — Alpha5 Smart Loader 9.8 -2018-10-01
CVE-2018-14813 Fuji Electric V-Server VPR 缓冲区错误漏洞 — V-Server 9.8 -2018-09-26
CVE-2018-10606 WECON LeviStudioU 缓冲区错误漏洞 — LeviStudioU 8.8 -2018-09-26
CVE-2018-14821 Rockwell Automation RSLinx Classic 安全漏洞 — RSLinx Classic 7.5 -2018-09-20
CVE-2018-10893 Red Hat spice-client 安全漏洞 — spice-client 9.8 -2018-09-11
CVE-2016-8654 JasPer JPC codec 缓冲区错误漏洞 — jasper 7.8 -2018-08-01
CVE-2018-14290 Foxit Reader和PhantomPDF 缓冲区错误漏洞 — Foxit Reader 8.8 -2018-07-31
CVE-2016-9603 QEMU 缓冲区错误漏洞 — Qemu: 9.9 -2018-07-27
CVE-2018-1056 advancecomp 缓冲区错误漏洞 — advancecomp: 7.8 -2018-07-27
CVE-2018-3857 ACD Systems Canvas Draw 缓冲区错误漏洞 — Canvas Draw 7.8 -2018-07-19
CVE-2018-3858 ACD Systems Canvas Draw 缓冲区错误漏洞 — Canvas Draw 7.8 -2018-07-19
CVE-2018-10840 Linux kernel 缓冲区错误漏洞 — heap-based buffer overflow in fs/ext4/xattr.c 7.8 -2018-07-16
CVE-2018-1120 Linux kernel 缓冲区错误漏洞 — kernel 6.3 -2018-06-20
CVE-2018-10617 Delta Industrial Automation DOPSoft 缓冲区错误漏洞 — Delta Industrial Automation DOPSoft 9.8 -2018-06-18
CVE-2018-4833 多款Siemens产品输入验证错误漏洞 — RFID 181EIP 8.8 -2018-06-14
CVE-2018-8871 Delta Electronics Automation TPEditor 缓冲区错误漏洞 — Automation TPEditor 9.8 -2018-05-25
CVE-2018-1123 procps-ng 安全漏洞 — procps-ng, procps 7.5 -2018-05-23
CVE-2018-10488 Foxit Reader 缓冲区错误漏洞 — Foxit Reader 8.8 -2018-05-17
CVE-2018-9947 Foxit Reader 安全漏洞 — Foxit Reader 8.8 -2018-05-17
CVE-2018-9949 Foxit Reader 缓冲区错误漏洞 — Foxit Reader 8.8 -2018-05-17
CVE-2018-9974 Foxit Reader 缓冲区错误漏洞 — Foxit Reader 8.8 -2018-05-17

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