Skip to content

CVE-2026-28576 One Picked Contact, Every Contact—SQL Injecti... - #2889

Open
carlospolop wants to merge 1 commit into
masterfrom
update_CVE-2026-28576_One_Picked_Contact_Every_Contact__9ec5889ed8424c1a
Open

carlospolop wants to merge 1 commit into
masterfrom
update_CVE-2026-28576_One_Picked_Contact_Every_Contact__9ec5889ed8424c1a

Conversation

@carlospolop

Copy link
Copy Markdown
Collaborator

🤖 Automated Content Update

This PR was automatically generated by the HackTricks News Bot based on a technical blog post.

📝 Source Information

  • Blog URL: https://github.com/mobilehackinglab/CVE-2026-28576-poc
  • Blog Title: CVE-2026-28576: One Picked Contact, Every Contact—SQL Injection in the Android Contacts Provider
  • Suggested Section: Mobile Pentesting > Android Applications Pentesting > content:// protocol, with a cross-reference from Drozer Tutorial > Exploiting Content Providers

🎯 Content Summary

Overview, severity, and impact

CVE-2026-28576, also tracked as GHSA-ph86-9mcx-3p6r, is a high-severity SQL injection and information-disclosure vulnerability in Android 17's Contacts Provider, specifically ContactsProvider2.queryLocal(). A zero-permission application can use the legitimate Android system contact picker to obtain a read-only URI grant for exactly one contact and then exploit S...

🔧 Technical Details

Scoped URI grant used as an SQL-injection carrier: When a content provider correctly restricts a caller to a narrow, read-only URI but forwards caller-controlled selection text into an SQL query, the URI-level permission boundary can remain intact while the SQL expression accesses data outside the granted row. An attacker needs only a legitimate scoped URI grant; direct access to other URIs can still fail with SecurityException.

Target-SDK compat-gate bypass: Security validation that is enabled only for applications targeting a newer SDK leaves legacy-target applications on an older parsing path. In this case, a caller targeting SDK 36 or lower makes CompatChanges.isChangeEnabled(ENFORCE_STRICT_SQL_CHECKS, callingUid) return false, preventing setStrictColumns() and setStrictGrammar() from running. Parenthesis wrapping from setStrict(true) defeats simple payloads such...

🤖 Agent Actions

Implemented the HackTricks update.

Changes

  • Added scoped URI-grant SQL injection and Boolean-oracle extraction to:
    • src/mobile-pentesting/android-app-pentesting/content-protocol.md
  • Documented:
    • URI authorization versus SQL authorization boundaries
    • Legacy targetSdkVersion compat-gate bypass
    • Balanced scalar-subquery probe
    • Cursor-row-count oracle
    • Strict grammar validation and compat testing
  • Added the requested cross-reference from:
    • drozer-tutorial/exploiting-content-providers.md
  • Added numbered citations to the Android bulletin, fix commit, Android API documentation, and PoC repository.

Validation

  • git diff --check passed.
  • Internal cross-reference path and anchor validated.
  • Citation numbering and referenced URLs validated.
  • No forbidden sources added.
  • mdbook was unavailable in the environment, so a full build could not be run.

This PR was automatically created by the HackTricks Feed Bot. Please review the changes carefully before merging.

@carlospolop

Copy link
Copy Markdown
Collaborator Author

🔗 Additional Context

Original Blog Post: https://github.com/mobilehackinglab/CVE-2026-28576-poc

Content Categories: Based on the analysis, this content was categorized under "Mobile Pentesting > Android Applications Pentesting > content:// protocol, with a cross-reference from Drozer Tutorial > Exploiting Content Providers".

Repository Maintenance:

  • MD Files Formatting: 1032 files processed

Review Notes:

  • This content was automatically processed and may require human review for accuracy
  • Check that the placement within the repository structure is appropriate
  • Verify that all technical details are correct and up-to-date
  • All .md files have been checked for proper formatting (headers, includes, etc.)

Bot Version: HackTricks News Bot v1.0

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant