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

目标: 1000 元 · 已筹: 1336

100%

CWE-476 空指针解引用 类漏洞列表 1388

CWE-476 空指针解引用 类弱点 1388 条 CVE 漏洞汇总,含 AI 中文分析。

CWE-476空指针解引用属于内存安全类漏洞,指程序在指针为NULL时仍尝试访问其指向的内存。攻击者通常通过构造特定输入触发空指针,导致程序崩溃引发拒绝服务,或在特定架构下利用该异常改变执行流以执行恶意代码。开发者应避免在解引用前未验证指针有效性,通过添加空值检查、使用静态分析工具检测潜在风险,并确保代码逻辑能妥善处理无效指针情况,从而从根本上消除隐患。

MITRE CWE 官方描述
CWE:CWE-476 NULL Pointer Dereference(空指针解引用) 英文:The product dereferences a pointer that it expects to be valid but is NULL. 译文:产品解引用了一个它预期为有效但实际上为 NULL 的指针。
常见影响 (2)
Availability DoS: Crash, Exit, or Restart
NULL pointer dereferences usually result in the failure of the process unless exception handling (on some platforms) is available and implemented. Even when exception handling is being used, it can still be very difficult to return the software to a safe state of operation.
Integrity, Confidentiality Execute Unauthorized Code or Commands, Read Memory, Modify Memory
In rare circumstances, when NULL is equivalent to the 0x0 memory address and privileged code can access it, then writing or reading memory is possible, which may lead to code execution.
缓解措施 (5)
Implementation For any pointers that could have been modified or provided from a function that can return NULL, check the pointer for NULL before use. When working with a multithreaded or otherwise asynchronous environment, ensure that proper locking APIs are used to lock before the check, and unlock when it has finished [REF-1484].
Requirements Select a programming language that is not susceptible to these issues.
Implementation Check the results of all functions that return a value and verify that the value is non-null before acting upon it.
Effectiveness: Moderate
Architecture and Design Identify all variables and data stores that receive information from external sources, and apply input validation to make sure that they are only initialized to expected values.
Implementation Explicitly initialize all variables and other data stores, either during declaration or just before the first usage.
代码示例 (2)
This example takes an IP address from a user, verifies that it is well formed and then looks up the hostname and copies it into a buffer.
void host_lookup(char *user_supplied_addr){ struct hostent *hp; in_addr_t *addr; char hostname[64]; in_addr_t inet_addr(const char *cp); /*routine that ensures user_supplied_addr is in the right format for conversion */ validate_addr_form(user_supplied_addr); addr = inet_addr(user_supplied_addr); hp = gethostbyaddr( addr, sizeof(struct in_addr), AF_INET); strcpy(hostname, hp->h_name); }
Bad · C
In the following code, the programmer assumes that the system always has a property named "cmd" defined. If an attacker can control the program's environment so that "cmd" is not defined, the program throws a NULL pointer exception when it attempts to call the trim() method.
String cmd = System.getProperty("cmd"); cmd = cmd.trim();
Bad · Java
CVE ID 标题 CVSS 风险等级 Published
CVE-2020-15209 Google TensorFlow 代码问题漏洞 — tensorflow 5.9 Medium 2020-09-25
CVE-2020-3407 Cisco IOS XE 代码问题漏洞 — Cisco IOS XE Software 8.6 - 2020-09-24
CVE-2020-3552 Cisco Aironet Access Points 代码问题漏洞 — Cisco Aironet Access Point Software 7.4 - 2020-09-24
CVE-2020-3517 Cisco FXOS Software和Cisco NX-OS Software 代码问题漏洞 — Cisco NX-OS Software 8.6 - 2020-08-27
CVE-2020-5762 Grandstream HT800 series 代码问题漏洞 — Grandstream HT800 Series 7.5 - 2020-07-29
CVE-2020-10600 OSIsoft PI Data Archive 代码问题漏洞 — PI Data Archive 5.9 Medium 2020-07-24
CVE-2020-10602 OSIsoft PI Data Archive 代码问题漏洞 — OSIsoft PI System multiple products and versions 5.3 - 2020-07-24
CVE-2020-3481 Clam AntiVirus 代码问题漏洞 — ClamAV 7.5 High 2020-07-20
CVE-2020-10739 Istio 代码问题漏洞 — istio/envoy 7.5 High 2020-06-02
CVE-2020-10703 Red Hat libvirt 代码问题漏洞 — libvirt 6.5 Medium 2020-06-02
CVE-2020-10711 Linux kernel 代码问题漏洞 — Kernel 5.9 Medium 2020-05-22
CVE-2020-1995 Palo Alto Networks PAN-OS 代码问题漏洞 — PAN-OS 4.9 Medium 2020-05-13
CVE-2020-1730 libssh 代码问题漏洞 — libssh 5.3 Medium 2020-04-13
CVE-2020-5736 Amcrest cameras和NVR 代码问题漏洞 — Amcrest 6.5 - 2020-04-08
CVE-2020-8859 ELOG Electronic Logbook 代码问题漏洞 — Electronic Logbook 7.5 - 2020-03-23
CVE-2019-14876 Red Hat newlib libc library 代码问题漏洞 — newlib 6.5 - 2020-03-19
CVE-2019-14875 Red Hat newlib libc library 代码问题漏洞 — newlib 6.5 - 2020-03-19
CVE-2019-14874 Red Hat newlib libc library 代码问题漏洞 — newlib 6.5 - 2020-03-19
CVE-2019-14878 Red Hat newlib libc library 代码问题漏洞 — newlib 6.5 - 2020-03-19
CVE-2019-14877 Red Hat newlib libc library 代码问题漏洞 — newlib 6.5 - 2020-03-19
CVE-2019-14873 Red Hat newlib libc library 代码问题漏洞 — newlib 6.5 - 2020-03-19
CVE-2019-14872 Red Hat newlib libc library 代码问题漏洞 — newlib 6.5 - 2020-03-19
CVE-2019-14871 Red Hat Newlib 代码问题漏洞 — newlib 6.5 - 2020-03-18
CVE-2020-7062 PHP 代码问题漏洞 — PHP 7.5 High 2020-02-27
CVE-2019-3995 ELOG 代码问题漏洞 — ELOG 7.5 - 2019-12-17
CVE-2019-10207 Linux kernel 安全漏洞 — kernel 5.5 - 2019-11-25
CVE-2019-14847 Samba 代码问题漏洞 — samba 6.5 - 2019-11-06
CVE-2019-5010 Python X509证书解析器代码问题漏洞 — Python 7.5 - 2019-10-31
CVE-2019-15680 TightVNC 代码问题漏洞 — TightVNC 7.5 - 2019-10-29
CVE-2019-12654 Cisco IOS和IOS XE 代码问题漏洞 — Cisco IOS 15.0(1)XA2 7.5 - 2019-09-25

CWE-476(空指针解引用) 是常见的弱点类别,本平台收录该类弱点关联的 1388 条 CVE 漏洞。