summaryrefslogtreecommitdiffstats
path: root/CleanSpec.mk
diff options
context:
space:
mode:
authorJeff Sharkey <jsharkey@android.com>2019-07-17 18:54:49 -0600
committerSterling Huber <hubers@google.com>2019-09-06 14:47:53 -0700
commitd3e5c766a143853580dd6642a4a32c5d1a6f9fb1 (patch)
tree8b55f5a64b8084c1c7de9938954b765e28689f3e /CleanSpec.mk
parent00cced240d45aa92fc2937bb88a3a48999b62aec (diff)
downloadandroid_packages_providers_DownloadProvider-d3e5c766a143853580dd6642a4a32c5d1a6f9fb1.tar.gz
android_packages_providers_DownloadProvider-d3e5c766a143853580dd6642a4a32c5d1a6f9fb1.tar.bz2
android_packages_providers_DownloadProvider-d3e5c766a143853580dd6642a4a32c5d1a6f9fb1.zip
RESTRICT AUTOMERGE
Enable stricter SQLiteQueryBuilder options. Malicious callers can leak side-channel information by using subqueries in any untrusted inputs where SQLite allows "expr" values. This change starts using setStrictColumns() and setStrictGrammar() on SQLiteQueryBuilder to block this class of attacks. This means we now need to define the projection mapping of valid columns, which consists of both the columns defined in the public API and columns read internally by DownloadInfo.Reader. We're okay growing sAppReadableColumnsSet like this, since we're relying on our trusted WHERE clause to filter away any rows that don't belong to the calling UID. Remove the legacy Lexer code, since we're now internally relying on the robust and well-tested SQLiteTokenizer logic. Bug: 135270103 Bug: 135269143 Test: atest DownloadProviderTests Test: atest CtsAppTestCases:android.app.cts.DownloadManagerTest Change-Id: I302091ceda3591785b2124575e89dad19bc97469
Diffstat (limited to 'CleanSpec.mk')
0 files changed, 0 insertions, 0 deletions