界: Code Quality
コードの質が低いと、予測できない動作につながります。ユーザーの視点には、それがしばしば使い勝手の悪さとなって現れます。攻撃者にとっては、予期せぬ方法でシステムにストレスを与える機会となります。
Code Correctness: Misleading Method Signature
Abstract
共通の .NET メソッドを上書きするように見えますが、おそらく意図した効果は期待できないでしょう。
Explanation
このメソッドの名前は共通の .NET メソッド名に似ていますが、誤って入力されたか、引数リストが意図したメソッドを上書きしないようにしています。
例 1: 次のメソッドは、
しかし、
例 1: 次のメソッドは、
System.Object.Equals()
を上書きするためのものです。
public boolean Equals(string obj) {
...
}
しかし、
System.Object.Equals()
は、object
タイプの引数を取るため、メソッドがコールされることはありません。References
[1] Standards Mapping - Common Weakness Enumeration CWE ID 398
desc.structural.dotnet.code_correctness_misleading_method_signature
Abstract
共通の Java メソッドを上書きするように見えますが、おそらく意図した効果は期待できないでしょう。
Explanation
このメソッドの名前は共通の Java メソッド名に似ていますが、誤って入力されたか、引数リストが意図したメソッドを上書きしないようにしています。
例 1: 次のメソッドは、
しかし、
例 1: 次のメソッドは、
Object.equals()
を上書きするためのものです。
public boolean equals(Object obj1, Object obj2) {
...
}
しかし、
Object.equals()
は単一引数のみを受け取るため、Example 1
のメソッドがコールされることはありません。References
[1] Standards Mapping - Common Weakness Enumeration CWE ID 398
desc.structural.java.code_correctness_misleading_method_signature