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: 15 External Control of System or Configuration Setting BadSource: Get the hostname from a network socket GoodSource: Get the hostname from a string literal Sink: BadSink : Set the hostname Flow Variant: 42 Data flow: data returned from one function to another in the same source file
-
CWE: 15 External Control of System or Configuration Setting BadSource: Get the hostname from a network socket GoodSource: Get the hostname from a string literal Sinks: BadSink : Set the hostname Flow Variant: 43 Data flow: data flows using a C++ reference from one function to another in the...
-
CWE: 15 External Control of System or Configuration Setting BadSource: Get the hostname from a network socket GoodSource: Get the hostname from a string literal Sinks: BadSink : Set the hostname Flow Variant: 44 Data/control flow: data passed as an argument from one function to a function i...
-
CWE: 15 External Control of System or Configuration Setting BadSource: Get the hostname from a network socket GoodSource: Get the hostname from a string literal Sinks: BadSink : Set the hostname Flow Variant: 45 Data flow: data passed as a static global variable from one function to another...
-
CWE: 15 External Control of System or Configuration Setting BadSource: Get the hostname from a network socket GoodSource: Get the hostname from a string literal Sink: BadSink : Set the hostname Flow Variant: 51 Data flow: data passed as an argument from one function to another in different ...
-
CWE: 15 External Control of System or Configuration Setting BadSource: Get the hostname from a network socket GoodSource: Get the hostname from a string literal Sink: BadSink : Set the hostname Flow Variant: 52 Data flow: data passed as an argument from one function to another to another in...
-
CWE: 15 External Control of System or Configuration Setting BadSource: Get the hostname from a network socket GoodSource: Get the hostname from a string literal Sink: BadSink : Set the hostname Flow Variant: 53 Data flow: data passed as an argument from one function through two others to a ...
-
CWE: 15 External Control of System or Configuration Setting BadSource: Get the hostname from a network socket GoodSource: Get the hostname from a string literal Sink: BadSink : Set the hostname Flow Variant: 54 Data flow: data passed as an argument from one function through three others to ...
-
CWE: 15 External Control of System or Configuration Setting BadSource: Get the hostname from a network socket GoodSource: Get the hostname from a string literal Sinks: BadSink : Set the hostname Flow Variant: 61 Data flow: data returned from one function to another in different source files
-
CWE: 15 External Control of System or Configuration Setting BadSource: Get the hostname from a network socket GoodSource: Get the hostname from a string literal Sinks: BadSink : Set the hostname Flow Variant: 62 Data flow: data flows using a C++ reference from one function to another in dif...
-
CWE: 15 External Control of System or Configuration Setting BadSource: Get the hostname from a network socket GoodSource: Get the hostname from a string literal Sinks: BadSink : Set the hostname Flow Variant: 63 Data flow: pointer to data passed from one function to another in different sou...
-
CWE: 15 External Control of System or Configuration Setting BadSource: Get the hostname from a network socket GoodSource: Get the hostname from a string literal Sinks: BadSink : Set the hostname Flow Variant: 64 Data flow: void pointer to data passed from one function to another in differen...
-
CWE: 15 External Control of System or Configuration Setting BadSource: Get the hostname from a network socket GoodSource: Get the hostname from a string literal Sinks: BadSink : Set the hostname Flow Variant: 65 Data/control flow: data passed as an argument from one function to a function i...
-
CWE: 15 External Control of System or Configuration Setting BadSource: Get the hostname from a network socket GoodSource: Get the hostname from a string literal Sinks: BadSink : Set the hostname Flow Variant: 66 Data flow: data passed in an array from one function to another in different so...
-
CWE: 15 External Control of System or Configuration Setting BadSource: Get the hostname from a network socket GoodSource: Get the hostname from a string literal Sinks: BadSink : Set the hostname Flow Variant: 67 Data flow: data passed in a struct from one function to another in different so...
-
CWE: 15 External Control of System or Configuration Setting BadSource: Get the hostname from a network socket GoodSource: Get the hostname from a string literal Sink: BadSink : Set the hostname Flow Variant: 68 Data flow: data passed as a global variable from one function to another in diff...
-
CWE: 15 External Control of System or Configuration Setting BadSource: Get the hostname from a network socket GoodSource: Get the hostname from a string literal Sinks: BadSink : Set the hostname Flow Variant: 72 Data flow: data passed in a vector from one function to another in different so...
-
CWE: 15 External Control of System or Configuration Setting BadSource: Get the hostname from a network socket GoodSource: Get the hostname from a string literal Sinks: BadSink : Set the hostname Flow Variant: 73 Data flow: data passed in a list from one function to another in different sour...
-
CWE: 15 External Control of System or Configuration Setting BadSource: Get the hostname from a network socket GoodSource: Get the hostname from a string literal Sinks: BadSink : Set the hostname Flow Variant: 74 Data flow: data passed in a map from one function to another in different sourc...
-
CWE: 15 External Control of System or Configuration Setting BadSource: Get the hostname from a network socket GoodSource: Get the hostname from a string literal Sinks: BadSink : Set the hostname Flow Variant: 81 Data flow: data passed in a parameter to an virtual method called via a reference
-
CWE: 15 External Control of System or Configuration Setting BadSource: Get the hostname from a network socket GoodSource: Get the hostname from a string literal BadSink : Set the hostname Flow Variant: 82 Data flow: data passed in a parameter to an virtual method called via a pointer
-
CWE: 15 External Control of System or Configuration Setting BadSource: Get the hostname from a network socket GoodSource: Get the hostname from a string literal Sinks: BadSink : Set the hostname Flow Variant: 83 Data flow: data passed to class constructor and destructor by declaring the cla...
-
CWE: 15 External Control of System or Configuration Setting BadSource: Get the hostname from a network socket GoodSource: Get the hostname from a string literal Sinks: BadSink : Set the hostname Flow Variant: 84 Data flow: data passed to class constructor and destructor by declaring the cla...
-
CWE: 176 Improper Handling of Unicode Encoding BadSource: Initialize data as a large unicode string GoodSource: Initialize data as a small unicode string Sinks: GoodSink: Ensure the array index is valid BadSink : Improperly check the array index by not checking the upper bound Flow Variant...
-
CWE: 176 Improper Handling of Unicode Encoding BadSource: Initialize data as a large unicode string GoodSource: Initialize data as a small unicode string Sinks: GoodSink: Ensure the array index is valid BadSink : Improperly check the array index by not checking the upper bound Flow Variant...