C 和 C++ 的 CWE 覆盖范围¶
CodeQL 最新版本中针对 C 和 C++ 的 CWE 覆盖范围概述。
概述¶
CWE | 语言 | 查询 ID | 查询名称 |
---|---|---|---|
CWE-14 | C/C++ | cpp/memset-may-be-deleted | 对 memset 的调用可能被删除 |
CWE-20 | C/C++ | cpp/count-untrusted-data-external-api | 使用不可信数据访问外部 API 的频率统计 |
CWE-20 | C/C++ | cpp/count-untrusted-data-external-api-ir | 使用不可信数据访问外部 API 的频率统计 |
CWE-20 | C/C++ | cpp/untrusted-data-to-external-api-ir | 将不可信数据传递给外部 API |
CWE-20 | C/C++ | cpp/untrusted-data-to-external-api | 将不可信数据传递给外部 API |
CWE-20 | C/C++ | cpp/uncontrolled-process-operation | 不受控制的进程操作 |
CWE-20 | C/C++ | cpp/unclear-array-index-validation | 数组索引验证不明确 |
CWE-20 | C/C++ | cpp/uncontrolled-allocation-size | 不受控制的分配大小溢出 |
CWE-20 | C/C++ | cpp/late-check-of-function-argument | 函数参数的延迟检查 |
CWE-20 | C/C++ | cpp/linux-kernel-no-check-before-unsafe-put-user | Linux 内核在使用 unsafe_put_user 之前没有进行检查漏洞检测 |
CWE-22 | C/C++ | cpp/path-injection | 路径表达式中使用不受控制的数据 |
CWE-23 | C/C++ | cpp/path-injection | 路径表达式中使用不受控制的数据 |
CWE-36 | C/C++ | cpp/path-injection | 路径表达式中使用不受控制的数据 |
CWE-73 | C/C++ | cpp/path-injection | 路径表达式中使用不受控制的数据 |
CWE-74 | C/C++ | cpp/non-constant-format | 非恒定格式字符串 |
CWE-74 | C/C++ | cpp/command-line-injection | 在操作系统命令中使用不受控制的数据 |
CWE-74 | C/C++ | cpp/cgi-xss | 易受跨站脚本攻击的 CGI 脚本 |
CWE-74 | C/C++ | cpp/sql-injection | SQL 查询中的不受控制的数据 |
CWE-74 | C/C++ | cpp/tainted-format-string | 不受控制的格式字符串 |
CWE-74 | C/C++ | cpp/wordexp-injection | 在 wordexp 命令中使用不受控制的数据 |
CWE-77 | C/C++ | cpp/command-line-injection | 在操作系统命令中使用不受控制的数据 |
CWE-77 | C/C++ | cpp/wordexp-injection | 在 wordexp 命令中使用不受控制的数据 |
CWE-78 | C/C++ | cpp/command-line-injection | 在操作系统命令中使用不受控制的数据 |
CWE-78 | C/C++ | cpp/wordexp-injection | 在 wordexp 命令中使用不受控制的数据 |
CWE-79 | C/C++ | cpp/cgi-xss | 易受跨站脚本攻击的 CGI 脚本 |
CWE-88 | C/C++ | cpp/command-line-injection | 在操作系统命令中使用不受控制的数据 |
CWE-89 | C/C++ | cpp/sql-injection | SQL 查询中的不受控制的数据 |
CWE-114 | C/C++ | cpp/uncontrolled-process-operation | 不受控制的进程操作 |
CWE-118 | C/C++ | cpp/offset-use-before-range-check | 数组偏移量在范围检查之前使用 |
CWE-118 | C/C++ | cpp/double-free | 潜在的双重释放 |
CWE-118 | C/C++ | cpp/late-negative-test | 指针偏移量在检查之前使用 |
CWE-118 | C/C++ | cpp/missing-negativity-test | 未检查的返回值用作偏移量 |
CWE-118 | C/C++ | cpp/overflow-calculated | 缓冲区不足以容纳字符串 |
CWE-118 | C/C++ | cpp/overflow-destination | 使用源大小的复制函数 |
CWE-118 | C/C++ | cpp/static-buffer-overflow | 静态数组访问可能会导致溢出 |
CWE-118 | C/C++ | cpp/allocation-too-small | 为指针类型分配的内存不足 |
CWE-118 | C/C++ | cpp/suspicious-allocation-size | 为指针类型数组分配的内存不足 |
CWE-118 | C/C++ | cpp/use-after-free | 潜在的释放后使用 |
CWE-118 | C/C++ | cpp/upcast-array-pointer-arithmetic | 向上转换的数组用在指针运算中 |
CWE-118 | C/C++ | cpp/return-stack-allocated-memory | 返回堆栈分配的内存 |
CWE-118 | C/C++ | cpp/bad-strncpy-size | 字符串复制中可能错误的缓冲区大小 |
CWE-118 | C/C++ | cpp/unsafe-strncat | 对 strncat 的潜在不安全调用 |
CWE-118 | C/C++ | cpp/unsafe-strcat | 对 strcat 的潜在不安全使用 |
CWE-118 | C/C++ | cpp/using-expired-stack-address | 使用过期的堆栈地址 |
CWE-118 | C/C++ | cpp/overflow-buffer | 对内存访问函数的调用可能会导致缓冲区溢出 |
CWE-118 | C/C++ | cpp/overrun-write | 溢出写入 |
CWE-118 | C/C++ | cpp/badly-bounded-write | 边界不确定的写入 |
CWE-118 | C/C++ | cpp/overrunning-write | 潜在的溢出写入 |
CWE-118 | C/C++ | cpp/overrunning-write-with-float | 使用浮点数到字符串转换的潜在溢出写入 |
CWE-118 | C/C++ | cpp/unbounded-write | 无边界写入 |
CWE-118 | C/C++ | cpp/very-likely-overrunning-write | 可能发生的溢出写入 |
CWE-118 | C/C++ | cpp/unterminated-variadic-call | 未终止的可变参数调用 |
CWE-118 | C/C++ | cpp/no-space-for-terminator | 没有为零终止符留出空间 |
CWE-118 | C/C++ | cpp/invalid-pointer-deref | 无效的指针解引用 |
CWE-118 | C/C++ | cpp/openssl-heartbleed | 使用存在 Heartbleed 漏洞的 OpenSSL 版本 |
CWE-118 | C/C++ | cpp/iterator-to-expired-container | 指向已失效容器的迭代器 |
CWE-118 | C/C++ | cpp/use-of-string-after-lifetime-ends | 在生命周期结束之后使用字符串 |
CWE-118 | C/C++ | cpp/use-of-unique-pointer-after-lifetime-ends | 在生命周期结束之后使用独占指针 |
CWE-118 | C/C++ | cpp/memory-unsafe-function-scan | 没有指定长度的 Scanf 函数 |
CWE-118 | C/C++ | cpp/dangerous-use-convert-function | 危险地使用转换函数。 |
CWE-118 | C/C++ | cpp/experimental-double-free | 双重释放错误 |
CWE-118 | C/C++ | cpp/use-after-expired-lifetime | 在对象生命周期结束后使用对象 |
CWE-118 | C/C++ | cpp/dangerous-use-of-exception-blocks | 危险地使用异常块。 |
CWE-118 | C/C++ | cpp/sign-conversion-pointer-arithmetic | 在指针运算中使用无符号到有符号的转换 |
CWE-118 | C/C++ | cpp/access-memory-location-after-end-buffer-strlen | 访问缓冲区末尾之后的内存位置 |
CWE-118 | C/C++ | cpp/buffer-access-with-incorrect-length-value | 使用不正确的长度值访问缓冲区 |
CWE-119 | C/C++ | cpp/offset-use-before-range-check | 数组偏移量在范围检查之前使用 |
CWE-119 | C/C++ | cpp/double-free | 潜在的双重释放 |
CWE-119 | C/C++ | cpp/late-negative-test | 指针偏移量在检查之前使用 |
CWE-119 | C/C++ | cpp/missing-negativity-test | 未检查的返回值用作偏移量 |
CWE-119 | C/C++ | cpp/overflow-calculated | 缓冲区不足以容纳字符串 |
CWE-119 | C/C++ | cpp/overflow-destination | 使用源大小的复制函数 |
CWE-119 | C/C++ | cpp/static-buffer-overflow | 静态数组访问可能会导致溢出 |
CWE-119 | C/C++ | cpp/allocation-too-small | 为指针类型分配的内存不足 |
CWE-119 | C/C++ | cpp/suspicious-allocation-size | 为指针类型数组分配的内存不足 |
CWE-119 | C/C++ | cpp/use-after-free | 潜在的释放后使用 |
CWE-119 | C/C++ | cpp/upcast-array-pointer-arithmetic | 向上转换的数组用在指针运算中 |
CWE-119 | C/C++ | cpp/return-stack-allocated-memory | 返回堆栈分配的内存 |
CWE-119 | C/C++ | cpp/bad-strncpy-size | 字符串复制中可能错误的缓冲区大小 |
CWE-119 | C/C++ | cpp/unsafe-strncat | 对 strncat 的潜在不安全调用 |
CWE-119 | C/C++ | cpp/unsafe-strcat | 对 strcat 的潜在不安全使用 |
CWE-119 | C/C++ | cpp/using-expired-stack-address | 使用过期的堆栈地址 |
CWE-119 | C/C++ | cpp/overflow-buffer | 对内存访问函数的调用可能会导致缓冲区溢出 |
CWE-119 | C/C++ | cpp/overrun-write | 溢出写入 |
CWE-119 | C/C++ | cpp/badly-bounded-write | 边界不确定的写入 |
CWE-119 | C/C++ | cpp/overrunning-write | 潜在的溢出写入 |
CWE-119 | C/C++ | cpp/overrunning-write-with-float | 使用浮点数到字符串转换的潜在溢出写入 |
CWE-119 | C/C++ | cpp/unbounded-write | 无边界写入 |
CWE-119 | C/C++ | cpp/very-likely-overrunning-write | 可能发生的溢出写入 |
CWE-119 | C/C++ | cpp/unterminated-variadic-call | 未终止的可变参数调用 |
CWE-119 | C/C++ | cpp/no-space-for-terminator | 没有为零终止符留出空间 |
CWE-119 | C/C++ | cpp/invalid-pointer-deref | 无效的指针解引用 |
CWE-119 | C/C++ | cpp/openssl-heartbleed | 使用存在 Heartbleed 漏洞的 OpenSSL 版本 |
CWE-119 | C/C++ | cpp/iterator-to-expired-container | 指向已失效容器的迭代器 |
CWE-119 | C/C++ | cpp/use-of-string-after-lifetime-ends | 在生命周期结束之后使用字符串 |
CWE-119 | C/C++ | cpp/use-of-unique-pointer-after-lifetime-ends | 在生命周期结束之后使用独占指针 |
CWE-119 | C/C++ | cpp/memory-unsafe-function-scan | 没有指定长度的 Scanf 函数 |
CWE-119 | C/C++ | cpp/dangerous-use-convert-function | 危险地使用转换函数。 |
CWE-119 | C/C++ | cpp/experimental-double-free | 双重释放错误 |
CWE-119 | C/C++ | cpp/use-after-expired-lifetime | 在对象生命周期结束后使用对象 |
CWE-119 | C/C++ | cpp/dangerous-use-of-exception-blocks | 危险地使用异常块。 |
CWE-119 | C/C++ | cpp/sign-conversion-pointer-arithmetic | 在指针运算中使用无符号到有符号的转换 |
CWE-119 | C/C++ | cpp/access-memory-location-after-end-buffer-strlen | 访问缓冲区末尾之后的内存位置 |
CWE-119 | C/C++ | cpp/buffer-access-with-incorrect-length-value | 使用不正确的长度值访问缓冲区 |
CWE-120 | C/C++ | cpp/offset-use-before-range-check | 数组偏移量在范围检查之前使用 |
CWE-120 | C/C++ | cpp/overflow-calculated | 缓冲区不足以容纳字符串 |
CWE-120 | C/C++ | cpp/unsafe-strcat | 对 strcat 的潜在不安全使用 |
CWE-120 | C/C++ | cpp/badly-bounded-write | 边界不确定的写入 |
CWE-120 | C/C++ | cpp/overrunning-write | 潜在的溢出写入 |
CWE-120 | C/C++ | cpp/overrunning-write-with-float | 使用浮点数到字符串转换的潜在溢出写入 |
CWE-120 | C/C++ | cpp/unbounded-write | 无边界写入 |
CWE-120 | C/C++ | cpp/very-likely-overrunning-write | 可能发生的溢出写入 |
CWE-120 | C/C++ | cpp/no-space-for-terminator | 没有为零终止符留出空间 |
CWE-120 | C/C++ | cpp/memory-unsafe-function-scan | 没有指定长度的 Scanf 函数 |
CWE-121 | C/C++ | cpp/overflow-buffer | 对内存访问函数的调用可能会导致缓冲区溢出 |
CWE-121 | C/C++ | cpp/unterminated-variadic-call | 未终止的可变参数调用 |
CWE-122 | C/C++ | cpp/allocation-too-small | 为指针类型分配的内存不足 |
CWE-122 | C/C++ | cpp/suspicious-allocation-size | 为指针类型数组分配的内存不足 |
CWE-122 | C/C++ | cpp/overflow-buffer | 对内存访问函数的调用可能会导致缓冲区溢出 |
CWE-122 | C/C++ | cpp/no-space-for-terminator | 没有为零终止符留出空间 |
CWE-125 | C/C++ | cpp/offset-use-before-range-check | 数组偏移量在范围检查之前使用 |
CWE-125 | C/C++ | cpp/overflow-buffer | 对内存访问函数的调用可能会导致缓冲区溢出 |
CWE-125 | C/C++ | cpp/invalid-pointer-deref | 无效的指针解引用 |
CWE-125 | C/C++ | cpp/dangerous-use-convert-function | 危险地使用转换函数。 |
CWE-126 | C/C++ | cpp/overflow-buffer | 对内存访问函数的调用可能会导致缓冲区溢出 |
CWE-128 | C/C++ | cpp/signed-overflow-check | 有符号溢出检查 |
CWE-128 | C/C++ | cpp/multiplication-overflow-in-alloc | 乘法结果可能溢出并用于分配 |
CWE-129 | C/C++ | cpp/unclear-array-index-validation | 数组索引验证不明确 |
CWE-131 | C/C++ | cpp/overflow-calculated | 缓冲区不足以容纳字符串 |
CWE-131 | C/C++ | cpp/overflow-destination | 使用源大小的复制函数 |
CWE-131 | C/C++ | cpp/static-buffer-overflow | 静态数组访问可能会导致溢出 |
CWE-131 | C/C++ | cpp/allocation-too-small | 为指针类型分配的内存不足 |
CWE-131 | C/C++ | cpp/suspicious-allocation-size | 为指针类型数组分配的内存不足 |
CWE-131 | C/C++ | cpp/overrun-write | 溢出写入 |
CWE-131 | C/C++ | cpp/no-space-for-terminator | 没有为零终止符留出空间 |
CWE-134 | C/C++ | cpp/non-constant-format | 非恒定格式字符串 |
CWE-134 | C/C++ | cpp/tainted-format-string | 不受控制的格式字符串 |
CWE-170 | C/C++ | cpp/improper-null-termination | 潜在的非正常空终止 |
CWE-170 | C/C++ | cpp/user-controlled-null-termination-tainted | 用户控制的数据可能没有空终止符 |
CWE-190 | C/C++ | cpp/ambiguously-signed-bit-field | 符号不明确的位域成员 |
CWE-190 | C/C++ | cpp/bad-addition-overflow-check | 对整数加法溢出的错误检查 |
CWE-190 | C/C++ | cpp/integer-multiplication-cast-to-long | 乘法结果转换为更大的类型 |
CWE-190 | C/C++ | cpp/signed-overflow-check | 有符号溢出检查 |
CWE-190 | C/C++ | cpp/overflowing-snprintf | 对 snprintf 的潜在溢出调用 |
CWE-190 | C/C++ | cpp/tainted-arithmetic | 算术表达式中的用户控制的数据 |
CWE-190 | C/C++ | cpp/uncontrolled-arithmetic | 算术表达式中的不受控制的数据 |
CWE-190 | C/C++ | cpp/arithmetic-with-extreme-values | 在算术表达式中使用极值 |
CWE-190 | C/C++ | cpp/comparison-with-wider-type | 在循环条件中将窄类型与宽类型进行比较 |
CWE-190 | C/C++ | cpp/integer-overflow-tainted | 潜在的整数算术溢出 |
CWE-190 | C/C++ | cpp/uncontrolled-allocation-size | 不受控制的分配大小溢出 |
CWE-190 | C/C++ | cpp/multiplication-overflow-in-alloc | 乘法结果可能溢出并用于分配 |
CWE-190 | C/C++ | cpp/dangerous-use-of-transformation-after-operation | 在操作后危险地使用转换。 |
CWE-190 | C/C++ | cpp/signed-bit-field | 可能的带符号位域成员 |
CWE-191 | C/C++ | cpp/tainted-arithmetic | 算术表达式中的用户控制的数据 |
CWE-191 | C/C++ | cpp/uncontrolled-arithmetic | 算术表达式中的不受控制的数据 |
CWE-191 | C/C++ | cpp/arithmetic-with-extreme-values | 在算术表达式中使用极值 |
CWE-191 | C/C++ | cpp/unsigned-difference-expression-compared-zero | 无符号差值表达式与零进行比较 |
CWE-193 | C/C++ | cpp/invalid-pointer-deref | 无效的指针解引用 |
CWE-197 | C/C++ | cpp/integer-multiplication-cast-to-long | 乘法结果转换为更大的类型 |
CWE-197 | C/C++ | cpp/comparison-with-wider-type | 在循环条件中将窄类型与宽类型进行比较 |
CWE-197 | C/C++ | cpp/integer-overflow-tainted | 潜在的整数算术溢出 |
CWE-200 | C/C++ | cpp/cleartext-transmission | 敏感信息的明文传输 |
CWE-200 | C/C++ | cpp/system-data-exposure | 系统数据暴露给未经授权的控制领域 |
CWE-200 | C/C++ | cpp/potential-system-data-exposure | 敏感系统数据潜在暴露给未经授权的控制领域 |
CWE-200 | C/C++ | cpp/work-with-file-without-permissions-rights | 在没有设置权限的情况下写入文件。 |
CWE-200 | C/C++ | cpp/wrong-use-of-the-umask | 查找 umask 函数的错误使用方式。 |
CWE-200 | C/C++ | cpp/private-cleartext-write | 私人信息的泄露 |
CWE-227 | C/C++ | cpp/double-free | 潜在的双重释放 |
CWE-227 | C/C++ | cpp/incorrectly-checked-scanf | 对“scanf”类函数的返回值检查不正确 |
CWE-227 | C/C++ | cpp/missing-check-scanf | 缺少对“scanf”类函数的返回值检查 |
CWE-227 | C/C++ | cpp/overflowing-snprintf | 对 snprintf 的潜在溢出调用 |
CWE-227 | C/C++ | cpp/wrong-number-format-arguments | 格式化函数的参数过少 |
CWE-227 | C/C++ | cpp/wrong-type-format-argument | 格式化函数的参数类型错误 |
CWE-227 | C/C++ | cpp/too-few-arguments | 函数调用中参数数量少于声明的参数 |
CWE-227 | C/C++ | cpp/ignore-return-value-sal | SAL 需要检查返回值 |
CWE-227 | C/C++ | cpp/hresult-boolean-conversion | 在 HRESULT 和布尔类型之间进行转换 |
CWE-227 | C/C++ | cpp/lock-order-cycle | 循环锁顺序依赖 |
CWE-227 | C/C++ | cpp/twice-locked | 互斥锁被锁定两次 |
CWE-227 | C/C++ | cpp/unreleased-lock | 锁可能未被释放 |
CWE-227 | C/C++ | cpp/work-with-changing-working-directories | 查找带有安全错误的更改工作目录的操作。 |
CWE-227 | C/C++ | cpp/wrong-use-of-the-umask | 查找 umask 函数的错误使用方式。 |
CWE-227 | C/C++ | cpp/experimental-double-free | 双重释放错误 |
CWE-227 | C/C++ | cpp/dangerous-use-of-exception-blocks | 危险地使用异常块。 |
CWE-227 | C/C++ | cpp/double-release | 双重释放错误 |
CWE-228 | C/C++ | cpp/wrong-number-format-arguments | 格式化函数的参数过少 |
CWE-228 | C/C++ | cpp/too-few-arguments | 函数调用中参数数量少于声明的参数 |
CWE-233 | C/C++ | cpp/wrong-number-format-arguments | 格式化函数的参数过少 |
CWE-233 | C/C++ | cpp/too-few-arguments | 函数调用中参数数量少于声明的参数 |
CWE-234 | C/C++ | cpp/wrong-number-format-arguments | 格式化函数的参数过少 |
CWE-234 | C/C++ | cpp/too-few-arguments | 函数调用中参数数量少于声明的参数 |
CWE-242 | C/C++ | cpp/dangerous-function-overflow | 使用危险函数 |
CWE-243 | C/C++ | cpp/work-with-changing-working-directories | 查找带有安全错误的更改工作目录的操作。 |
CWE-248 | C/C++ | cpp/operator-find-incorrectly-used-exceptions | 操作符“查找”不正确地使用异常 |
CWE-252 | C/C++ | cpp/missing-check-scanf | 缺少对“scanf”类函数的返回值检查 |
CWE-252 | C/C++ | cpp/return-value-ignored | 函数的返回值被忽略 |
CWE-252 | C/C++ | cpp/inconsistent-call-on-result | 对返回值进行不一致的操作 |
CWE-252 | C/C++ | cpp/ignore-return-value-sal | SAL 需要检查返回值 |
CWE-252 | C/C++ | cpp/incorrect-allocation-error-handling | 不正确的分配错误处理 |
CWE-252 | C/C++ | cpp/work-with-changing-working-directories | 查找带有安全错误的更改工作目录的操作。 |
CWE-253 | C/C++ | cpp/incorrectly-checked-scanf | 对“scanf”类函数的返回值检查不正确 |
CWE-253 | C/C++ | cpp/missing-check-scanf | 缺少对“scanf”类函数的返回值检查 |
CWE-253 | C/C++ | cpp/overflowing-snprintf | 对 snprintf 的潜在溢出调用 |
CWE-253 | C/C++ | cpp/hresult-boolean-conversion | 在 HRESULT 和布尔类型之间进行转换 |
CWE-260 | C/C++ | cpp/cleartext-storage-file | 敏感信息在文件中的明文存储 |
CWE-266 | C/C++ | cpp/wrong-use-of-the-umask | 查找 umask 函数的错误使用方式。 |
CWE-269 | C/C++ | cpp/wrong-use-of-the-umask | 查找 umask 函数的错误使用方式。 |
CWE-269 | C/C++ | cpp/drop-linux-privileges-outoforder | LinuxPrivilegeDroppingOutoforder |
CWE-271 | C/C++ | cpp/drop-linux-privileges-outoforder | LinuxPrivilegeDroppingOutoforder |
CWE-273 | C/C++ | cpp/drop-linux-privileges-outoforder | LinuxPrivilegeDroppingOutoforder |
CWE-284 | C/C++ | cpp/user-controlled-bypass | 通过欺骗进行身份验证绕过 |
CWE-284 | C/C++ | cpp/cleartext-storage-file | 敏感信息在文件中的明文存储 |
CWE-284 | C/C++ | cpp/world-writable-file-creation | 创建文件时没有限制权限 |
CWE-284 | C/C++ | cpp/open-call-with-mode-argument | 使用 O_CREAT 标志打开文件,但没有提供模式参数 |
CWE-284 | C/C++ | cpp/unsafe-dacl-security-descriptor | 在 SECURITY_DESCRIPTOR 中将 DACL 设置为 NULL |
CWE-284 | C/C++ | cpp/wrong-use-of-the-umask | 查找 umask 函数的错误使用方式。 |
CWE-284 | C/C++ | cpp/drop-linux-privileges-outoforder | LinuxPrivilegeDroppingOutoforder |
CWE-284 | C/C++ | cpp/pam-auth-bypass | PAM 身份验证绕过 |
CWE-285 | C/C++ | cpp/world-writable-file-creation | 创建文件时没有限制权限 |
CWE-285 | C/C++ | cpp/open-call-with-mode-argument | 使用 O_CREAT 标志打开文件,但没有提供模式参数 |
CWE-285 | C/C++ | cpp/unsafe-dacl-security-descriptor | 在 SECURITY_DESCRIPTOR 中将 DACL 设置为 NULL |
CWE-285 | C/C++ | cpp/pam-auth-bypass | PAM 身份验证绕过 |
CWE-287 | C/C++ | cpp/user-controlled-bypass | 通过欺骗进行身份验证绕过 |
CWE-287 | C/C++ | cpp/cleartext-storage-file | 敏感信息在文件中的明文存储 |
CWE-290 | C/C++ | cpp/user-controlled-bypass | 通过欺骗进行身份验证绕过 |
CWE-295 | C/C++ | cpp/certificate-result-conflation | 证书结果混淆 |
CWE-295 | C/C++ | cpp/certificate-not-checked | 没有检查证书 |
CWE-311 | C/C++ | cpp/cleartext-storage-buffer | 敏感信息在缓冲区中的明文存储 |
CWE-311 | C/C++ | cpp/cleartext-storage-file | 敏感信息在文件中的明文存储 |
CWE-311 | C/C++ | cpp/cleartext-transmission | 敏感信息的明文传输 |
CWE-311 | C/C++ | cpp/cleartext-storage-database | 敏感信息在 SQLite 数据库中的明文存储 |
CWE-311 | C/C++ | cpp/non-https-url | 没有使用 HTTPS URL |
CWE-312 | C/C++ | cpp/cleartext-storage-buffer | 敏感信息在缓冲区中的明文存储 |
CWE-312 | C/C++ | cpp/cleartext-storage-file | 敏感信息在文件中的明文存储 |
CWE-312 | C/C++ | cpp/cleartext-storage-database | 敏感信息在 SQLite 数据库中的明文存储 |
CWE-313 | C/C++ | cpp/cleartext-storage-file | 敏感信息在文件中的明文存储 |
CWE-313 | C/C++ | cpp/cleartext-storage-database | 敏感信息在 SQLite 数据库中的明文存储 |
CWE-319 | C/C++ | cpp/cleartext-transmission | 敏感信息的明文传输 |
CWE-319 | C/C++ | cpp/non-https-url | 没有使用 HTTPS URL |
CWE-326 | C/C++ | cpp/boost/tls-settings-misconfiguration | boost::asio TLS 设置配置错误 |
CWE-326 | C/C++ | cpp/insufficient-key-size | 使用密钥大小不足的加密算法 |
CWE-326 | C/C++ | cpp/unknown-asymmetric-key-gen-size | 未知的密钥生成密钥大小 |
CWE-326 | C/C++ | cpp/weak-asymmetric-key-gen-size | 弱非对称密钥生成密钥大小(< 2048 位) |
CWE-327 | C/C++ | cpp/boost/use-of-deprecated-hardcoded-security-protocol | boost::asio 使用过时的硬编码协议 |
CWE-327 | C/C++ | cpp/weak-cryptographic-algorithm | 使用破损或存在风险的加密算法 |
CWE-327 | C/C++ | cpp/openssl-heartbleed | 使用存在 Heartbleed 漏洞的 OpenSSL 版本 |
CWE-327 | C/C++ | cpp/weak-block-mode | 弱块模式 |
CWE-327 | C/C++ | cpp/weak-elliptic-curve | 弱椭圆曲线 |
CWE-327 | C/C++ | cpp/weak-crypto/banned-encryption-algorithms | 弱密码学 |
CWE-327 | C/C++ | cpp/weak-crypto/banned-hash-algorithms | 弱密码学 |
CWE-345 | C/C++ | cpp/non-https-url | 没有使用 HTTPS URL |
CWE-359 | C/C++ | cpp/cleartext-transmission | 敏感信息的明文传输 |
CWE-359 | C/C++ | cpp/private-cleartext-write | 私人信息的泄露 |
CWE-362 | C/C++ | cpp/toctou-race-condition | 文件系统中的时间检查时间使用竞争条件 |
CWE-362 | C/C++ | cpp/linux-kernel-double-fetch-vulnerability | Linux 内核双重获取漏洞检测 |
CWE-367 | C/C++ | cpp/toctou-race-condition | 文件系统中的时间检查时间使用竞争条件 |
CWE-369 | C/C++ | cpp/divide-by-zero-using-return-value | 使用返回值进行除零 |
CWE-377 | C/C++ | cpp/insecure-generation-of-filename | 不安全的文件名生成。 |
CWE-390 | C/C++ | cpp/operator-find-incorrectly-used-exceptions | 操作符“查找”不正确地使用异常 |
CWE-398 | C/C++ | cpp/unused-local-variable | 未使用的局部变量 |
CWE-398 | C/C++ | cpp/unused-static-function | 未使用的静态函数 |
CWE-398 | C/C++ | cpp/unused-static-variable | 未使用的静态变量 |
CWE-398 | C/C++ | cpp/dead-code-condition | 分支条件始终计算为相同的值 |
CWE-398 | C/C++ | cpp/dead-code-function | 函数从不调用 |
CWE-398 | C/C++ | cpp/dead-code-goto | 由于 goto 或 break 语句导致的死代码 |
CWE-398 | C/C++ | cpp/inconsistent-nullness-testing | 对指针进行不一致的空值检查 |
CWE-398 | C/C++ | cpp/missing-null-test | 返回的指针没有被检查 |
CWE-398 | C/C++ | cpp/unused-variable | 变量被赋予一个从未读取的值 |
CWE-398 | C/C++ | cpp/fixme-comment | FIXME 注释 |
CWE-398 | C/C++ | cpp/todo-comment | TODO 注释 |
CWE-398 | C/C++ | cpp/inconsistent-null-check | 不一致的空值检查 |
CWE-398 | C/C++ | cpp/useless-expression | 表达式没有效果 |
CWE-398 | C/C++ | cpp/bad-strncpy-size | 字符串复制中可能错误的缓冲区大小 |
CWE-398 | C/C++ | cpp/suspicious-call-to-memset | 对 memset 的可疑调用 |
CWE-398 | C/C++ | cpp/unsafe-strncat | 对 strncat 的潜在不安全调用 |
CWE-398 | C/C++ | cpp/unsafe-strcat | 对 strcat 的潜在不安全使用 |
CWE-398 | C/C++ | cpp/redundant-null-check-simple | 由于先前的解引用导致的冗余空值检查 |
CWE-398 | C/C++ | cpp/incorrect-allocation-error-handling | 不正确的分配错误处理 |
CWE-398 | C/C++ | cpp/dangerous-function-overflow | 使用危险函数 |
CWE-398 | C/C++ | cpp/dangerous-cin | 对 “cin” 的危险使用 |
CWE-398 | C/C++ | cpp/potentially-dangerous-function | 使用潜在的危险函数 |
CWE-398 | C/C++ | cpp/deref-null-result | 函数结果中的空值解引用 |
CWE-398 | C/C++ | cpp/redundant-null-check-param | 参数冗余的空检查或缺少空检查 |
CWE-398 | C/C++ | cpp/dangerous-use-of-exception-blocks | 危险地使用异常块。 |
CWE-398 | C/C++ | cpp/operator-find-incorrectly-used-switch | 不正确的 switch 语句 |
CWE-400 | C/C++ | cpp/catch-missing-free | 泄漏的捕获 |
CWE-400 | C/C++ | cpp/descriptor-may-not-be-closed | 打开的描述符可能未关闭 |
CWE-400 | C/C++ | cpp/descriptor-never-closed | 打开的描述符从未关闭 |
CWE-400 | C/C++ | cpp/file-may-not-be-closed | 打开的文件可能未关闭 |
CWE-400 | C/C++ | cpp/file-never-closed | 打开的文件未关闭 |
CWE-400 | C/C++ | cpp/memory-may-not-be-freed | 内存可能未释放 |
CWE-400 | C/C++ | cpp/memory-never-freed | 内存从未释放 |
CWE-400 | C/C++ | cpp/new-free-mismatch | new/free 或 malloc/delete 不匹配 |
CWE-400 | C/C++ | cpp/alloca-in-loop | 在循环中调用 alloca |
CWE-400 | C/C++ | cpp/uncontrolled-allocation-size | 不受控制的分配大小溢出 |
CWE-400 | C/C++ | cpp/memory-leak-on-failed-call-to-realloc | 对 realloc 的失败调用导致内存泄漏 |
CWE-401 | C/C++ | cpp/catch-missing-free | 泄漏的捕获 |
CWE-401 | C/C++ | cpp/memory-may-not-be-freed | 内存可能未释放 |
CWE-401 | C/C++ | cpp/memory-never-freed | 内存从未释放 |
CWE-401 | C/C++ | cpp/new-free-mismatch | new/free 或 malloc/delete 不匹配 |
CWE-401 | C/C++ | cpp/memory-leak-on-failed-call-to-realloc | 对 realloc 的失败调用导致内存泄漏 |
CWE-404 | C/C++ | cpp/catch-missing-free | 泄漏的捕获 |
CWE-404 | C/C++ | cpp/descriptor-may-not-be-closed | 打开的描述符可能未关闭 |
CWE-404 | C/C++ | cpp/descriptor-never-closed | 打开的描述符从未关闭 |
CWE-404 | C/C++ | cpp/file-may-not-be-closed | 打开的文件可能未关闭 |
CWE-404 | C/C++ | cpp/file-never-closed | 打开的文件未关闭 |
CWE-404 | C/C++ | cpp/memory-may-not-be-freed | 内存可能未释放 |
CWE-404 | C/C++ | cpp/memory-never-freed | 内存从未释放 |
CWE-404 | C/C++ | cpp/new-free-mismatch | new/free 或 malloc/delete 不匹配 |
CWE-404 | C/C++ | cpp/memory-leak-on-failed-call-to-realloc | 对 realloc 的失败调用导致内存泄漏 |
CWE-404 | C/C++ | cpp/resource-not-released-in-destructor | 资源在析构函数中未释放 |
CWE-415 | C/C++ | cpp/double-free | 潜在的双重释放 |
CWE-415 | C/C++ | cpp/experimental-double-free | 双重释放错误 |
CWE-415 | C/C++ | cpp/dangerous-use-of-exception-blocks | 危险地使用异常块。 |
CWE-416 | C/C++ | cpp/use-after-free | 潜在的释放后使用 |
CWE-416 | C/C++ | cpp/iterator-to-expired-container | 指向已失效容器的迭代器 |
CWE-416 | C/C++ | cpp/use-of-string-after-lifetime-ends | 在生命周期结束之后使用字符串 |
CWE-416 | C/C++ | cpp/use-of-unique-pointer-after-lifetime-ends | 在生命周期结束之后使用独占指针 |
CWE-416 | C/C++ | cpp/use-after-expired-lifetime | 在对象生命周期结束后使用对象 |
CWE-428 | C/C++ | cpp/unsafe-create-process-call | 在调用 CreateProcess 时,应用程序名称为 NULL,路径未加引号 |
CWE-435 | C/C++ | cpp/memset-may-be-deleted | 对 memset 的调用可能被删除 |
CWE-456 | C/C++ | cpp/initialization-not-run | 初始化代码未运行 |
CWE-457 | C/C++ | cpp/global-use-before-init | 全局变量可能在初始化之前使用 |
CWE-457 | C/C++ | cpp/not-initialised | 变量在使用前未初始化 |
CWE-457 | C/C++ | cpp/uninitialized-local | 可能未初始化的局部变量 |
CWE-457 | C/C++ | cpp/conditionally-uninitialized-variable | 有条件地未初始化的变量 |
CWE-467 | C/C++ | cpp/suspicious-sizeof | 可疑的 'sizeof' 使用 |
CWE-468 | C/C++ | cpp/suspicious-pointer-scaling | 可疑的指针缩放 |
CWE-468 | C/C++ | cpp/incorrect-pointer-scaling-char | 可疑的指针缩放至 char |
CWE-468 | C/C++ | cpp/suspicious-pointer-scaling-void | 可疑的指针缩放至 void |
CWE-468 | C/C++ | cpp/suspicious-add-sizeof | 可疑的加法运算,使用 sizeof |
CWE-476 | C/C++ | cpp/inconsistent-nullness-testing | 对指针进行不一致的空值检查 |
CWE-476 | C/C++ | cpp/missing-null-test | 返回的指针没有被检查 |
CWE-476 | C/C++ | cpp/inconsistent-null-check | 不一致的空值检查 |
CWE-476 | C/C++ | cpp/redundant-null-check-simple | 由于先前的解引用导致的冗余空值检查 |
CWE-476 | C/C++ | cpp/deref-null-result | 函数结果中的空值解引用 |
CWE-476 | C/C++ | cpp/redundant-null-check-param | 参数冗余的空检查或缺少空检查 |
CWE-476 | C/C++ | cpp/dangerous-use-of-exception-blocks | 危险地使用异常块。 |
CWE-478 | C/C++ | cpp/missing-case-in-switch | switch 中缺少枚举情况 |
CWE-478 | C/C++ | cpp/operator-find-incorrectly-used-switch | 不正确的 switch 语句 |
CWE-480 | C/C++ | cpp/assign-where-compare-meant | 赋值操作,应为比较操作 |
CWE-480 | C/C++ | cpp/compare-where-assign-meant | 比较操作,应为赋值操作 |
CWE-480 | C/C++ | cpp/incorrect-not-operator-usage | 不正确的 'not' 运算符使用 |
CWE-480 | C/C++ | cpp/logical-operator-applied-to-flag | 短路运算符应用于标志 |
CWE-480 | C/C++ | cpp/operator-precedence-logic-error-when-use-bitwise-logical-operations | 使用位运算或逻辑运算时,运算符优先级逻辑错误 |
CWE-480 | C/C++ | cpp/operator-precedence-logic-error-when-use-bool-type | 使用布尔类型时,运算符优先级逻辑错误 |
CWE-481 | C/C++ | cpp/assign-where-compare-meant | 赋值操作,应为比较操作 |
CWE-482 | C/C++ | cpp/compare-where-assign-meant | 比较操作,应为赋值操作 |
CWE-497 | C/C++ | cpp/system-data-exposure | 系统数据暴露给未经授权的控制领域 |
CWE-497 | C/C++ | cpp/potential-system-data-exposure | 敏感系统数据潜在暴露给未经授权的控制领域 |
CWE-522 | C/C++ | cpp/cleartext-storage-file | 敏感信息在文件中的明文存储 |
CWE-546 | C/C++ | cpp/fixme-comment | FIXME 注释 |
CWE-546 | C/C++ | cpp/todo-comment | TODO 注释 |
CWE-560 | C/C++ | cpp/wrong-use-of-the-umask | 查找 umask 函数的错误使用方式。 |
CWE-561 | C/C++ | cpp/unused-static-function | 未使用的静态函数 |
CWE-561 | C/C++ | cpp/dead-code-condition | 分支条件始终计算为相同的值 |
CWE-561 | C/C++ | cpp/dead-code-function | 函数从不调用 |
CWE-561 | C/C++ | cpp/dead-code-goto | 由于 goto 或 break 语句导致的死代码 |
CWE-561 | C/C++ | cpp/useless-expression | 表达式没有效果 |
CWE-561 | C/C++ | cpp/incorrect-allocation-error-handling | 不正确的分配错误处理 |
CWE-561 | C/C++ | cpp/operator-find-incorrectly-used-switch | 不正确的 switch 语句 |
CWE-563 | C/C++ | cpp/unused-local-variable | 未使用的局部变量 |
CWE-563 | C/C++ | cpp/unused-static-variable | 未使用的静态变量 |
CWE-563 | C/C++ | cpp/unused-variable | 变量被赋予一个从未读取的值 |
CWE-570 | C/C++ | cpp/incorrect-allocation-error-handling | 不正确的分配错误处理 |
CWE-573 | C/C++ | cpp/double-free | 潜在的双重释放 |
CWE-573 | C/C++ | cpp/incorrectly-checked-scanf | 对“scanf”类函数的返回值检查不正确 |
CWE-573 | C/C++ | cpp/missing-check-scanf | 缺少对“scanf”类函数的返回值检查 |
CWE-573 | C/C++ | cpp/overflowing-snprintf | 对 snprintf 的潜在溢出调用 |
CWE-573 | C/C++ | cpp/wrong-number-format-arguments | 格式化函数的参数过少 |
CWE-573 | C/C++ | cpp/wrong-type-format-argument | 格式化函数的参数类型错误 |
CWE-573 | C/C++ | cpp/too-few-arguments | 函数调用中参数数量少于声明的参数 |
CWE-573 | C/C++ | cpp/ignore-return-value-sal | SAL 需要检查返回值 |
CWE-573 | C/C++ | cpp/hresult-boolean-conversion | 在 HRESULT 和布尔类型之间进行转换 |
CWE-573 | C/C++ | cpp/lock-order-cycle | 循环锁顺序依赖 |
CWE-573 | C/C++ | cpp/twice-locked | 互斥锁被锁定两次 |
CWE-573 | C/C++ | cpp/unreleased-lock | 锁可能未被释放 |
CWE-573 | C/C++ | cpp/work-with-changing-working-directories | 查找带有安全错误的更改工作目录的操作。 |
CWE-573 | C/C++ | cpp/wrong-use-of-the-umask | 查找 umask 函数的错误使用方式。 |
CWE-573 | C/C++ | cpp/experimental-double-free | 双重释放错误 |
CWE-573 | C/C++ | cpp/dangerous-use-of-exception-blocks | 危险地使用异常块。 |
CWE-573 | C/C++ | cpp/double-release | 双重释放错误 |
CWE-592 | C/C++ | cpp/user-controlled-bypass | 通过欺骗进行身份验证绕过 |
CWE-610 | C/C++ | cpp/path-injection | 路径表达式中使用不受控制的数据 |
CWE-610 | C/C++ | cpp/external-entity-expansion | XML 外部实体扩展 |
CWE-611 | C/C++ | cpp/external-entity-expansion | XML 外部实体扩展 |
CWE-628 | C/C++ | cpp/wrong-number-format-arguments | 格式化函数的参数过少 |
CWE-628 | C/C++ | cpp/wrong-type-format-argument | 格式化函数的参数类型错误 |
CWE-628 | C/C++ | cpp/too-few-arguments | 函数调用中参数数量少于声明的参数 |
CWE-628 | C/C++ | cpp/wrong-use-of-the-umask | 查找 umask 函数的错误使用方式。 |
CWE-642 | C/C++ | cpp/path-injection | 路径表达式中使用不受控制的数据 |
CWE-662 | C/C++ | cpp/lock-order-cycle | 循环锁顺序依赖 |
CWE-662 | C/C++ | cpp/twice-locked | 互斥锁被锁定两次 |
CWE-662 | C/C++ | cpp/unreleased-lock | 锁可能未被释放 |
CWE-664 | C/C++ | cpp/catch-missing-free | 泄漏的捕获 |
CWE-664 | C/C++ | cpp/descriptor-may-not-be-closed | 打开的描述符可能未关闭 |
CWE-664 | C/C++ | cpp/descriptor-never-closed | 打开的描述符从未关闭 |
CWE-664 | C/C++ | cpp/double-free | 潜在的双重释放 |
CWE-664 | C/C++ | cpp/file-may-not-be-closed | 打开的文件可能未关闭 |
CWE-664 | C/C++ | cpp/file-never-closed | 打开的文件未关闭 |
CWE-664 | C/C++ | cpp/global-use-before-init | 全局变量可能在初始化之前使用 |
CWE-664 | C/C++ | cpp/initialization-not-run | 初始化代码未运行 |
CWE-664 | C/C++ | cpp/memory-may-not-be-freed | 内存可能未释放 |
CWE-664 | C/C++ | cpp/memory-never-freed | 内存从未释放 |
CWE-664 | C/C++ | cpp/new-free-mismatch | new/free 或 malloc/delete 不匹配 |
CWE-664 | C/C++ | cpp/not-initialised | 变量在使用前未初始化 |
CWE-664 | C/C++ | cpp/use-after-free | 潜在的释放后使用 |
CWE-664 | C/C++ | cpp/bad-addition-overflow-check | 对整数加法溢出的错误检查 |
CWE-664 | C/C++ | cpp/integer-multiplication-cast-to-long | 乘法结果转换为更大的类型 |
CWE-664 | C/C++ | cpp/upcast-array-pointer-arithmetic | 向上转换的数组用在指针运算中 |
CWE-664 | C/C++ | cpp/alloca-in-loop | 在循环中调用 alloca |
CWE-664 | C/C++ | cpp/improper-null-termination | 潜在的非正常空终止 |
CWE-664 | C/C++ | cpp/return-stack-allocated-memory | 返回堆栈分配的内存 |
CWE-664 | C/C++ | cpp/uninitialized-local | 可能未初始化的局部变量 |
CWE-664 | C/C++ | cpp/using-expired-stack-address | 使用过期的堆栈地址 |
CWE-664 | C/C++ | cpp/self-assignment-check | 自赋值检查 |
CWE-664 | C/C++ | cpp/path-injection | 路径表达式中使用不受控制的数据 |
CWE-664 | C/C++ | cpp/comparison-with-wider-type | 在循环条件中将窄类型与宽类型进行比较 |
CWE-664 | C/C++ | cpp/integer-overflow-tainted | 潜在的整数算术溢出 |
CWE-664 | C/C++ | cpp/uncontrolled-allocation-size | 不受控制的分配大小溢出 |
CWE-664 | C/C++ | cpp/user-controlled-bypass | 通过欺骗进行身份验证绕过 |
CWE-664 | C/C++ | cpp/cleartext-storage-buffer | 敏感信息在缓冲区中的明文存储 |
CWE-664 | C/C++ | cpp/cleartext-storage-file | 敏感信息在文件中的明文存储 |
CWE-664 | C/C++ | cpp/cleartext-transmission | 敏感信息的明文传输 |
CWE-664 | C/C++ | cpp/cleartext-storage-database | 敏感信息在 SQLite 数据库中的明文存储 |
CWE-664 | C/C++ | cpp/iterator-to-expired-container | 指向已失效容器的迭代器 |
CWE-664 | C/C++ | cpp/use-of-string-after-lifetime-ends | 在生命周期结束之后使用字符串 |
CWE-664 | C/C++ | cpp/use-of-unique-pointer-after-lifetime-ends | 在生命周期结束之后使用独占指针 |
CWE-664 | C/C++ | cpp/unsafe-create-process-call | 在调用 CreateProcess 时,应用程序名称为 NULL,路径未加引号 |
CWE-664 | C/C++ | cpp/conditionally-uninitialized-variable | 有条件地未初始化的变量 |
CWE-664 | C/C++ | cpp/system-data-exposure | 系统数据暴露给未经授权的控制领域 |
CWE-664 | C/C++ | cpp/potential-system-data-exposure | 敏感系统数据潜在暴露给未经授权的控制领域 |
CWE-664 | C/C++ | cpp/external-entity-expansion | XML 外部实体扩展 |
CWE-664 | C/C++ | cpp/incorrect-string-type-conversion | 从 char* 转换为 wchar_t* |
CWE-664 | C/C++ | cpp/world-writable-file-creation | 创建文件时没有限制权限 |
CWE-664 | C/C++ | cpp/open-call-with-mode-argument | 使用 O_CREAT 标志打开文件,但没有提供模式参数 |
CWE-664 | C/C++ | cpp/unsafe-dacl-security-descriptor | 在 SECURITY_DESCRIPTOR 中将 DACL 设置为 NULL |
CWE-664 | C/C++ | cpp/lock-order-cycle | 循环锁顺序依赖 |
CWE-664 | C/C++ | cpp/twice-locked | 互斥锁被锁定两次 |
CWE-664 | C/C++ | cpp/unreleased-lock | 锁可能未被释放 |
CWE-664 | C/C++ | cpp/type-confusion | 类型混淆 |
CWE-664 | C/C++ | cpp/work-with-file-without-permissions-rights | 在没有设置权限的情况下写入文件。 |
CWE-664 | C/C++ | cpp/work-with-changing-working-directories | 查找带有安全错误的更改工作目录的操作。 |
CWE-664 | C/C++ | cpp/wrong-use-of-the-umask | 查找 umask 函数的错误使用方式。 |
CWE-664 | C/C++ | cpp/drop-linux-privileges-outoforder | LinuxPrivilegeDroppingOutoforder |
CWE-664 | C/C++ | cpp/pam-auth-bypass | PAM 身份验证绕过 |
CWE-664 | C/C++ | cpp/private-cleartext-write | 私人信息的泄露 |
CWE-664 | C/C++ | cpp/insecure-generation-of-filename | 不安全的文件名生成。 |
CWE-664 | C/C++ | cpp/memory-leak-on-failed-call-to-realloc | 对 realloc 的失败调用导致内存泄漏 |
CWE-664 | C/C++ | cpp/experimental-double-free | 双重释放错误 |
CWE-664 | C/C++ | cpp/use-after-expired-lifetime | 在对象生命周期结束后使用对象 |
CWE-664 | C/C++ | cpp/dangerous-use-of-exception-blocks | 危险地使用异常块。 |
CWE-664 | C/C++ | cpp/double-release | 双重释放错误 |
CWE-664 | C/C++ | cpp/improper-check-return-value-scanf | 对 scanf 返回值的错误检查 |
CWE-664 | C/C++ | cpp/resource-not-released-in-destructor | 资源在析构函数中未释放 |
CWE-665 | C/C++ | cpp/global-use-before-init | 全局变量可能在初始化之前使用 |
CWE-665 | C/C++ | cpp/initialization-not-run | 初始化代码未运行 |
CWE-665 | C/C++ | cpp/not-initialised | 变量在使用前未初始化 |
CWE-665 | C/C++ | cpp/alloca-in-loop | 在循环中调用 alloca |
CWE-665 | C/C++ | cpp/improper-null-termination | 潜在的非正常空终止 |
CWE-665 | C/C++ | cpp/uninitialized-local | 可能未初始化的局部变量 |
CWE-665 | C/C++ | cpp/uncontrolled-allocation-size | 不受控制的分配大小溢出 |
CWE-665 | C/C++ | cpp/conditionally-uninitialized-variable | 有条件地未初始化的变量 |
CWE-666 | C/C++ | cpp/double-free | 潜在的双重释放 |
CWE-666 | C/C++ | cpp/use-after-free | 潜在的释放后使用 |
CWE-666 | C/C++ | cpp/return-stack-allocated-memory | 返回堆栈分配的内存 |
CWE-666 | C/C++ | cpp/using-expired-stack-address | 使用过期的堆栈地址 |
CWE-666 | C/C++ | cpp/self-assignment-check | 自赋值检查 |
CWE-666 | C/C++ | cpp/iterator-to-expired-container | 指向已失效容器的迭代器 |
CWE-666 | C/C++ | cpp/use-of-string-after-lifetime-ends | 在生命周期结束之后使用字符串 |
CWE-666 | C/C++ | cpp/use-of-unique-pointer-after-lifetime-ends | 在生命周期结束之后使用独占指针 |
CWE-666 | C/C++ | cpp/experimental-double-free | 双重释放错误 |
CWE-666 | C/C++ | cpp/use-after-expired-lifetime | 在对象生命周期结束后使用对象 |
CWE-666 | C/C++ | cpp/dangerous-use-of-exception-blocks | 危险地使用异常块。 |
CWE-666 | C/C++ | cpp/double-release | 双重释放错误 |
CWE-667 | C/C++ | cpp/lock-order-cycle | 循环锁顺序依赖 |
CWE-667 | C/C++ | cpp/twice-locked | 互斥锁被锁定两次 |
CWE-667 | C/C++ | cpp/unreleased-lock | 锁可能未被释放 |
CWE-668 | C/C++ | cpp/path-injection | 路径表达式中使用不受控制的数据 |
CWE-668 | C/C++ | cpp/cleartext-storage-file | 敏感信息在文件中的明文存储 |
CWE-668 | C/C++ | cpp/cleartext-transmission | 敏感信息的明文传输 |
CWE-668 | C/C++ | cpp/unsafe-create-process-call | 在调用 CreateProcess 时,应用程序名称为 NULL,路径未加引号 |
CWE-668 | C/C++ | cpp/system-data-exposure | 系统数据暴露给未经授权的控制领域 |
CWE-668 | C/C++ | cpp/potential-system-data-exposure | 敏感系统数据潜在暴露给未经授权的控制领域 |
CWE-668 | C/C++ | cpp/world-writable-file-creation | 创建文件时没有限制权限 |
CWE-668 | C/C++ | cpp/open-call-with-mode-argument | 使用 O_CREAT 标志打开文件,但没有提供模式参数 |
CWE-668 | C/C++ | cpp/unsafe-dacl-security-descriptor | 在 SECURITY_DESCRIPTOR 中将 DACL 设置为 NULL |
CWE-668 | C/C++ | cpp/work-with-file-without-permissions-rights | 在没有设置权限的情况下写入文件。 |
CWE-668 | C/C++ | cpp/wrong-use-of-the-umask | 查找 umask 函数的错误使用方式。 |
CWE-668 | C/C++ | cpp/private-cleartext-write | 私人信息的泄露 |
CWE-668 | C/C++ | cpp/insecure-generation-of-filename | 不安全的文件名生成。 |
CWE-669 | C/C++ | cpp/work-with-changing-working-directories | 查找带有安全错误的更改工作目录的操作。 |
CWE-670 | C/C++ | cpp/comma-before-misleading-indentation | 逗号之前有误导性的缩进 |
CWE-670 | C/C++ | cpp/assign-where-compare-meant | 赋值操作,应为比较操作 |
CWE-670 | C/C++ | cpp/compare-where-assign-meant | 比较操作,应为赋值操作 |
CWE-670 | C/C++ | cpp/incorrect-not-operator-usage | 不正确的 'not' 运算符使用 |
CWE-670 | C/C++ | cpp/logical-operator-applied-to-flag | 短路运算符应用于标志 |
CWE-670 | C/C++ | cpp/unsafe-use-of-this | 在构造函数中不安全地使用 this |
CWE-670 | C/C++ | cpp/dangerous-use-of-ssl-shutdown | 危险地使用 SSL_shutdown。 |
CWE-670 | C/C++ | cpp/operator-precedence-logic-error-when-use-bitwise-logical-operations | 使用位运算或逻辑运算时,运算符优先级逻辑错误 |
CWE-670 | C/C++ | cpp/operator-precedence-logic-error-when-use-bool-type | 使用布尔类型时,运算符优先级逻辑错误 |
CWE-672 | C/C++ | cpp/double-free | 潜在的双重释放 |
CWE-672 | C/C++ | cpp/use-after-free | 潜在的释放后使用 |
CWE-672 | C/C++ | cpp/return-stack-allocated-memory | 返回堆栈分配的内存 |
CWE-672 | C/C++ | cpp/using-expired-stack-address | 使用过期的堆栈地址 |
CWE-672 | C/C++ | cpp/iterator-to-expired-container | 指向已失效容器的迭代器 |
CWE-672 | C/C++ | cpp/use-of-string-after-lifetime-ends | 在生命周期结束之后使用字符串 |
CWE-672 | C/C++ | cpp/use-of-unique-pointer-after-lifetime-ends | 在生命周期结束之后使用独占指针 |
CWE-672 | C/C++ | cpp/experimental-double-free | 双重释放错误 |
CWE-672 | C/C++ | cpp/use-after-expired-lifetime | 在对象生命周期结束后使用对象 |
CWE-672 | C/C++ | cpp/dangerous-use-of-exception-blocks | 危险地使用异常块。 |
CWE-675 | C/C++ | cpp/double-free | 潜在的双重释放 |
CWE-675 | C/C++ | cpp/lock-order-cycle | 循环锁顺序依赖 |
CWE-675 | C/C++ | cpp/twice-locked | 互斥锁被锁定两次 |
CWE-675 | C/C++ | cpp/unreleased-lock | 锁可能未被释放 |
CWE-675 | C/C++ | cpp/experimental-double-free | 双重释放错误 |
CWE-675 | C/C++ | cpp/dangerous-use-of-exception-blocks | 危险地使用异常块。 |
CWE-675 | C/C++ | cpp/double-release | 双重释放错误 |
CWE-676 | C/C++ | cpp/bad-strncpy-size | 字符串复制中可能错误的缓冲区大小 |
CWE-676 | C/C++ | cpp/suspicious-call-to-memset | 对 memset 的可疑调用 |
CWE-676 | C/C++ | cpp/unsafe-strncat | 对 strncat 的潜在不安全调用 |
CWE-676 | C/C++ | cpp/unsafe-strcat | 对 strcat 的潜在不安全使用 |
CWE-676 | C/C++ | cpp/dangerous-function-overflow | 使用危险函数 |
CWE-676 | C/C++ | cpp/dangerous-cin | 对 “cin” 的危险使用 |
CWE-676 | C/C++ | cpp/potentially-dangerous-function | 使用潜在的危险函数 |
CWE-681 | C/C++ | cpp/bad-addition-overflow-check | 对整数加法溢出的错误检查 |
CWE-681 | C/C++ | cpp/integer-multiplication-cast-to-long | 乘法结果转换为更大的类型 |
CWE-681 | C/C++ | cpp/comparison-with-wider-type | 在循环条件中将窄类型与宽类型进行比较 |
CWE-681 | C/C++ | cpp/integer-overflow-tainted | 潜在的整数算术溢出 |
CWE-682 | C/C++ | cpp/overflow-calculated | 缓冲区不足以容纳字符串 |
CWE-682 | C/C++ | cpp/overflow-destination | 使用源大小的复制函数 |
CWE-682 | C/C++ | cpp/static-buffer-overflow | 静态数组访问可能会导致溢出 |
CWE-682 | C/C++ | cpp/allocation-too-small | 为指针类型分配的内存不足 |
CWE-682 | C/C++ | cpp/suspicious-allocation-size | 为指针类型数组分配的内存不足 |
CWE-682 | C/C++ | cpp/ambiguously-signed-bit-field | 符号不明确的位域成员 |
CWE-682 | C/C++ | cpp/bad-addition-overflow-check | 对整数加法溢出的错误检查 |
CWE-682 | C/C++ | cpp/integer-multiplication-cast-to-long | 乘法结果转换为更大的类型 |
CWE-682 | C/C++ | cpp/signed-overflow-check | 有符号溢出检查 |
CWE-682 | C/C++ | cpp/overflowing-snprintf | 对 snprintf 的潜在溢出调用 |
CWE-682 | C/C++ | cpp/suspicious-sizeof | 可疑的 'sizeof' 使用 |
CWE-682 | C/C++ | cpp/overrun-write | 溢出写入 |
CWE-682 | C/C++ | cpp/no-space-for-terminator | 没有为零终止符留出空间 |
CWE-682 | C/C++ | cpp/tainted-arithmetic | 算术表达式中的用户控制的数据 |
CWE-682 | C/C++ | cpp/uncontrolled-arithmetic | 算术表达式中的不受控制的数据 |
CWE-682 | C/C++ | cpp/arithmetic-with-extreme-values | 在算术表达式中使用极值 |
CWE-682 | C/C++ | cpp/comparison-with-wider-type | 在循环条件中将窄类型与宽类型进行比较 |
CWE-682 | C/C++ | cpp/integer-overflow-tainted | 潜在的整数算术溢出 |
CWE-682 | C/C++ | cpp/uncontrolled-allocation-size | 不受控制的分配大小溢出 |
CWE-682 | C/C++ | cpp/unsigned-difference-expression-compared-zero | 无符号差值表达式与零进行比较 |
CWE-682 | C/C++ | cpp/invalid-pointer-deref | 无效的指针解引用 |
CWE-682 | C/C++ | cpp/suspicious-pointer-scaling | 可疑的指针缩放 |
CWE-682 | C/C++ | cpp/incorrect-pointer-scaling-char | 可疑的指针缩放至 char |
CWE-682 | C/C++ | cpp/suspicious-pointer-scaling-void | 可疑的指针缩放至 void |
CWE-682 | C/C++ | cpp/suspicious-add-sizeof | 可疑的加法运算,使用 sizeof |
CWE-682 | C/C++ | cpp/multiplication-overflow-in-alloc | 乘法结果可能溢出并用于分配 |
CWE-682 | C/C++ | cpp/dangerous-use-of-transformation-after-operation | 在操作后危险地使用转换。 |
CWE-682 | C/C++ | cpp/divide-by-zero-using-return-value | 使用返回值进行除零 |
CWE-682 | C/C++ | cpp/signed-bit-field | 可能的带符号位域成员 |
CWE-685 | C/C++ | cpp/wrong-number-format-arguments | 格式化函数的参数过少 |
CWE-685 | C/C++ | cpp/too-few-arguments | 函数调用中参数数量少于声明的参数 |
CWE-686 | C/C++ | cpp/wrong-type-format-argument | 格式化函数的参数类型错误 |
CWE-687 | C/C++ | cpp/wrong-use-of-the-umask | 查找 umask 函数的错误使用方式。 |
CWE-691 | C/C++ | cpp/comma-before-misleading-indentation | 逗号之前有误导性的缩进 |
CWE-691 | C/C++ | cpp/assign-where-compare-meant | 赋值操作,应为比较操作 |
CWE-691 | C/C++ | cpp/compare-where-assign-meant | 比较操作,应为赋值操作 |
CWE-691 | C/C++ | cpp/incorrect-not-operator-usage | 不正确的 'not' 运算符使用 |
CWE-691 | C/C++ | cpp/logical-operator-applied-to-flag | 短路运算符应用于标志 |
CWE-691 | C/C++ | cpp/inconsistent-loop-direction | for 循环方向不一致 |
CWE-691 | C/C++ | cpp/unsafe-use-of-this | 在构造函数中不安全地使用 this |
CWE-691 | C/C++ | cpp/comparison-with-wider-type | 在循环条件中将窄类型与宽类型进行比较 |
CWE-691 | C/C++ | cpp/toctou-race-condition | 文件系统中的时间检查时间使用竞争条件 |
CWE-691 | C/C++ | cpp/lock-order-cycle | 循环锁顺序依赖 |
CWE-691 | C/C++ | cpp/twice-locked | 互斥锁被锁定两次 |
CWE-691 | C/C++ | cpp/unreleased-lock | 锁可能未被释放 |
CWE-691 | C/C++ | cpp/infinite-loop-with-unsatisfiable-exit-condition | 无法满足退出条件的无限循环 |
CWE-691 | C/C++ | cpp/linux-kernel-double-fetch-vulnerability | Linux 内核双重获取漏洞检测 |
CWE-691 | C/C++ | cpp/operator-find-incorrectly-used-switch | 不正确的 switch 语句 |
CWE-691 | C/C++ | cpp/dangerous-use-of-ssl-shutdown | 危险地使用 SSL_shutdown。 |
CWE-691 | C/C++ | cpp/errors-after-refactoring | 重构后的错误 |
CWE-691 | C/C++ | cpp/errors-when-using-bit-operations | 使用位运算时的错误 |
CWE-691 | C/C++ | cpp/operator-find-incorrectly-used-exceptions | 操作符“查找”不正确地使用异常 |
CWE-691 | C/C++ | cpp/operator-precedence-logic-error-when-use-bitwise-logical-operations | 使用位运算或逻辑运算时,运算符优先级逻辑错误 |
CWE-691 | C/C++ | cpp/operator-precedence-logic-error-when-use-bool-type | 使用布尔类型时,运算符优先级逻辑错误 |
CWE-693 | C/C++ | cpp/boost/tls-settings-misconfiguration | boost::asio TLS 设置配置错误 |
CWE-693 | C/C++ | cpp/boost/use-of-deprecated-hardcoded-security-protocol | boost::asio 使用过时的硬编码协议 |
CWE-693 | C/C++ | cpp/count-untrusted-data-external-api | 使用不可信数据访问外部 API 的频率统计 |
CWE-693 | C/C++ | cpp/count-untrusted-data-external-api-ir | 使用不可信数据访问外部 API 的频率统计 |
CWE-693 | C/C++ | cpp/untrusted-data-to-external-api-ir | 将不可信数据传递给外部 API |
CWE-693 | C/C++ | cpp/untrusted-data-to-external-api | 将不可信数据传递给外部 API |
CWE-693 | C/C++ | cpp/uncontrolled-process-operation | 不受控制的进程操作 |
CWE-693 | C/C++ | cpp/unclear-array-index-validation | 数组索引验证不明确 |
CWE-693 | C/C++ | cpp/uncontrolled-allocation-size | 不受控制的分配大小溢出 |
CWE-693 | C/C++ | cpp/user-controlled-bypass | 通过欺骗进行身份验证绕过 |
CWE-693 | C/C++ | cpp/certificate-result-conflation | 证书结果混淆 |
CWE-693 | C/C++ | cpp/certificate-not-checked | 没有检查证书 |
CWE-693 | C/C++ | cpp/cleartext-storage-buffer | 敏感信息在缓冲区中的明文存储 |
CWE-693 | C/C++ | cpp/cleartext-storage-file | 敏感信息在文件中的明文存储 |
CWE-693 | C/C++ | cpp/cleartext-transmission | 敏感信息的明文传输 |
CWE-693 | C/C++ | cpp/cleartext-storage-database | 敏感信息在 SQLite 数据库中的明文存储 |
CWE-693 | C/C++ | cpp/non-https-url | 没有使用 HTTPS URL |
CWE-693 | C/C++ | cpp/insufficient-key-size | 使用密钥大小不足的加密算法 |
CWE-693 | C/C++ | cpp/weak-cryptographic-algorithm | 使用破损或存在风险的加密算法 |
CWE-693 | C/C++ | cpp/openssl-heartbleed | 使用存在 Heartbleed 漏洞的 OpenSSL 版本 |
CWE-693 | C/C++ | cpp/world-writable-file-creation | 创建文件时没有限制权限 |
CWE-693 | C/C++ | cpp/open-call-with-mode-argument | 使用 O_CREAT 标志打开文件,但没有提供模式参数 |
CWE-693 | C/C++ | cpp/unsafe-dacl-security-descriptor | 在 SECURITY_DESCRIPTOR 中将 DACL 设置为 NULL |
CWE-693 | C/C++ | cpp/tainted-permissions-check | 条件的不可信输入 |
CWE-693 | C/C++ | cpp/late-check-of-function-argument | 函数参数的延迟检查 |
CWE-693 | C/C++ | cpp/linux-kernel-no-check-before-unsafe-put-user | Linux 内核在使用 unsafe_put_user 之前没有进行检查漏洞检测 |
CWE-693 | C/C++ | cpp/wrong-use-of-the-umask | 查找 umask 函数的错误使用方式。 |
CWE-693 | C/C++ | cpp/drop-linux-privileges-outoforder | LinuxPrivilegeDroppingOutoforder |
CWE-693 | C/C++ | cpp/pam-auth-bypass | PAM 身份验证绕过 |
CWE-693 | C/C++ | cpp/unknown-asymmetric-key-gen-size | 未知的密钥生成密钥大小 |
CWE-693 | C/C++ | cpp/weak-asymmetric-key-gen-size | 弱非对称密钥生成密钥大小(< 2048 位) |
CWE-693 | C/C++ | cpp/weak-block-mode | 弱块模式 |
CWE-693 | C/C++ | cpp/weak-elliptic-curve | 弱椭圆曲线 |
CWE-693 | C/C++ | cpp/weak-crypto/banned-encryption-algorithms | 弱密码学 |
CWE-693 | C/C++ | cpp/weak-crypto/banned-hash-algorithms | 弱密码学 |
CWE-697 | C/C++ | cpp/missing-case-in-switch | switch 中缺少枚举情况 |
CWE-697 | C/C++ | cpp/operator-find-incorrectly-used-switch | 不正确的 switch 语句 |
CWE-703 | C/C++ | cpp/incorrectly-checked-scanf | 对“scanf”类函数的返回值检查不正确 |
CWE-703 | C/C++ | cpp/missing-check-scanf | 缺少对“scanf”类函数的返回值检查 |
CWE-703 | C/C++ | cpp/return-value-ignored | 函数的返回值被忽略 |
CWE-703 | C/C++ | cpp/overflowing-snprintf | 对 snprintf 的潜在溢出调用 |
CWE-703 | C/C++ | cpp/wrong-number-format-arguments | 格式化函数的参数过少 |
CWE-703 | C/C++ | cpp/inconsistent-call-on-result | 对返回值进行不一致的操作 |
CWE-703 | C/C++ | cpp/too-few-arguments | 函数调用中参数数量少于声明的参数 |
CWE-703 | C/C++ | cpp/ignore-return-value-sal | SAL 需要检查返回值 |
CWE-703 | C/C++ | cpp/hresult-boolean-conversion | 在 HRESULT 和布尔类型之间进行转换 |
CWE-703 | C/C++ | cpp/incorrect-allocation-error-handling | 不正确的分配错误处理 |
CWE-703 | C/C++ | cpp/work-with-changing-working-directories | 查找带有安全错误的更改工作目录的操作。 |
CWE-703 | C/C++ | cpp/drop-linux-privileges-outoforder | LinuxPrivilegeDroppingOutoforder |
CWE-703 | C/C++ | cpp/operator-find-incorrectly-used-exceptions | 操作符“查找”不正确地使用异常 |
CWE-703 | C/C++ | cpp/improper-check-return-value-scanf | 对 scanf 返回值的错误检查 |
CWE-704 | C/C++ | cpp/bad-addition-overflow-check | 对整数加法溢出的错误检查 |
CWE-704 | C/C++ | cpp/integer-multiplication-cast-to-long | 乘法结果转换为更大的类型 |
CWE-704 | C/C++ | cpp/upcast-array-pointer-arithmetic | 向上转换的数组用在指针运算中 |
CWE-704 | C/C++ | cpp/comparison-with-wider-type | 在循环条件中将窄类型与宽类型进行比较 |
CWE-704 | C/C++ | cpp/integer-overflow-tainted | 潜在的整数算术溢出 |
CWE-704 | C/C++ | cpp/incorrect-string-type-conversion | 从 char* 转换为 wchar_t* |
CWE-704 | C/C++ | cpp/type-confusion | 类型混淆 |
CWE-705 | C/C++ | cpp/operator-find-incorrectly-used-exceptions | 操作符“查找”不正确地使用异常 |
CWE-706 | C/C++ | cpp/path-injection | 路径表达式中使用不受控制的数据 |
CWE-707 | C/C++ | cpp/non-constant-format | 非恒定格式字符串 |
CWE-707 | C/C++ | cpp/wrong-number-format-arguments | 格式化函数的参数过少 |
CWE-707 | C/C++ | cpp/improper-null-termination | 潜在的非正常空终止 |
CWE-707 | C/C++ | cpp/too-few-arguments | 函数调用中参数数量少于声明的参数 |
CWE-707 | C/C++ | cpp/command-line-injection | 在操作系统命令中使用不受控制的数据 |
CWE-707 | C/C++ | cpp/cgi-xss | 易受跨站脚本攻击的 CGI 脚本 |
CWE-707 | C/C++ | cpp/sql-injection | SQL 查询中的不受控制的数据 |
CWE-707 | C/C++ | cpp/tainted-format-string | 不受控制的格式字符串 |
CWE-707 | C/C++ | cpp/user-controlled-null-termination-tainted | 用户控制的数据可能没有空终止符 |
CWE-707 | C/C++ | cpp/wordexp-injection | 在 wordexp 命令中使用不受控制的数据 |
CWE-710 | C/C++ | cpp/unused-local-variable | 未使用的局部变量 |
CWE-710 | C/C++ | cpp/unused-static-function | 未使用的静态函数 |
CWE-710 | C/C++ | cpp/unused-static-variable | 未使用的静态变量 |
CWE-710 | C/C++ | cpp/dead-code-condition | 分支条件始终计算为相同的值 |
CWE-710 | C/C++ | cpp/dead-code-function | 函数从不调用 |
CWE-710 | C/C++ | cpp/dead-code-goto | 由于 goto 或 break 语句导致的死代码 |
CWE-710 | C/C++ | cpp/double-free | 潜在的双重释放 |
CWE-710 | C/C++ | cpp/inconsistent-nullness-testing | 对指针进行不一致的空值检查 |
CWE-710 | C/C++ | cpp/incorrectly-checked-scanf | 对“scanf”类函数的返回值检查不正确 |
CWE-710 | C/C++ | cpp/missing-check-scanf | 缺少对“scanf”类函数的返回值检查 |
CWE-710 | C/C++ | cpp/missing-null-test | 返回的指针没有被检查 |
CWE-710 | C/C++ | cpp/unused-variable | 变量被赋予一个从未读取的值 |
CWE-710 | C/C++ | cpp/fixme-comment | FIXME 注释 |
CWE-710 | C/C++ | cpp/todo-comment | TODO 注释 |
CWE-710 | C/C++ | cpp/overflowing-snprintf | 对 snprintf 的潜在溢出调用 |
CWE-710 | C/C++ | cpp/wrong-number-format-arguments | 格式化函数的参数过少 |
CWE-710 | C/C++ | cpp/wrong-type-format-argument | 格式化函数的参数类型错误 |
CWE-710 | C/C++ | cpp/inconsistent-null-check | 不一致的空值检查 |
CWE-710 | C/C++ | cpp/useless-expression | 表达式没有效果 |
CWE-710 | C/C++ | cpp/pointer-overflow-check | 指针溢出检查 |
CWE-710 | C/C++ | cpp/bad-strncpy-size | 字符串复制中可能错误的缓冲区大小 |
CWE-710 | C/C++ | cpp/suspicious-call-to-memset | 对 memset 的可疑调用 |
CWE-710 | C/C++ | cpp/unsafe-strncat | 对 strncat 的潜在不安全调用 |
CWE-710 | C/C++ | cpp/unsafe-strcat | 对 strcat 的潜在不安全使用 |
CWE-710 | C/C++ | cpp/redundant-null-check-simple | 由于先前的解引用导致的冗余空值检查 |
CWE-710 | C/C++ | cpp/too-few-arguments | 函数调用中参数数量少于声明的参数 |
CWE-710 | C/C++ | cpp/ignore-return-value-sal | SAL 需要检查返回值 |
CWE-710 | C/C++ | cpp/memset-may-be-deleted | 对 memset 的调用可能被删除 |
CWE-710 | C/C++ | cpp/hresult-boolean-conversion | 在 HRESULT 和布尔类型之间进行转换 |
CWE-710 | C/C++ | cpp/incorrect-allocation-error-handling | 不正确的分配错误处理 |
CWE-710 | C/C++ | cpp/dangerous-function-overflow | 使用危险函数 |
CWE-710 | C/C++ | cpp/dangerous-cin | 对 “cin” 的危险使用 |
CWE-710 | C/C++ | cpp/potentially-dangerous-function | 使用潜在的危险函数 |
CWE-710 | C/C++ | cpp/lock-order-cycle | 循环锁顺序依赖 |
CWE-710 | C/C++ | cpp/twice-locked | 互斥锁被锁定两次 |
CWE-710 | C/C++ | cpp/unreleased-lock | 锁可能未被释放 |
CWE-710 | C/C++ | cpp/deref-null-result | 函数结果中的空值解引用 |
CWE-710 | C/C++ | cpp/redundant-null-check-param | 参数冗余的空检查或缺少空检查 |
CWE-710 | C/C++ | cpp/work-with-changing-working-directories | 查找带有安全错误的更改工作目录的操作。 |
CWE-710 | C/C++ | cpp/wrong-use-of-the-umask | 查找 umask 函数的错误使用方式。 |
CWE-710 | C/C++ | cpp/experimental-double-free | 双重释放错误 |
CWE-710 | C/C++ | cpp/dangerous-use-of-exception-blocks | 危险地使用异常块。 |
CWE-710 | C/C++ | cpp/operator-find-incorrectly-used-switch | 不正确的 switch 语句 |
CWE-710 | C/C++ | cpp/double-release | 双重释放错误 |
CWE-710 | C/C++ | cpp/errors-of-undefined-program-behavior | 未定义程序行为的错误 |
CWE-732 | C/C++ | cpp/world-writable-file-creation | 创建文件时没有限制权限 |
CWE-732 | C/C++ | cpp/open-call-with-mode-argument | 使用 O_CREAT 标志打开文件,但没有提供模式参数 |
CWE-732 | C/C++ | cpp/unsafe-dacl-security-descriptor | 在 SECURITY_DESCRIPTOR 中将 DACL 设置为 NULL |
CWE-733 | C/C++ | cpp/memset-may-be-deleted | 对 memset 的调用可能被删除 |
CWE-754 | C/C++ | cpp/incorrectly-checked-scanf | 对“scanf”类函数的返回值检查不正确 |
CWE-754 | C/C++ | cpp/missing-check-scanf | 缺少对“scanf”类函数的返回值检查 |
CWE-754 | C/C++ | cpp/return-value-ignored | 函数的返回值被忽略 |
CWE-754 | C/C++ | cpp/overflowing-snprintf | 对 snprintf 的潜在溢出调用 |
CWE-754 | C/C++ | cpp/inconsistent-call-on-result | 对返回值进行不一致的操作 |
CWE-754 | C/C++ | cpp/ignore-return-value-sal | SAL 需要检查返回值 |
CWE-754 | C/C++ | cpp/hresult-boolean-conversion | 在 HRESULT 和布尔类型之间进行转换 |
CWE-754 | C/C++ | cpp/incorrect-allocation-error-handling | 不正确的分配错误处理 |
CWE-754 | C/C++ | cpp/work-with-changing-working-directories | 查找带有安全错误的更改工作目录的操作。 |
CWE-754 | C/C++ | cpp/drop-linux-privileges-outoforder | LinuxPrivilegeDroppingOutoforder |
CWE-754 | C/C++ | cpp/improper-check-return-value-scanf | 对 scanf 返回值的错误检查 |
CWE-755 | C/C++ | cpp/incorrect-allocation-error-handling | 不正确的分配错误处理 |
CWE-755 | C/C++ | cpp/operator-find-incorrectly-used-exceptions | 操作符“查找”不正确地使用异常 |
CWE-758 | C/C++ | cpp/pointer-overflow-check | 指针溢出检查 |
CWE-758 | C/C++ | cpp/memset-may-be-deleted | 对 memset 的调用可能被删除 |
CWE-758 | C/C++ | cpp/errors-of-undefined-program-behavior | 未定义程序行为的错误 |
CWE-764 | C/C++ | cpp/lock-order-cycle | 循环锁顺序依赖 |
CWE-764 | C/C++ | cpp/twice-locked | 互斥锁被锁定两次 |
CWE-764 | C/C++ | cpp/unreleased-lock | 锁可能未被释放 |
CWE-770 | C/C++ | cpp/alloca-in-loop | 在循环中调用 alloca |
CWE-770 | C/C++ | cpp/uncontrolled-allocation-size | 不受控制的分配大小溢出 |
CWE-772 | C/C++ | cpp/catch-missing-free | 泄漏的捕获 |
CWE-772 | C/C++ | cpp/descriptor-may-not-be-closed | 打开的描述符可能未关闭 |
CWE-772 | C/C++ | cpp/descriptor-never-closed | 打开的描述符从未关闭 |
CWE-772 | C/C++ | cpp/file-may-not-be-closed | 打开的文件可能未关闭 |
CWE-772 | C/C++ | cpp/file-never-closed | 打开的文件未关闭 |
CWE-772 | C/C++ | cpp/memory-may-not-be-freed | 内存可能未释放 |
CWE-772 | C/C++ | cpp/memory-never-freed | 内存从未释放 |
CWE-772 | C/C++ | cpp/new-free-mismatch | new/free 或 malloc/delete 不匹配 |
CWE-772 | C/C++ | cpp/memory-leak-on-failed-call-to-realloc | 对 realloc 的失败调用导致内存泄漏 |
CWE-775 | C/C++ | cpp/descriptor-may-not-be-closed | 打开的描述符可能未关闭 |
CWE-775 | C/C++ | cpp/descriptor-never-closed | 打开的描述符从未关闭 |
CWE-775 | C/C++ | cpp/file-may-not-be-closed | 打开的文件可能未关闭 |
CWE-775 | C/C++ | cpp/file-never-closed | 打开的文件未关闭 |
CWE-783 | C/C++ | cpp/operator-precedence-logic-error-when-use-bitwise-logical-operations | 使用位运算或逻辑运算时,运算符优先级逻辑错误 |
CWE-783 | C/C++ | cpp/operator-precedence-logic-error-when-use-bool-type | 使用布尔类型时,运算符优先级逻辑错误 |
CWE-787 | C/C++ | cpp/allocation-too-small | 为指针类型分配的内存不足 |
CWE-787 | C/C++ | cpp/suspicious-allocation-size | 为指针类型数组分配的内存不足 |
CWE-787 | C/C++ | cpp/overflow-buffer | 对内存访问函数的调用可能会导致缓冲区溢出 |
CWE-787 | C/C++ | cpp/badly-bounded-write | 边界不确定的写入 |
CWE-787 | C/C++ | cpp/overrunning-write | 潜在的溢出写入 |
CWE-787 | C/C++ | cpp/overrunning-write-with-float | 使用浮点数到字符串转换的潜在溢出写入 |
CWE-787 | C/C++ | cpp/unbounded-write | 无边界写入 |
CWE-787 | C/C++ | cpp/very-likely-overrunning-write | 可能发生的溢出写入 |
CWE-787 | C/C++ | cpp/unterminated-variadic-call | 未终止的可变参数调用 |
CWE-787 | C/C++ | cpp/no-space-for-terminator | 没有为零终止符留出空间 |
CWE-787 | C/C++ | cpp/invalid-pointer-deref | 无效的指针解引用 |
CWE-787 | C/C++ | cpp/sign-conversion-pointer-arithmetic | 在指针运算中使用无符号到有符号的转换 |
CWE-788 | C/C++ | cpp/allocation-too-small | 为指针类型分配的内存不足 |
CWE-788 | C/C++ | cpp/suspicious-allocation-size | 为指针类型数组分配的内存不足 |
CWE-788 | C/C++ | cpp/unsafe-strncat | 对 strncat 的潜在不安全调用 |
CWE-788 | C/C++ | cpp/overflow-buffer | 对内存访问函数的调用可能会导致缓冲区溢出 |
CWE-788 | C/C++ | cpp/unterminated-variadic-call | 未终止的可变参数调用 |
CWE-788 | C/C++ | cpp/no-space-for-terminator | 没有为零终止符留出空间 |
CWE-788 | C/C++ | cpp/openssl-heartbleed | 使用存在 Heartbleed 漏洞的 OpenSSL 版本 |
CWE-788 | C/C++ | cpp/access-memory-location-after-end-buffer-strlen | 访问缓冲区末尾之后的内存位置 |
CWE-789 | C/C++ | cpp/uncontrolled-allocation-size | 不受控制的分配大小溢出 |
CWE-805 | C/C++ | cpp/badly-bounded-write | 边界不确定的写入 |
CWE-805 | C/C++ | cpp/overrunning-write | 潜在的溢出写入 |
CWE-805 | C/C++ | cpp/overrunning-write-with-float | 使用浮点数到字符串转换的潜在溢出写入 |
CWE-805 | C/C++ | cpp/unbounded-write | 无边界写入 |
CWE-805 | C/C++ | cpp/very-likely-overrunning-write | 可能发生的溢出写入 |
CWE-805 | C/C++ | cpp/buffer-access-with-incorrect-length-value | 使用不正确的长度值访问缓冲区 |
CWE-807 | C/C++ | cpp/tainted-permissions-check | 条件的不可信输入 |
CWE-823 | C/C++ | cpp/late-negative-test | 指针偏移量在检查之前使用 |
CWE-823 | C/C++ | cpp/missing-negativity-test | 未检查的返回值用作偏移量 |
CWE-825 | C/C++ | cpp/double-free | 潜在的双重释放 |
CWE-825 | C/C++ | cpp/use-after-free | 潜在的释放后使用 |
CWE-825 | C/C++ | cpp/return-stack-allocated-memory | 返回堆栈分配的内存 |
CWE-825 | C/C++ | cpp/using-expired-stack-address | 使用过期的堆栈地址 |
CWE-825 | C/C++ | cpp/iterator-to-expired-container | 指向已失效容器的迭代器 |
CWE-825 | C/C++ | cpp/use-of-string-after-lifetime-ends | 在生命周期结束之后使用字符串 |
CWE-825 | C/C++ | cpp/use-of-unique-pointer-after-lifetime-ends | 在生命周期结束之后使用独占指针 |
CWE-825 | C/C++ | cpp/experimental-double-free | 双重释放错误 |
CWE-825 | C/C++ | cpp/use-after-expired-lifetime | 在对象生命周期结束后使用对象 |
CWE-825 | C/C++ | cpp/dangerous-use-of-exception-blocks | 危险地使用异常块。 |
CWE-826 | C/C++ | cpp/self-assignment-check | 自赋值检查 |
CWE-833 | C/C++ | cpp/lock-order-cycle | 循环锁顺序依赖 |
CWE-833 | C/C++ | cpp/twice-locked | 互斥锁被锁定两次 |
CWE-833 | C/C++ | cpp/unreleased-lock | 锁可能未被释放 |
CWE-834 | C/C++ | cpp/inconsistent-loop-direction | for 循环方向不一致 |
CWE-834 | C/C++ | cpp/comparison-with-wider-type | 在循环条件中将窄类型与宽类型进行比较 |
CWE-834 | C/C++ | cpp/infinite-loop-with-unsatisfiable-exit-condition | 无法满足退出条件的无限循环 |
CWE-835 | C/C++ | cpp/inconsistent-loop-direction | for 循环方向不一致 |
CWE-835 | C/C++ | cpp/comparison-with-wider-type | 在循环条件中将窄类型与宽类型进行比较 |
CWE-835 | C/C++ | cpp/infinite-loop-with-unsatisfiable-exit-condition | 无法满足退出条件的无限循环 |
CWE-843 | C/C++ | cpp/upcast-array-pointer-arithmetic | 向上转换的数组用在指针运算中 |
CWE-843 | C/C++ | cpp/type-confusion | 类型混淆 |
CWE-908 | C/C++ | cpp/improper-check-return-value-scanf | 对 scanf 返回值的错误检查 |
CWE-909 | C/C++ | cpp/initialization-not-run | 初始化代码未运行 |
CWE-922 | C/C++ | cpp/cleartext-storage-buffer | 敏感信息在缓冲区中的明文存储 |
CWE-922 | C/C++ | cpp/cleartext-storage-file | 敏感信息在文件中的明文存储 |
CWE-922 | C/C++ | cpp/cleartext-storage-database | 敏感信息在 SQLite 数据库中的明文存储 |
CWE-943 | C/C++ | cpp/sql-injection | SQL 查询中的不受控制的数据 |
CWE-1041 | C/C++ | cpp/call-to-function-without-wrapper | 错失了调用包装函数的机会 |
CWE-1078 | C/C++ | cpp/comma-before-misleading-indentation | 逗号之前有误导性的缩进 |
CWE-1126 | C/C++ | cpp/errors-when-using-variable-declaration-inside-loop | 在循环内部使用变量声明时的错误 |
CWE-1240 | C/C++ | cpp/crypto-primitive | 加密原语的实现 |