|
3 | 3 | */ |
4 | 4 |
|
5 | 5 | import java |
| 6 | +private import semmle.code.java.dataflow.DataFlow |
| 7 | +private import semmle.code.java.dataflow.ExternalFlow |
| 8 | + |
| 9 | +/** |
| 10 | + * A node representing a password being passed to a method. |
| 11 | + */ |
| 12 | +class PasswordParameter extends DataFlow::Node { |
| 13 | + PasswordParameter() { sinkNode(this, "credential-password") } |
| 14 | +} |
| 15 | + |
| 16 | +/** |
| 17 | + * A node representing a username being passed to a method. |
| 18 | + */ |
| 19 | +class UsernameParameter extends DataFlow::Node { |
| 20 | + UsernameParameter() { sinkNode(this, "credential-username") } |
| 21 | +} |
| 22 | + |
| 23 | +/** |
| 24 | + * A node representing a cryptographic key being passed to a method. |
| 25 | + */ |
| 26 | +class CryptoKeyParameter extends DataFlow::Node { |
| 27 | + CryptoKeyParameter() { sinkNode(this, "crypto-parameter") } |
| 28 | +} |
| 29 | + |
| 30 | +/** |
| 31 | + * A node representing a credential being passed to a method. |
| 32 | + */ |
| 33 | +class CredentialParameter extends DataFlow::Node { |
| 34 | + CredentialParameter() { sinkNode(this, "credential-other") } |
| 35 | +} |
6 | 36 |
|
7 | 37 | /** |
8 | 38 | * Holds if callable `c` from a standard Java API expects a password parameter at index `i`. |
9 | 39 | */ |
10 | | -predicate javaApiCallablePasswordParam(Callable c, int i) { |
| 40 | +deprecated predicate javaApiCallablePasswordParam(Callable c, int i) { |
11 | 41 | exists(c.getParameter(i)) and |
12 | 42 | javaApiCallablePasswordParam(c.getDeclaringType().getQualifiedName() + ";" + |
13 | 43 | c.getStringSignature() + ";" + i) |
14 | 44 | } |
15 | 45 |
|
16 | | -private predicate javaApiCallablePasswordParam(string s) { |
| 46 | +deprecated private predicate javaApiCallablePasswordParam(string s) { |
17 | 47 | // Auto-generated using an auxiliary query run on the JDK source code. |
18 | 48 | s = |
19 | 49 | [ |
@@ -133,13 +163,13 @@ private predicate javaApiCallablePasswordParam(string s) { |
133 | 163 | /** |
134 | 164 | * Holds if callable `c` from a standard Java API expects a username parameter at index `i`. |
135 | 165 | */ |
136 | | -predicate javaApiCallableUsernameParam(Callable c, int i) { |
| 166 | +deprecated predicate javaApiCallableUsernameParam(Callable c, int i) { |
137 | 167 | exists(c.getParameter(i)) and |
138 | 168 | javaApiCallableUsernameParam(c.getDeclaringType().getQualifiedName() + ";" + |
139 | 169 | c.getStringSignature() + ";" + i) |
140 | 170 | } |
141 | 171 |
|
142 | | -private predicate javaApiCallableUsernameParam(string s) { |
| 172 | +deprecated private predicate javaApiCallableUsernameParam(string s) { |
143 | 173 | // Auto-generated using an auxiliary query run on the JDK source code. |
144 | 174 | s = |
145 | 175 | [ |
@@ -196,13 +226,13 @@ private predicate javaApiCallableUsernameParam(string s) { |
196 | 226 | /** |
197 | 227 | * Holds if callable `c` from a standard Java API expects a cryptographic key parameter at index `i`. |
198 | 228 | */ |
199 | | -predicate javaApiCallableCryptoKeyParam(Callable c, int i) { |
| 229 | +deprecated predicate javaApiCallableCryptoKeyParam(Callable c, int i) { |
200 | 230 | exists(c.getParameter(i)) and |
201 | 231 | javaApiCallableCryptoKeyParam(c.getDeclaringType().getQualifiedName() + ";" + |
202 | 232 | c.getStringSignature() + ";" + i) |
203 | 233 | } |
204 | 234 |
|
205 | | -private predicate javaApiCallableCryptoKeyParam(string s) { |
| 235 | +deprecated private predicate javaApiCallableCryptoKeyParam(string s) { |
206 | 236 | // Auto-generated using an auxiliary query run on the JDK source code. |
207 | 237 | s = |
208 | 238 | [ |
@@ -424,13 +454,13 @@ private predicate javaApiCallableCryptoKeyParam(string s) { |
424 | 454 | /** |
425 | 455 | * Holds if callable `c` from a known API expects a credential parameter at index `i`. |
426 | 456 | */ |
427 | | -predicate otherApiCallableCredentialParam(Callable c, int i) { |
| 457 | +deprecated predicate otherApiCallableCredentialParam(Callable c, int i) { |
428 | 458 | exists(c.getParameter(i)) and |
429 | 459 | otherApiCallableCredentialParam(c.getDeclaringType().getQualifiedName() + ";" + |
430 | 460 | c.getStringSignature() + ";" + i) |
431 | 461 | } |
432 | 462 |
|
433 | | -private predicate otherApiCallableCredentialParam(string s) { |
| 463 | +deprecated private predicate otherApiCallableCredentialParam(string s) { |
434 | 464 | s = |
435 | 465 | [ |
436 | 466 | "javax.crypto.spec.IvParameterSpec;IvParameterSpec(byte[]);0", |
|
0 commit comments