
CVE-2026-0075 Android ContactsProvider 사이드 채널을 권한 없이 PoC로 프로빙하여, 근본 원인 분석 및 패치 버전과 취약 버전 간 비교를 지원합니다.
ContactsProvider2의 CVE-2026-0075와 관련된 관찰 가능한 동작을 평가하기 위한 제어된 실험실 Android 연구 프로토타입입니다.
CVE-2026-0075는 ContactsProvider2의 Android 로컬 권한 상승 문제입니다. 공개 보안 권고는 사용자 상호 작용 없이 SQL 인젝션을 통해 연락처 데이터베이스에 접근할 수 있는 경로를 설명합니다. Android는 이 문제를 높음(High) 으로 분류하고 Android 14, 15, 16 및 16-qpr2를 영향을 받는 AOSP 버전으로 식별합니다. 2026-06-05 이후 보안 패치 수준이 적용된 기기는 2026년 6월 게시판의 문제를 해결합니다.
포함된 앱은 의도적으로 READ_CONTACTS도 WRITE_CONTACTS도 선언하지 않는 독립형 Java/Android PoC입니다. 승인된 연구자가 제어된 빌드에서 권한 경계 동작과 예외 처리를 비교하는 데 도움이 되도록 설계되었습니다.
이 저장소는 승인된 보안 연구 전용입니다.
이 프로젝트는 보편적인 악용 경로를 주장하지 않습니다. 대상 빌드, 패치 수준 및 ContactsProvider 구현에 대해 검증해야 하는 제어된 관찰을 기록합니다.
.
├── no-permission-probe/ Standalone Android application and PowerShell helpers
│ ├── build.ps1 Compiles, packages, aligns, and signs a debug APK
│ ├── run-poc.ps1 Installs the APK and starts the controlled probe
│ ├── AndroidManifest.xml No READ_CONTACTS or WRITE_CONTACTS declaration
│ ├── res/ Android resources
│ └── src/ Application source
├── CONTRIBUTING.md Contribution and research-data requirements
├── SECURITY.md Vulnerability reporting guidance
└── .gitignore Local build and IDE exclusions
공개 AOSP 수정 사항인 bb9f36b3ff6d42136afb61d527e1e8f67242fe32는 Fix side channel attacks in CP2라는 제목입니다. 이 변경은 ContactsProvider2가 READ_CONTACTS가 없는 호출자에게 JSON 관련 SQLiteException 메시지를 제거하도록 하고 커서 구체화를 예외 처리 경로에 포함시킵니다. 이 PoC는 제어된 전후 동작 비교를 위해 설계되었으며 패치 검증을 대체하지 않습니다.
PATH에서 javac, jar, keytool을 사용할 수 있는 JDKandroid-3536.0.0adb)빌드 전에 ANDROID_HOME을 SDK 루트로 설정하세요. 로컬 도구에서 ANDROID_SDK_ROOT를 사용할 수도 있지만 제공된 스크립트는 ANDROID_HOME을 읽습니다.
$env:ANDROID_HOME = 'C:\Android\Sdk'
저장소 루트에서:
Set-Location .\no-permission-probe
.\build.ps1
서명된 디버그 APK는 no-permission-probe\build\probe.apk에 생성됩니다. build 디렉터리는 버전 관리에서 제외됩니다.
합성 연락처만 포함된 승인된 에뮬레이터 또는 테스트 기기를 시작합니다.
기기 및 패치 수준을 확인합니다:
adb devices
adb shell getprop ro.build.version.security_patch
앱을 빌드한 후 실행합니다:
Set-Location .\no-permission-probe
.\run-poc.ps1
애플리케이션 UI와 범위가 지정된 로그 태그만 검토합니다:
adb logcat -s CVE20260075Probe:I
실행 도우미는 연결된 테스트 기기에서 정확한 data/<id> URI를 선택하고 읽기 권한으로 활동을 시작합니다. 해당 동작이 명시적으로 승인되지 않은 환경에서는 사용하지 마세요.
방어 가능한 결과를 위해 매 실행 시 다음을 기록하세요:
취약한 것으로 알려진 실험실 이미지를 2026년 6월 수정 사항이 포함된 이미지와 비교하세요. 예상되는 개선 신호는 READ_CONTACTS가 없는 호출자에게 반환되는 해당 JSON 관련 SQLite 오류가 일반 메시지로 대체된다는 것입니다. 이는 그 자체로 모든 관찰 가능한 오라클(oracle)이 없음을 입증하지는 않습니다.
이 CVE는 공개적으로 공개되었으며 2026년 6월 Android 보안 게시판에서 해결되었습니다. 현재 Android 제품 취약점은 Android 보안 프로세스를 통해 직접 신고하세요. 저장소별 지침은 SECURITY.md를 참조하세요.
Apache License 2.0에 따라 라이선스가 부여됩니다.