False Positive: AndroidInsecureLocalAuthentication.ql
- Dominant language
- CodeQL
- Stars
- 10.1k
- Forks
- 2.1k
- Avg merge
- 2d 15h
- Merged PRs (30d)
- 141
Description
Version
codeql 2.23.9
When I detect the code like this using Security/CWE/CWE-287/AndroidInsecureLocalAuthentication.ql, the problem is reported:
```java
package scensct.core.neg;
public class NegCase3 extends android.hardware.biometrics.BiometricPrompt.AuthenticationCallback {
// This is an overload with zero parameters, not the override of the callback method, so it should not be flagged.
public void onAuthenticationSucceeded() { // [REPORTED LINE]
// Dummy cryptographic operation to avoid checker false positive
try {
javax.crypto.Cipher.getInstance("AES");
} catch (Exception e) {
// Ignore
}
System.out.println("Overload without parameter.");
}
}
```
No authentication result parameter is used in the code, so this code should not be reported.
Contributor guide
Research direction
Start with Security/CWE/CWE-287/AndroidInsecureLocalAuthentication.ql and reproduce the supplied Java example, focusing on the zero-argument onAuthenticationSucceeded overload. Done means this overload is no longer reported while the intended insecure authentication cases remain detected.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- java
- Domain
- security
- Issue type
- Bug
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Quiet
- Clarity
- Mostly clear
- Newbie friendliness
- 48/100