-
Notifications
You must be signed in to change notification settings - Fork 1.7k
Java: Refactor Cleartext Storage queries #6493
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Java: Refactor Cleartext Storage queries #6493
Conversation
|
4dbd67f
to
710a9f3
Compare
|
710a9f3
to
d590906
Compare
|
Force pushed to rebase this refactor to |
This definitely changes the performance characteristics of these 3 queries, and it no longer makes sense for |
java/ql/lib/semmle/code/java/security/CleartextStorageQuery.qll
Outdated
Show resolved
Hide resolved
@aschackmull performance evaluation done. Apparently there's no negative impact on performance after this PR ( Still not sure why the integration tests are failing though. |
Do you have a link to the perf eval? |
It now discards sensitive exprs (sources) instead of sinks for better precision
b12a0b7
to
d0b9920
Compare
java/ql/lib/semmle/code/java/security/CleartextStorageCookieQuery.qll
Outdated
Show resolved
Hide resolved
java/ql/lib/semmle/code/java/security/CleartextStorageCookieQuery.qll
Outdated
Show resolved
Hide resolved
java/ql/lib/semmle/code/java/security/CleartextStorageQuery.qll
Outdated
Show resolved
Hide resolved
Co-authored-by: Anders Schack-Mulligen <aschackmull@users.noreply.github.com>
Thanks for your comments @aschackmull, applied in b52a2cd. |
This PR splits the
SensitiveStorage
library in several files, one for each query. The*Query.qll
naming convention has been followed, and the baseCleartextStorageQuery.qll
library has been generalized to have extensible sinks, sanitizers and taint steps. The encryption sanitizer that was being used in the Shared Preferences query has also been generalized, and now all sensitive storage queries benefit from it.