Juliet C/C++ 1.3 Test suite #112
DownloadDescription
A collection of test cases in the C/C++ language. It contains examples organized under 118 different CWEs. Version 1.3 adds test cases for increment and decrement and fixes some dozen systematic problems in 1.2 cases.
All documents related to the Juliet Test Suite can be found at the documents page.
This software is not subject to copyright protection and is in the public domain. NIST assumes no responsibility whatsoever for its use by other parties, and makes no guaranties, expressed or implied, about its quality, reliability, or any other characteristic.
Pursuant to 17 USC 105, Juliet Test Suite for C/C++ version 1.3 is not subject to copyright protection in the United States. To the extent NIST may claim Foreign Rights in Juliet Test Suite for C/C++ version 1.3, the Test Suite is being made available to you under the CC0 1.0 Public Domain License.
Documentation
-
CWE: 122 Heap Based Buffer Overflow BadSource: Allocate using new[] and set data pointer to a small buffer GoodSource: Allocate using new[] and set data pointer to a large buffer Sink: ncpy BadSink : Copy string to data using wcsncpy Flow Variant: 42 Data flow: data returned from one functi...
-
CWE: 122 Heap Based Buffer Overflow BadSource: Allocate using new[] and set data pointer to a small buffer GoodSource: Allocate using new[] and set data pointer to a large buffer Sinks: ncpy BadSink : Copy string to data using wcsncpy Flow Variant: 43 Data flow: data flows using a C++ refer...
-
CWE: 122 Heap Based Buffer Overflow BadSource: Allocate using new[] and set data pointer to a small buffer GoodSource: Allocate using new[] and set data pointer to a large buffer Sinks: ncpy BadSink : Copy string to data using wcsncpy Flow Variant: 44 Data/control flow: data passed as an ar...
-
CWE: 122 Heap Based Buffer Overflow BadSource: Allocate using new[] and set data pointer to a small buffer GoodSource: Allocate using new[] and set data pointer to a large buffer Sinks: ncpy BadSink : Copy string to data using wcsncpy Flow Variant: 45 Data flow: data passed as a static glob...
-
CWE: 122 Heap Based Buffer Overflow BadSource: Allocate using new[] and set data pointer to a small buffer GoodSource: Allocate using new[] and set data pointer to a large buffer Sink: ncpy BadSink : Copy string to data using wcsncpy Flow Variant: 51 Data flow: data passed as an argument fr...
-
CWE: 122 Heap Based Buffer Overflow BadSource: Allocate using new[] and set data pointer to a small buffer GoodSource: Allocate using new[] and set data pointer to a large buffer Sink: ncpy BadSink : Copy string to data using wcsncpy Flow Variant: 52 Data flow: data passed as an argument fr...
-
CWE: 122 Heap Based Buffer Overflow BadSource: Allocate using new[] and set data pointer to a small buffer GoodSource: Allocate using new[] and set data pointer to a large buffer Sink: ncpy BadSink : Copy string to data using wcsncpy Flow Variant: 53 Data flow: data passed as an argument fr...
-
CWE: 122 Heap Based Buffer Overflow BadSource: Allocate using new[] and set data pointer to a small buffer GoodSource: Allocate using new[] and set data pointer to a large buffer Sink: ncpy BadSink : Copy string to data using wcsncpy Flow Variant: 54 Data flow: data passed as an argument fr...
-
CWE: 122 Heap Based Buffer Overflow BadSource: Allocate using new[] and set data pointer to a small buffer GoodSource: Allocate using new[] and set data pointer to a large buffer Sinks: ncpy BadSink : Copy string to data using wcsncpy Flow Variant: 61 Data flow: data returned from one funct...
-
CWE: 122 Heap Based Buffer Overflow BadSource: Allocate using new[] and set data pointer to a small buffer GoodSource: Allocate using new[] and set data pointer to a large buffer Sinks: ncpy BadSink : Copy string to data using wcsncpy Flow Variant: 62 Data flow: data flows using a C++ refer...
-
CWE: 122 Heap Based Buffer Overflow BadSource: Allocate using new[] and set data pointer to a small buffer GoodSource: Allocate using new[] and set data pointer to a large buffer Sinks: ncpy BadSink : Copy string to data using wcsncpy Flow Variant: 63 Data flow: pointer to data passed from ...
-
CWE: 122 Heap Based Buffer Overflow BadSource: Allocate using new[] and set data pointer to a small buffer GoodSource: Allocate using new[] and set data pointer to a large buffer Sinks: ncpy BadSink : Copy string to data using wcsncpy Flow Variant: 64 Data flow: void pointer to data passed ...
-
CWE: 122 Heap Based Buffer Overflow BadSource: Allocate using new[] and set data pointer to a small buffer GoodSource: Allocate using new[] and set data pointer to a large buffer Sinks: ncpy BadSink : Copy string to data using wcsncpy Flow Variant: 65 Data/control flow: data passed as an ar...
-
CWE: 122 Heap Based Buffer Overflow BadSource: Allocate using new[] and set data pointer to a small buffer GoodSource: Allocate using new[] and set data pointer to a large buffer Sinks: ncpy BadSink : Copy string to data using wcsncpy Flow Variant: 66 Data flow: data passed in an array from...
-
CWE: 122 Heap Based Buffer Overflow BadSource: Allocate using new[] and set data pointer to a small buffer GoodSource: Allocate using new[] and set data pointer to a large buffer Sinks: ncpy BadSink : Copy string to data using wcsncpy Flow Variant: 67 Data flow: data passed in a struct from...
-
CWE: 122 Heap Based Buffer Overflow BadSource: Allocate using new[] and set data pointer to a small buffer GoodSource: Allocate using new[] and set data pointer to a large buffer Sink: ncpy BadSink : Copy string to data using wcsncpy Flow Variant: 68 Data flow: data passed as a global varia...
-
CWE: 122 Heap Based Buffer Overflow BadSource: Allocate using new[] and set data pointer to a small buffer GoodSource: Allocate using new[] and set data pointer to a large buffer Sinks: ncpy BadSink : Copy string to data using wcsncpy Flow Variant: 72 Data flow: data passed in a vector from...
-
CWE: 122 Heap Based Buffer Overflow BadSource: Allocate using new[] and set data pointer to a small buffer GoodSource: Allocate using new[] and set data pointer to a large buffer Sinks: ncpy BadSink : Copy string to data using wcsncpy Flow Variant: 73 Data flow: data passed in a list from o...
-
CWE: 122 Heap Based Buffer Overflow BadSource: Allocate using new[] and set data pointer to a small buffer GoodSource: Allocate using new[] and set data pointer to a large buffer Sinks: ncpy BadSink : Copy string to data using wcsncpy Flow Variant: 74 Data flow: data passed in a map from on...
-
CWE: 122 Heap Based Buffer Overflow BadSource: Allocate using new[] and set data pointer to a small buffer GoodSource: Allocate using new[] and set data pointer to a large buffer Sinks: ncpy BadSink : Copy string to data using wcsncpy Flow Variant: 81 Data flow: data passed in a parameter t...
-
CWE: 122 Heap Based Buffer Overflow BadSource: Allocate using new[] and set data pointer to a small buffer GoodSource: Allocate using new[] and set data pointer to a large buffer Sinks: ncpy BadSink : Copy string to data using wcsncpy Flow Variant: 82 Data flow: data passed in a parameter t...
-
CWE: 122 Heap Based Buffer Overflow BadSource: Allocate using new[] and set data pointer to a small buffer GoodSource: Allocate using new[] and set data pointer to a large buffer Sinks: ncpy BadSink : Copy string to data using wcsncpy Flow Variant: 83 Data flow: data passed to class constru...
-
CWE: 122 Heap Based Buffer Overflow BadSource: Allocate using new[] and set data pointer to a small buffer GoodSource: Allocate using new[] and set data pointer to a large buffer Sinks: ncpy BadSink : Copy string to data using wcsncpy Flow Variant: 84 Data flow: data passed to class constru...
-
CWE: 122 Heap Based Buffer Overflow BadSource: Allocate using new[] and set data pointer to a small buffer GoodSource: Allocate using new[] and set data pointer to a large buffer Sink: snprintf BadSink : Copy string to data using snprintf Flow Variant: 22 Control flow: Flow controlled by va...
-
CWE: 122 Heap Based Buffer Overflow BadSource: Allocate using new[] and set data pointer to a small buffer GoodSource: Allocate using new[] and set data pointer to a large buffer Sinks: snprintf BadSink : Copy string to data using snprintf Flow Variant: 61 Data flow: data returned from one ...