Skip to content

Commit 0324480

Browse files
committed
C#: Convert CreateSymmetricKey to CSV sink.
1 parent 1d405db commit 0324480

File tree

1 file changed

+4
-14
lines changed

1 file changed

+4
-14
lines changed

csharp/ql/lib/semmle/code/csharp/security/cryptography/HardcodedSymmetricEncryptionKey.qll

Lines changed: 4 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -52,7 +52,8 @@ module HardcodedSymmetricEncryptionKey {
5252
row =
5353
[
5454
"System.Security.Cryptography;SymmetricAlgorithm;true;CreateEncryptor;(System.Byte[],System.Byte[]);;Argument[0];encryption-encryptor",
55-
"System.Security.Cryptography;SymmetricAlgorithm;true;CreateDecryptor;(System.Byte[],System.Byte[]);;Argument[0];encryption-decryptor"
55+
"System.Security.Cryptography;SymmetricAlgorithm;true;CreateDecryptor;(System.Byte[],System.Byte[]);;Argument[0];encryption-decryptor",
56+
"Windows.Security.Cryptography.Core;SymmetricKeyAlgorithmProvider;false;CreateSymmetricKey;(Windows.Storage.Streams.IBuffer);;Argument[0];encryption-symmetrickey"
5657
]
5758
}
5859
}
@@ -66,22 +67,11 @@ module HardcodedSymmetricEncryptionKey {
6667
kind = "encryption-encryptor" and result = "Encryptor(rgbKey, IV)"
6768
or
6869
kind = "encryption-decryptor" and result = "Decryptor(rgbKey, IV)"
70+
or
71+
kind = "encryption-symmetrickey" and result = "CreateSymmetricKey(IBuffer keyMaterial)"
6972
}
7073
}
7174

72-
private class CreateSymmetricKeySink extends Sink {
73-
CreateSymmetricKeySink() {
74-
exists(MethodCall mc, Method m |
75-
mc.getTarget() = m and
76-
m.hasQualifiedName("Windows.Security.Cryptography.Core.SymmetricKeyAlgorithmProvider",
77-
"CreateSymmetricKey") and
78-
this.asExpr() = mc.getArgumentForName("keyMaterial")
79-
)
80-
}
81-
82-
override string getDescription() { result = "CreateSymmetricKey(IBuffer keyMaterial)" }
83-
}
84-
8575
private class CryptographicBuffer extends Class {
8676
CryptographicBuffer() {
8777
this.hasQualifiedName("Windows.Security.Cryptography", "CryptographicBuffer")

0 commit comments

Comments
 (0)