CWE

Common Weakness Enumeration

A community-developed list of SW & HW weaknesses that can become vulnerabilities

New to CWE? click here!
CWE Most Important Hardware Weaknesses
CWE Top 25 Most Dangerous Weaknesses
Home > Community > Research > LANGSPEC: Language-Specific Nodes  
ID

LANGSPEC: Language-Specific Nodes
LANGSPEC: Language-Specific Nodes

Total Nodes in this Report: 26    Report Generated On: 2007-09-12

ID: 98 Name: PHP File Inclusion
URL: http://cwe.mitre.org/data/definitions/98.html
A PHP product uses "require" or "include" statements, or equivalent statements, that use attacker-controlled data to identify code or HTML to be directly processed by the PHP interpreter before inclusion in the script.
ID: 111 Name: Unsafe JNI
URL: http://cwe.mitre.org/data/definitions/111.html
Improper use of the Java Native Interface (JNI) can render Java applications vulnerable to security bugs in other languages. This results in dynamic loading of pre-compiled native code into the runtime environment.
ID: 245 Name: J2EE Bad Practices: getConnection()
URL: http://cwe.mitre.org/data/definitions/245.html
The J2EE standard forbids the direct management of connections.
ID: 382 Name: J2EE Bad Practices: System.exit()
URL: http://cwe.mitre.org/data/definitions/382.html
System.exit(). A Web application should not attempt to shut down its container.
ID: 383 Name: J2EE Bad Practices: Threads
URL: http://cwe.mitre.org/data/definitions/383.html
Thread management in a Web application is forbidden in some circumstances and is always highly error prone.
ID: 395 Name: Catch NullPointerException
URL: http://cwe.mitre.org/data/definitions/395.html
Catching NullPointerException should not be used as an alternative to programmatic checks to prevent dereferencing a null pointer.
ID: 467 Name: Use of sizeof() on a pointer type
URL: http://cwe.mitre.org/data/definitions/467.html
Running sizeof() on a malloced pointer type will always return the wordsize/8.
ID: 473 Name: PHP External Variable Modification
URL: http://cwe.mitre.org/data/definitions/473.html
A PHP product does not properly protect against the modification of variables from external sources. Note: this is a tech-specific instance of MAID.
ID: 481 Name: Assigning instead of comparing
URL: http://cwe.mitre.org/data/definitions/481.html
In many languages the compare statement is very close in appearance to the assignment statement and are often confused.
ID: 482 Name: Comparing instead of assigning
URL: http://cwe.mitre.org/data/definitions/482.html
In many languages, the compare statement is very close in appearance to the assignment statement; they are often confused.
ID: 484 Name: Omitted break statement
URL: http://cwe.mitre.org/data/definitions/484.html
Omitting a break statement so that one may fall through is often indistinguishable from an error, and therefore should not be used.
ID: 491 Name: Mobile Code: Object Hijack
URL: http://cwe.mitre.org/data/definitions/491.html
Attackers can use Cloneable objects to create new instances of an object without calling its constructor.
ID: 558 Name: Misused Authentication: getlogin (not reentrant)
URL: http://cwe.mitre.org/data/definitions/558.html
The getlogin() function returns a pointer to a string that contains the name of the user associated with the calling process. The function is not reentrant, meaning that if it is called from another process, the contents are not locked out and the value of the string can be changed by another process. This makes it very risky to use because the username can be changed by other processes, so the results of the function cannot be trusted.
ID: 560 Name: Often Misused: umask
URL: http://cwe.mitre.org/data/definitions/560.html
The mask specified by the argument umask() is often confused with the argument to chmod()
ID: 572 Name: Call to Thread.run()
URL: http://cwe.mitre.org/data/definitions/572.html
The program calls a thread's run() method instead of calling start()
ID: 579 Name: J2EE Bad Practices: Non-serializable Object Stored in Session
URL: http://cwe.mitre.org/data/definitions/579.html
Storing a non-serializable object as an HttpSession attribute can damage application reliability.
ID: 580 Name: Erroneous Clone Method
URL: http://cwe.mitre.org/data/definitions/580.html
The software contains a clone() method that fails to call super.clone() to obtain the new object.
ID: 581 Name: Object Model Violation: Just One of Equals and Haschode Defined
URL: http://cwe.mitre.org/data/definitions/581.html
Software fails to maintain equal hashcodes for equal objects.
ID: 582 Name: Mobile Code: Unsafe Array Declaration
URL: http://cwe.mitre.org/data/definitions/582.html
The program violates secure coding principles for mobile code by declaring an array public, final and static.
ID: 583 Name: Mobile Code: Public Finalize Method
URL: http://cwe.mitre.org/data/definitions/583.html
The program violates secure coding principles for mobile code by declaring a finalize() method public.
ID: 584 Name: Return Inside Finally Block
URL: http://cwe.mitre.org/data/definitions/584.html
A return statement inside a finally block will cause any exception that might be thrown in the try block to be discarded.
ID: 586 Name: Explicit Call to Finalize
URL: http://cwe.mitre.org/data/definitions/586.html
The software makes an explicit call to the finalize() method from outside the finalizer.
ID: 587 Name: Assignment of a Fixed Address to a Pointer
URL: http://cwe.mitre.org/data/definitions/587.html
If a pointer is set to a specific address, other than 0(Which is almost always NULL), that address will probably not be valid.
ID: 597 Name: Erroneous String Compare
URL: http://cwe.mitre.org/data/definitions/597.html
Strings should be compared with the equals() method, not == or !=
ID: 616 Name: Incomplete Identification of Uploaded File Variables (PHP)
URL: http://cwe.mitre.org/data/definitions/616.html
The PHP application uses an old method for processing uploaded files by referencing the four global variables that are set for each file (e.g. $varname, $varname_size, $varname_name, $varname_type). These variables could be overwritten by POST requests, cookies, or other methods of populating or overwriting these global variables. This could be used to read or process arbitrary files by providing values such as "/etc/passwd".
ID: 621 Name: Variable Extraction Error
URL: http://cwe.mitre.org/data/definitions/621.html
The product processes user-provided information and extracts this information into arbitrary variables, without verifying that the names of the specified variables are valid. For example, in PHP, calling extract() or import_request_variables() without the proper arguments could allow arbitrary global variables to be overwritten, including superglobals. Similar functionality might be possible in other interpreted languages, including custom languages.
Page Last Updated: January 17, 2017