계: 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