Swift: Add RNCryptor sinks to swift/hardcoded-key #11911
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Add RNCryptor sinks to
swift/hardcoded-key
. This PR is very similar to #11905 but for the methods where an encryption key is specified, rather than a password.I have upgraded the query from dataflow to taint tracking so that it can track flow through conversions such as
Data("string")
. In principle this means we could get false positive results where a constant string is "mixed" with enough random data to make it a sufficiently random key overall. In practiceswift/constant-password
already uses taint tracking so I don't expect this to be a problem, and if we do see it when our testing scales up (e.g. with MRVA), we can add sanitizers or otherwise restrict flow to find the right balance.