
एक पुनरुत्पादित एंड्रॉइड प्रयोगशाला वातावरण जो CVE-2026-0023 का प्रदर्शन करता है, PackageInstaller में एक Update Ownership trust bypass। इसमें तीन ऐप्स शामिल हैं जो कमजोर व्यवहार का निरीक्षण करने और पैच को समझने के लिए हैं।
CVE-2026-0023 को पुनरुत्पादित करने और अध्ययन करने के लिए एक पूर्ण Android प्रयोगशाला वातावरण।
यह रिपॉजिटरी दर्शाती है कि कैसे CVE-2026-0023 एक सामान्य इंस्टॉलर को आंतरिक Android स्थापना फ़्लैग को प्रभावित करने की अनुमति देता है जो केवल सिस्टम द्वारा नियंत्रित होना चाहिए, जिसके परिणामस्वरूप एप्लिकेशन अपडेट के दौरान Android का अद्यतन स्वामित्व चेतावनी दबा दी जाती है।
परियोजना में तीन Android एप्लिकेशन शामिल हैं जो एक यथार्थवादी अद्यतन स्वामित्व कार्यप्रवाह का मॉडल बनाते हैं और कमजोर व्यवहार को देखने के लिए एक पुनरुत्पादनीय वातावरण प्रदान करते हैं।
Android ने अद्यतन स्वामित्व (Update Ownership) शुरू किया ताकि एप्लिकेशन, ऐप स्टोर और उद्यम वातावरण एक विश्वसनीय अद्यतन श्रृंखला बनाए रख सकें।
जब किसी एप्लिकेशन का पंजीकृत अद्यतन स्वामी होता है, तो Android उपयोगकर्ता को चेतावनी देता है यदि कोई अन्य इंस्टॉलर उस एप्लिकेशन को अपडेट करने का प्रयास करता है।
सामान्य परिस्थितियों में, यह चेतावनी उपयोगकर्ता को बताती है कि एप्लिकेशन को आमतौर पर किसी भिन्न स्रोत से अपडेट प्राप्त होते हैं।
CVE-2026-0023 Android के पैकेज स्थापना प्रवाह को PackageInstallerService#createSessionInternal के अंदर प्रभावित करता है।
यह समस्या आंतरिक INSTALL_FROM_MANAGED_USER_OR_PROFILE स्थापना फ़्लैग के हैंडलिंग से संबंधित है।
कमजोर बिल्ड में, यह फ़्लैग स्पष्ट रूप से साफ नहीं किया गया था, इससे पहले कि Android जाँच करे कि स्थापना वास्तव में किसी प्रबंधित उपयोगकर्ता या प्रबंधित प्रोफ़ाइल से संबद्ध है या नहीं।
परिणामस्वरूप, एक सामान्य इंस्टॉलर अद्यतन स्वामित्व व्यवहार को प्रभावित कर सकता था और Android को अपेक्षित अद्यतन स्वामित्व चेतावनी को दबाने का कारण बन सकता था।
यह रिपॉजिटरी एक नियंत्रित प्रूफ-ऑफ-कॉन्सेप्ट वातावरण का उपयोग करके अपेक्षित व्यवहार और कमजोर व्यवहार के बीच अंतर दर्शाती है।
| अपेक्षित व्यवहार | कमजोर व्यवहार |
|---|---|
| Android अद्यतन स्वामित्व चेतावनी प्रदर्शित करता है। | Android केवल एक सामान्य अद्यतन संवाद प्रदर्शित करता है। |
![]() | ![]() |
CVE-2026-0023 मार्च 2026 Android सुरक्षा बुलेटिन में 2026-03-01 सुरक्षा पैच स्तर कमजोरी विवरण के अंतर्गत सूचीबद्ध है।
2026-03-01 या बाद के Android सुरक्षा पैच स्तर 2026-03-01 सुरक्षा पैच स्तर से जुड़ी सभी समस्याओं का समाधान करते हैं।
2026-03-05 या बाद के Android सुरक्षा पैच स्तर 2026-03-05 सुरक्षा पैच स्तर और पिछले सभी पैच स्तरों से जुड़ी सभी समस्याओं का समाधान करते हैं।
कमजोर व्यवहार आंतरिक INSTALL_FROM_MANAGED_USER_OR_PROFILE फ़्लैग के हैंडलिंग से संबंधित है।
यह फ़्लैग किसी प्रबंधित उपयोगकर्ता या प्रबंधित प्रोफ़ाइल से जुड़े स्थापना व्यवहार को दर्शाने के लिए है।
आधिकारिक AOSP पैच Android द्वारा यह जांचने से पहले इस फ़्लैग को स्पष्ट रूप से साफ करता है कि स्थापना वास्तव में संगठन-प्रबंधित उपयोगकर्ता से संबंधित है या नहीं।
ठीक किया गया तर्क यह सुनिश्चित करता है कि केवल सिस्टम ही DevicePolicyManagerInternal#isUserOrganizationManaged(userId) के परिणाम के आधार पर यह फ़्लैग सेट कर सकता है।
सरलीकृत पैच तर्क:
final var dpmi = LocalServices.getService(DevicePolicyManagerInternal.class);
+ // केवल सिस्टम को यह फ़्लैग सेट करने में सक्षम होना चाहिए - इसलिए सुनिश्चित करें कि जब इसकी आवश्यकता न हो तो यह अनसेट हो।
+ params.installFlags &= ~PackageManager.INSTALL_FROM_MANAGED_USER_OR_PROFILE;
if (dpmi != null && dpmi.isUserOrganizationManaged(userId)) {
params.installFlags |= PackageManager.INSTALL_FROM_MANAGED_USER_OR_PROFILE;
}
पैच से पहले, इस प्रबंधित-प्रोफ़ाइल जांच से पहले फ़्लैग स्पष्ट रूप से साफ नहीं किया गया था।
पैच के बाद, Android पहले फ़्लैग को हटाता है और इसे केवल तभी पुनः सेट करता है जब सिस्टम निर्धारित करता है कि उपयोगकर्ता वास्तव में संगठन-प्रबंधित है।
यह एक सामान्य इंस्टॉलर को इस आंतरिक इंस्टॉल-सत्र स्थिति को प्रभावित करने से रोकता है।
इस रिपॉजिटरी में तीन Android एप्लिकेशन हैं:
CVE-2026-0023-Update-Ownership-PoC
├── Safe Mart
├── Unsafe Mart
└── Ownership Inspector
Safe Mart एक संदर्भ इंस्टॉलर एप्लिकेशन है।
यह लक्ष्य एप्लिकेशन को स्थापित करता है और प्रारंभिक स्थापना के दौरान अद्यतन स्वामित्व का अनुरोध करता है।
इसका उद्देश्य एक वैध एप्लिकेशन स्टोर का अनुकरण करना है जो लक्ष्य ऐप का पंजीकृत अद्यतन स्वामी बन जाता है।
Unsafe Mart एक दूसरा इंस्टॉलर एप्लिकेशन है जिसका उपयोग CVE-2026-0023 को पुनरुत्पादित करने के लिए किया जाता है।
यह दो स्थापना पथों का समर्थन करता है:
सामान्य पथ Android की अपेक्षित अद्यतन स्वामित्व चेतावनी को ट्रिगर करता है।
CVE पथ स्वामित्व चेतावनी को दबा देता है और Android को इसके बजाय एक सामान्य अद्यतन पुष्टिकरण संवाद प्रदर्शित करने का कारण बनता है।
Ownership Inspector प्रदर्शन में उपयोग किया जाने वाला लक्ष्य एप्लिकेशन है।
एप्लिकेशन अद्यतन स्वामित्व के लिए समर्थन घोषित करता है और Android के PackageManager द्वारा रिपोर्ट किए गए इंस्टॉलर-संबंधित मेटाडेटा प्रदर्शित करता है।
इसका उद्देश्य यह देखना आसान बनाना है कि प्रूफ-ऑफ-कॉन्सेप्ट के प्रत्येक चरण के दौरान लक्ष्य एप्लिकेशन कैसे स्थापित या अपडेट किया गया था।
| CVE-2026-0023 से पहले | CVE-2026-0023 के बाद |
![]() | ![]() |
प्रूफ-ऑफ-कॉन्सेप्ट दो अलग-अलग अद्यतन प्रवाह दर्शाता है:
flowchart LR
A["Safe Mart<br/>संदर्भ इंस्टॉलर"] -->|"लक्ष्य ऐप स्थापित करता है<br/>+ अद्यतन स्वामित्व का अनुरोध करता है"| B["Ownership Inspector<br/>लक्ष्य ऐप"]
C["Unsafe Mart<br/>वैकल्पिक इंस्टॉलर"] --> D{"अद्यतन पथ"}
D -->|"सामान्य अद्यतन पथ"| E["Android प्रदर्शित करता है<br/>अद्यतन स्वामित्व चेतावनी"]
D -->|"CVE-2026-0023 पथ"| F["Android केवल प्रदर्शित करता है<br/>सामान्य अद्यतन संवाद"]
E --> G["उपयोगकर्ता को चेतावनी दी गई:<br/>Safe Mart अद्यतन स्वामी है"]
F --> H["स्वामित्व चेतावनी<br/>दबा दी गई है"]
दोनों इंस्टॉलर एप्लिकेशन को परीक्षण उपकरण पर स्थापित करें।
जब Android इस अनुमति का अनुरोध करे तो दोनों एप्लिकेशन को अज्ञात ऐप्स स्थापित करने की अनुमति दें।
Safe Mart खोलें और Ownership Inspector APK चुनें।
Safe Mart लक्ष्य एप्लिकेशन को स्थापित करता है और प्रारंभिक स्थापना सत्र के दौरान अद्यतन स्वामित्व का अनुरोध करता है।
इस बिंदु पर, Safe Mart संदर्भ इंस्टॉलर के रूप में कार्य करता है और लक्ष्य ऐप के लिए अपेक्षित अद्यतन स्रोत बन जाता है।
Ownership Inspector खोलें।
एप्लिकेशन Android के PackageManager द्वारा रिपोर्ट किए गए इंस्टॉलर-संबंधित मेटाडेटा प्रदर्शित करता है।
यह कदम Unsafe Mart से अद्यतन का प्रयास करने से पहले प्रारंभिक स्थापना स्थिति की पुष्टि करने में मदद करता है।
Unsafe Mart खोलें और Ownership Inspector APK चुनें।
सामान्य अद्यतन पथ चुनें।
क्योंकि Ownership Inspector मूल रूप से Safe Mart के माध्यम से अद्यतन स्वामित्व सक्षम के साथ स्थापित किया गया था, Android एक अद्यतन स्वामित्व चेतावनी प्रदर्शित करता है।
यह अपेक्षित Android व्यवहार है।
चेतावनी उपयोगकर्ता को बताती है कि एप्लिकेशन सामान्यतः Safe Mart से अपडेट प्राप्त करता है, जबकि वर्तमान अपडेट प्रयास Unsafe Mart से आ रहा है।
Unsafe Mart पर वापस जाएं और फिर से Ownership Inspector APK चुनें।
CVE-2026-0023 पुनरुत्पादन पथ चुनें।
इस प्रवाह में, Android अब अद्यतन स्वामित्व चेतावनी प्रदर्शित नहीं करता है।
इसके बजाय, सिस्टम केवल एक सामान्य अद्यतन पुष्टिकरण संवाद दिखाता है।
प्रूफ-ऑफ-कॉन्सेप्ट द्वारा प्रदर्शित यह कमजोर व्यवहार है।
महत्वपूर्ण अंतर केवल संवाद में दृश्य परिवर्तन नहीं है।
पंजीकृत अद्यतन स्वामी के बारे में सुरक्षा संकेत अद्यतन प्रवाह से हटा दिया गया है।
अद्यतन पूरा होने के बाद, फिर से Ownership Inspector खोलें।
एप्लिकेशन का उपयोग CVE-2026-0023 पुनरुत्पादन पथ पूरा होने के बाद इंस्टॉलर-संबंधित मेटाडेटा का निरीक्षण करने के लिए किया जा सकता है।
यह प्रूफ-ऑफ-कॉन्सेप्ट एक अद्यतन स्वामित्व विश्वास मॉडल बाईपास प्रदर्शित करता है।
अधिक विशेष रूप से, यह दर्शाता है कि:
PoC रूट एक्सेस, मनमाना कोड निष्पादन, स्थायित्व, चुपके या मैलवेयर जैसे व्यवहार प्रदान करने का प्रयास नहीं करता है।
कमजोरी Android 15 पर पुनरुत्पादित की गई थी।
प्रूफ-ऑफ-कॉन्सेप्ट को इसकी आवश्यकता नहीं है:
पूरा प्रदर्शन मानक Android एप्लिकेशन सैंडबॉक्स में चलने वाले सामान्य Android एप्लिकेशन के माध्यम से किया जाता है।
परीक्षण किए गए डिवाइस सुरक्षा जानकारी को एप्लिकेशन लॉग में देखा जा सकता है।
PoC द्वारा एकत्र किए गए उदाहरण मानों में शामिल हैं:
Build.VERSION.SECURITY_PATCH
Build.VERSION.SDK_INT
Build.VERSION.RELEASE
Build.VERSION.INCREMENTAL
Build.FINGERPRINT
परियोजना बनाने और चलाने के लिए, आपको चाहिए:
किसी विशेष उपकरण संशोधन की आवश्यकता नहीं है।
प्रत्येक एप्लिकेशन प्रोजेक्ट को Android Studio में खोलें और डीबग APK बनाएं:
फिर Safe Mart और Unsafe Mart को परीक्षण उपकरण पर स्थापित करें।
Ownership Inspector को पुनरुत्पादन प्रवाह के दौरान Safe Mart के माध्यम से स्थापित किया जाना चाहिए।
PoC Android के PackageInstaller API के साथ इंटरैक्ट करता है और कमजोर व्यवहार को पुनरुत्पादित करने के लिए स्थापना सत्र मापदंडों को बदलता है।
CVE पुनरुत्पादन पथ के दौरान, PoC प्रबंधित उपयोगकर्ता या प्रोफ़ाइल स्थापना व्यवहार से संबंधित सिस्टम फ़्लैग का उपयोग करता है:
INSTALL_FROM_MANAGED_USER_OR_PROFILE
कमजोरी स्वयं छिपे हुए API एक्सेस के कारण नहीं है।
छिपे हुए API एक्सेस का उपयोग केवल एक सामान्य एप्लिकेशन संदर्भ से आवश्यक फ्रेमवर्क इंटरफेस तक पहुंचने के लिए कार्यान्वयन विवरण के रूप में किया जाता है।
महत्वपूर्ण सुरक्षा सीमा यह है कि यह स्थापना फ़्लैग केवल तभी भरोसेमंद होना चाहिए जब इसे प्रबंधित उपयोगकर्ता या प्रबंधित प्रोफ़ाइल स्थिति को सत्यापित करने के बाद सिस्टम द्वारा सेट किया गया हो।
यह परियोजना प्रूफ-ऑफ-कॉन्सेप्ट के लिए आवश्यक गैर-SDK Android फ्रेमवर्क इंटरफेस तक पहुंचने के लिए ChickenHook द्वारा RestrictionBypass लाइब्रेरी का उपयोग करती है।
छिपा हुआ API एक्सेस तंत्र CVE-2026-0023 के मूल कारण से संबंधित नहीं है और इसका उपयोग केवल आवश्यक PackageInstaller API के साथ इंटरैक्ट करने के लिए किया जाता है।
RestrictionBypass: https://github.com/ChickenHook/RestrictionBypass
मूल लेखकों को उनके काम के लिए श्रेय।
Google ने CVE-2026-0023 को उच्च गंभीरता के Elevation of Privilege कमजोरी के रूप में वर्गीकृत किया।
यह समस्या रूट एक्सेस या मनमाना कोड निष्पादन प्रदान नहीं करती है।
हालांकि, यह एक अनप्रिविलेज्ड इंस्टॉलर को एक ऐसा कार्य करने की अनुमति देता है जो सामान्यतः Android के पैकेज स्थापना सुरक्षा मॉडल द्वारा संरक्षित होना चाहिए।
सबसे अधिक प्रासंगिक प्रभाव संभवतः उद्यम और प्रबंधित-डिवाइस परिनियोजन परिदृश्यों में है।
संगठन यह सुनिश्चित करने के लिए अद्यतन स्वामित्व पर भरोसा कर सकते हैं कि एप्लिकेशन किसी अनुमोदित एप्लिकेशन स्टोर या उद्यम इंस्टॉलर के माध्यम से अपडेट किए जाएं।
स्वामित्व चेतावनी को दबाकर, CVE-2026-0023 एक विश्वास संकेत को कमजोर करता है जो Android सामान्यतः किसी भिन्न स्रोत से अद्यतन की अनुमति देने से पहले प्रदान करेगा।
सामान्य उपभोक्ता उपकरणों के लिए, व्यावहारिक प्रभाव उपयोगकर्ता की स्थापना व्यवहार, उपकरण पैच स्तर और लक्ष्य एप्लिकेशन के अद्यतन स्वामित्व शब्दार्थ पर निर्भर करता है।
यह रिपॉजिटरी एक नियंत्रित अनुसंधान वातावरण में कमजोरी प्रदर्शित करने के लिए है।
यह प्रयास नहीं करता है:
प्रूफ-ऑफ-कॉन्सेप्ट विशेष रूप से CVE-2026-0023 से जुड़े अद्यतन स्वामित्व चेतावनी बाईपास व्यवहार पर केंद्रित है।
Android सुरक्षा बुलेटिन - मार्च 2026 https://source.android.com/docs/security/bulletin/2026/2026-03-01
CVE-2026-0023 - CVE रिकॉर्ड https://www.cve.org/CVERecord?id=CVE-2026-0023
CVE-2026-0023 - NVD https://nvd.nist.gov/vuln/detail/CVE-2026-0023
AOSP पैच - INSTALL_FROM_MANAGED_USER_OR_PROFILE फ़्लैग को स्पष्ट रूप से अनसेट करें
https://android.googlesource.com/platform/frameworks/base/+/09055276288a68cf35b0f84ba32e28822f74ecf9
ChickenHook द्वारा RestrictionBypass https://github.com/ChickenHook/RestrictionBypass
यह रिपॉजिटरी सुरक्षा अनुसंधान, शैक्षिक उद्देश्यों और कमजोरी विश्लेषण के लिए प्रदान की गई है।
कोड केवल नियंत्रित वातावरणों में और उन उपकरणों पर CVE-2026-0023 को पुनरुत्पादित करने और अध्ययन करने के लिए है जहां परीक्षण अधिकृत है।
लेखक बिना अनुमति के उपकरणों, एप्लिकेशन, उपयोगकर्ताओं, संगठनों या सिस्टम के विरुद्ध अनधिकृत परीक्षण को प्रोत्साहित या समर्थन नहीं करता है।
Android उपकरणों का परीक्षण या संशोधन करते समय उपयोगकर्ता सभी लागू कानूनों, नीतियों और संगठनात्मक आवश्यकताओं का पालन करने के लिए जिम्मेदार हैं।
इस रिपॉजिटरी का जिम्मेदारी से उपयोग करें।
| फ़ील्ड | मान |
|---|
| CVE | CVE-2026-0023 |
| घटक | Framework / PackageInstaller |
| प्रभावित फ़ाइल | PackageInstallerService.java |
| प्रभावित विधि | createSessionInternal |
| कमजोरी का प्रकार | Elevation of Privilege |
| गंभीरता | उच्च |
| CVSS v3.1 | 7.8 |
| CVSS वेक्टर | CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H |
| आक्रमण वेक्टर | स्थानीय |
| आक्रमण जटिलता | निम्न |
| आवश्यक विशेषाधिकार | निम्न |
| उपयोगकर्ता सहभागिता | कोई नहीं |
| दायरा | अपरिवर्तित |
| प्रभाव | अनधिकृत अद्यतन स्वामित्व व्यवहार के माध्यम से विशेषाधिकार उन्नयन |
| Android सुरक्षा बुलेटिन | मार्च 2026 |
| Android बग संदर्भ | A-459461121 |
| Google द्वारा सूचीबद्ध प्रभावित AOSP संस्करण | Android 14, 15, 16, 16-qpr2 |
| घटना | मान |
|---|
| Android सुरक्षा बुलेटिन | मार्च 2026 |
| बुलेटिन प्रकाशन तिथि | मार्च 2, 2026 |
| सुरक्षा पैच स्तर अनुभाग | 2026-03-01 |
| बुलेटिन-व्यापी पूरी तरह से संबोधित पैच स्तर | 2026-03-05 या बाद में |
| Android बग संदर्भ | A-459461121 |
| AOSP पैच | 09055276288a68cf35b0f84ba32e28822f74ecf9 |
| पैच शीर्षक | Explicitly unset INSTALL_FROM_MANAGED_USER_OR_PROFILE flag |