CWE IDs mapped to Klocwork C and C++ checkers
From current
(Redirected from CWE IDs mapped to Klocwork C and C++ issue types)
Reference > Coding standards > CWE IDs mapped to Klocwork C and C++ checkers
This mapping is based on CWE version 2.1.
See also C and C++ checker reference.
| CWE ID | Klocwork Issue Code and Description |
| 20 | ABV.TAINTED Buffer Overflow from Unvalidated Input SV.TAINTED.ALLOC_SIZE Use of Unvalidated Integer in Memory Allocation SV.TAINTED.CALL.INDEX_ACCESS Use of Unvalidated Integer as Array Index by Function Call |
| 22 | SV.DLLPRELOAD.NONABSOLUTE.DLL Loading File without Use of Absolute Path |
| 73 | SV.DLLPRELOAD.NONABSOLUTE.DLL Loading File without Use of Absolute Path |
| 74 | SV.TAINTED.INJECTION Command Injection |
| 77 | SV.CODE_INJECTION.SHELL_EXEC Command Injection into Shell Execution |
| 78 | NNTS.TAINTED Unvalidated User Input Causing Buffer Overflow - Non-Null Terminated String SV.TAINTED.INJECTION Command Injection |
| 88 | SV.TAINTED.INJECTION Command Injection NNTS.TAINTED Unvalidated User Input Causing Buffer Overflow - Non-Null Terminated String |
| 119 | SV.TAINTED.LOOP_BOUND Use of Unvalidated Integer in Loop Condition ABR Buffer Overflow - Array Index Out of Bounds ABV.ITERATOR Buffer Overflow - Array Index may be out of Bounds |
| 120 | ABR Buffer Overflow - Array Index Out of Bounds NNTS.TAINTED Unvalidated User Input Causing Buffer Overflow - Non-Null Terminated String SV.STRBO.UNBOUND_COPY Buffer Overflow in Unbound String Copy SV.STRBO.UNBOUND_SPRINTF Buffer Overflow in Unbound sprintf |
| 129 | SV.TAINTED.ALLOC_SIZE Use of Unvalidated Integer in Memory Allocation ABV.TAINTED Buffer Overflow from Unvalidated Input SV.TAINTED.CALL.INDEX_ACCESS Use of Unvalidated Integer as Array Index by Function Call SV.TAINTED.INDEX_ACCESS Use of Unvalidated Integer as Array Index |
| 134 | SV.TAINTED.FMTSTR Use of Unvalidated Data in a Format String SV.FMTSTR.GENERIC Format String Vulnerability |
| 135 | SV.FMT_STR.BAD_SCAN_FORMAT Input format specifier error |
| 170 | NNTS.TAINTED Unvalidated User Input Causing Buffer Overflow - Non-Null Terminated String NNTS.MIGHT Buffer Overflow - Non-null Terminated String NNTS.MUST Buffer Overflow - Non-null Terminated String SV.STRBO.BOUND_COPY Buffer Overflow in Bound String Copy SV.STRBO.BOUND_SPRINTF Buffer Overflow in Bound sprintf |
| 193 | SV.STRBO.BOUND_COPY Buffer Overflow in Bound String Copy SV.STRBO.BOUND_SPRINTF Buffer Overflow in Bound sprintf |
| 197 | PRECISION.LOSS Loss of Precision |
| 242 | SV.PIPE.VAR Use of Insecure Parameter for Dangerous Functions - possible SV.FIU.PROCESS_VARIANTS Use of Dangerous Process Creation SV.STRBO.UNBOUND_COPY Buffer Overflow in Unbound String Copy SV.USAGERULES.PROCESS_VARIANTS Use of Dangerous Process Creation Function SV.STRBO.UNBOUND_SPRINTF Buffer Overflow in Unbound sprintf |
| 250 | SV.USAGERULES.PERMISSIONS Use of function that manipulates Access Control Lists |
| 265 | SV.USAGERULES.PERMISSIONS Use of function that manipulates Access Control Lists |
| 272 | SV.BRM.HKEY_LOCAL_MACHINE HKEY_LOCAL_MACHINE Used as 'hkey' Parameter for Registry Manipulation Function |
| 284 | SV.LPP.CONST, SV.PIPE.CONST Use of Insecure Macro for Dangerous Functions SV.LPP.VAR Use of Insecure Parameter for Dangerous Functions |
| 367 | SV.TOCTOU.FILE_ACCESS Time of Creation/Time of Use Race condition in File Access |
| 391 | SV.RVT.RETVAL_NOTTESTED Ignored Return Value |
| 401 | FREE.INCONSISTENT Inconsistent Freeing of Memory MLK.MIGHT Memory Leak - possible MLK.MUST Memory Leak |
| 403 | RH.LEAK Resource leak |
| 404 | RH.LEAK Resource leak FMM.MIGHT Freeing Mismatched Memory - possible FMM.MUST Freeing Mismatched Memory |
| 415 | UFM.FFM.MIGHT Use of free memory (double free) - possible UFM.FFM.MUST Freeing Freed Memory |
| 416 | UFM.DEREF.MIGHT Use of free memory (access) - possible UFM.DEREF.MUST Use of Freed Memory by Pointer UFM.RETURN.MIGHT Use of freed memory (return) - possible UFM.RETURN.MUST Use of Freed Memory on Return UFM.USE.MIGHT Use of free memory - possible UFM.USE.MUST Use of Freed Memory |
| 457 | UNINIT.CTOR.MIGHT Uninitialized Variable in Constructor - possible UNINIT.CTOR.MUST Uninitialized Variable in Constructor UNINIT.HEAP.MIGHT Uninitialized Heap Use - possible UNINIT.HEAP.MUST Uninitialized Heap Use UNINIT.STACK.MIGHT Uninitialized Variable - possible UNINIT.STACK.MUST Uninitialized Variable |
| 467 | INCORRECT.ALLOC_SIZE Incorrect Allocation Size |
| 476 | NPD.CHECK.CALL.MIGHT Pointer may be passed to function that can dereference it after it was positively checked for NULL NPD.CHECK.CALL.MUST Pointer will be passed to function that may dereference it after it was positively checked for NULL NPD.CHECK.MIGHT Pointer may be dereferenced after it was positively checked for NULL NPD.CHECK.MUST Pointer will be dereferenced after it was positively checked for NULL NPD.CONST.CALL NULL is passed to function that can dereference it NPD.CONST.DEREF NULL is dereferenced NPD.FUNC.CALL.MIGHT Result of function that may return NULL may be passed to another function that may dereference it NPD.FUNC.CALL.MUST Result of function that may return NULL will be passed to another function that may dereference it NPD.FUNC.MIGHT Result of function that can return NULL may be dereferenced NPD.FUNC.MUST Result of function that may return NULL will be dereferenced NPD.GEN.CALL.MIGHT Null pointer may be passed to function that may dereference it NPD.GEN.CALL.MUST Null pointer will be passed to function that may dereference it NPD.GEN.MIGHT Null pointer may be dereferenced NPD.GEN.MUST Null pointer will be dereferenced RNPD.CALL Suspicious dereference of pointer in function call before NULL check RNPD.DEREF Suspicious dereference of pointer before NULL check |
| 478 | LA_UNUSED Label unused |
| 480 | SEMICOL Suspiciously placed semicolon ASSIGCOND.CALL Assignment in condition (call) ASSIGCOND.GEN Assignment in condition EFFECT Statement has no effect |
| 482 | ASSIGCOND.CALL Assignment in condition (call) ASSIGCOND.GEN Assignment in condition |
| 561 | UNREACH.GEN Unreachable code UNREACH.RETURN Unreachable return VA_UNUSED.GEN Value is Never Used after Assignment VA_UNUSED.INIT Value is Never Used after Initialization LA_UNUSED Label unused |
| 562 | LOCRET.ARG Function returns address of local variable LOCRET.GLOB Function returns address of local variable LOCRET.RET Function returns address of local variable |
| 563 | LV_UNUSED.GEN Local variable unused |
| 590 | FNH.MIGHT Freeing Non-Heap Memory - possible FNH.MUST Freeing Non-Heap Memory FUM.GEN.MIGHT Freeing Unallocated Memory - possible FUM.GEN.MUST Freeing Unallocated Memory |
| 686 | SV.FMT_STR.PRINT_FORMAT_MISMATCH.BAD Incompatible type of a print function parameter SV.FMT_STR.PRINT_FORMAT_MISMATCH.UNDESIRED Unexpected type of a print function parameter SV.FMT_STR.PRINT_IMPROP_LENGTH Improper use of length modifier in a print function call SV.FMT_STR.PRINT_PARAMS_WRONGNUM.FEW Too few arguments in a print function call SV.FMT_STR.PRINT_PARAMS_WRONGNUM.MANY Too many arguments in a print function call SV.FMT_STR.UNKWN_FORMAT Unknown format specifier in a print function call |
| 754 | SV.RVT.RETVAL_NOTTESTED Ignored Return Value |


