Reino: Code Quality

Una mala calidad del código lleva a un comportamiento no predecible. Desde la perspectiva de un usuario, muchas veces también supone una usabilidad limitada. Pero para un atacante es una oportunidad para atacar al sistema de formas insospechadas.

Code Correctness: Misleading Method Signature

Abstract
Este parece el esfuerzo de reemplazar un método de .NET habitual, pero probablemente no tenga el efecto deseado.
Explanation
El nombre de este método es similar al nombre del método habitual de .NET, pero se ha escrito incorrectamente o la lista de argumentos provoca que no reemplace el método previsto.

Ejemplo 1: el siguiente método está diseñado para reemplazar System.Object.Equals():


public boolean Equals(string obj) {
...
}


Sin embargo, como System.Object.Equals() utiliza un argumento de tipo object, nunca se llama al método.
References
[1] Standards Mapping - Common Weakness Enumeration CWE ID 398
desc.structural.dotnet.code_correctness_misleading_method_signature
Abstract
Esto parece un esfuerzo por reemplazar el método de Java habitual, pero probablemente no tiene el efecto deseado.
Explanation
El nombre de este método es similar al nombre del método habitual de Java, pero se ha escrito incorrectamente o la lista de argumentos provoca que no se reemplace al método previsto.

Ejemplo 1: el siguiente método está diseñado para reemplazar Object.equals():


public boolean equals(Object obj1, Object obj2) {
...
}


Como Object.equals() toma solo un argumento, el método en el Example 1 no se llama nunca.
References
[1] Standards Mapping - Common Weakness Enumeration CWE ID 398
desc.structural.java.code_correctness_misleading_method_signature