summaryrefslogtreecommitdiff
path: root/tools/aapt2/java/JavaClassGenerator_test.cpp
diff options
context:
space:
mode:
authorJeff Sharkey <jsharkey@android.com>2018-07-16 16:53:45 -0600
committerJeff Sharkey <jsharkey@google.com>2018-12-01 17:23:04 -0700
commit4039dc49018bd77382556d0e92c92474e59724d0 (patch)
treece9fa6100ee3599bc55962810081e5f2834a49f1 /tools/aapt2/java/JavaClassGenerator_test.cpp
parent55777e52dffdc16ddc2370c1c6e740d7bf3d92b0 (diff)
Execute "strict" queries with extra parentheses.
SQLiteQueryBuilder has a setStrict() mode which can be used to detect SQL attacks from untrusted sources, which it does by running each query twice: once with an extra set of parentheses, and if that succeeds, it runs the original query verbatim. This sadly doesn't catch inputs of the type "1=1) OR (1=1", which creates valid statements for both tests above, but the final executed query ends up leaking data due to SQLite operator precedence. Instead, we need to continue compiling both variants, but we need to execute the query with the additional parentheses to ensure data won't be leaked. Test: atest cts/tests/tests/database/src/android/database/sqlite/cts/SQLiteQueryBuilderTest.java Bug: 111085900 Merged-In: Ie85a95003ae134eef2fdfbf074c2f82d0a6a9f26 Change-Id: Ie85a95003ae134eef2fdfbf074c2f82d0a6a9f26
Diffstat (limited to 'tools/aapt2/java/JavaClassGenerator_test.cpp')
0 files changed, 0 insertions, 0 deletions