You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
WithSecure resumed maintenance of drozer in 2022 and ported the framework to **Python 3** (latest **3.1.0 – April 2024**).
199
+
Besides compatibility fixes, new modules that are particularly useful when working with Content Providers include:
200
+
201
+
*`scanner.provider.exported` – list only providers with `android:exported="true"`.
202
+
*`app.provider.grant` – automatically call `grantUriPermission()` so you can talk to providers that expect `FLAG_GRANT_READ_URI_PERMISSION` / `FLAG_GRANT_WRITE_URI_PERMISSION` on Android 12+.
203
+
* Better handling of **Scoped Storage** so file-based providers on Android 11+ can still be reached.
* Declare `android:exported="false"` unless the provider **must** be public – from API 31 the attribute is mandatory.
243
+
* Enforce **permissions** and/or `android:grantUriPermissions="true"` instead of exporting the whole provider.
244
+
* Whitelist allowed `projection`, `selection` and `sortOrder` arguments (e.g. build queries with `SQLiteQueryBuilder.setProjectionMap`).
245
+
* In `openFile()` canonicalise the requested path (`FileUtils`) and reject `..` sequences to prevent traversal.
246
+
* When exposing files prefer **Storage Access Framework** or a `FileProvider`.
247
+
248
+
These changes in recent Android versions mean many legacy exploitation primitives still work, but require additional flags/permissions that the updated drozer modules or `cmd content` helper can apply automatically.
0 commit comments