Stop considering usernames sensitive info

Require variables to be static to be considered constants
This commit is contained in:
Tony Torralba
2022-05-12 11:46:52 +02:00
parent e8972b814f
commit 5db8306fef
3 changed files with 16 additions and 6 deletions

View File

@@ -6,12 +6,12 @@ import semmle.code.java.dataflow.TaintTracking
import semmle.code.java.security.SensitiveActions
import DataFlow
/** A variable that may hold sensitive information, judging by its name. * */
/** A variable that may hold sensitive information, judging by its name. */
class CredentialExpr extends Expr {
CredentialExpr() {
exists(Variable v | this = v.getAnAccess() |
v.getName().regexpMatch([getCommonSensitiveInfoRegex(), "(?i).*(username).*"]) and
not v.isFinal()
v.getName().regexpMatch(getCommonSensitiveInfoRegex()) and
not (v.isFinal() and v.isStatic())
)
}
}