Пример #1
0
        /* goodB2G() - use BadSource and GoodSink */
        private static void GoodB2G()
        {
            int data;

            data = int.MinValue; /* Initialize data */
            /* get environment variable ADD */
            /* POTENTIAL FLAW: Read data from an environment variable */
            {
                string stringNumber = Environment.GetEnvironmentVariable("ADD");
                if (stringNumber != null) // avoid NPD incidental warnings
                {
                    try
                    {
                        data = int.Parse(stringNumber.Trim());
                    }
                    catch (FormatException exceptNumberFormat)
                    {
                        IO.Logger.Log(NLog.LogLevel.Warn, exceptNumberFormat, "Number format exception parsing data from string");
                    }
                }
            }
            Dictionary <int, int> dataDictionary = new Dictionary <int, int>();

            dataDictionary.Add(0, data);
            dataDictionary.Add(1, data);
            dataDictionary.Add(2, data);
            CWE129_Improper_Validation_of_Array_Index__Environment_array_size_74b.GoodB2GSink(dataDictionary);
        }
Пример #2
0
        /* goodG2B() - use GoodSource and BadSink */
        private static void GoodG2B()
        {
            int data;

            /* FIX: Use a hardcoded number that won't cause underflow, overflow, divide by zero, or loss-of-precision issues */
            data = 2;
            Dictionary <int, int> dataDictionary = new Dictionary <int, int>();

            dataDictionary.Add(0, data);
            dataDictionary.Add(1, data);
            dataDictionary.Add(2, data);
            CWE129_Improper_Validation_of_Array_Index__Environment_array_size_74b.GoodG2BSink(dataDictionary);
        }