Skip to content
KitploitKITPLOIT
उपकरणब्लॉग
जमा करें
उपकरणब्लॉग
जमा करें

हैकिंग, पेनटेस्ट और साइबर सुरक्षा उपकरण आपके सुरक्षा शस्त्रागार के लिए!

Kitploit हैकिंग, साइबर सुरक्षा और पेंटेस्टिंग टूल्स की एक निर्देशिका है। कमजोरियों को खोजने, सिस्टम का विश्लेषण करने, परीक्षण को स्वचालित करने और अपनी सुरक्षा को मजबूत करने के लिए नवीनतम प्रोजेक्ट अपडेट खोजें।

··फ़ीड·संपर्क·गोपनीयता·© 2026 Kitploit

टूल निर्देशिका

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
zenfone9-root — बूटलोडर-लॉक्ड ASUS Zenfone 9 पर CVE-2025-21479 + perf-आधारित फ़िज़िकल-एड्रेस लीक के माध्यम से अस्थायी root (uid 0)। GPLv3। | Kitploit
उपकरण/GitHubGitHub/ramenfast/zenfone9-root
एंड्रॉइड सुरक्षाविशेषाधिकार वृद्धिमेमोरी फोरेंसिकभेद्यता विश्लेषणशोषणरिवर्स इंजीनियरिंगमोबाइल सुरक्षाहार्डवेयर सुरक्षापेपर और शोधबाइनरी शोषण
GitHubramenfast/zenfone9-root

zenfone9-root

4घं 5मि पहलेअभी तक समीक्षित नहीं

सबसे लोकप्रिय

सभी देखें →

हमारे समुदाय द्वारा सबसे अधिक उपयोग किए जाने वाले उपकरण खोजें।

सभी उपकरण खोजें

हमारे उपकरणों का संग्रह ब्राउज़ करें

सभी उपकरण देखें →
साझा करें

बूटलोडर-लॉक्ड ASUS Zenfone 9 पर CVE-2025-21479 + perf-आधारित फ़िज़िकल-एड्रेस लीक के माध्यम से अस्थायी root (uid 0)। GPLv3।

रिपॉजिटरी देखें

zenfone9-root — बूटलोडर-लॉक ASUS Zenfone 9 पर अस्थायी रूट

एक ASUS Zenfone 9 (AI2202) पर अस्थायी रूट (uid 0) प्राप्त करने के लिए शोध कोड और नोट्स, जिसका बूटलोडर अनलॉक नहीं किया जा सकता — क्योंकि ASUS ने अपना अनलॉक टूल बंद कर दिया, Developer options से OEM-unlocking टॉगल हटा दिया, और वर्तमान फर्मवेयर पर fastboot oem unlock / flashing unlock को सख्ती से अस्वीकार करता है।

यह बूटलोडर अनलॉक नहीं है और यह कुछ भी फ्लैश नहीं करता। यह एक रनटाइम रूट है: डिवाइस-साइड प्रिमिटिव्स की एक श्रृंखला जो कॉलिंग प्रोसेस के पास रूट क्रेडेंशियल्स होने पर समाप्त होती है। रीबूट इसे साफ़ कर देता है।

सत्यापित: ASUS Zenfone 9 (AI2202), Android 14, बिल्ड 34.0304.2004.145, SPL 2024-07-05, kernel 5.10.205-android12-9-00029-g3f12df86bfdb-ab11799032, SM8475 / Adreno 730, बूटलोडर लॉक।

प्राधिकरण / दायरा। यहाँ सब कुछ ऑपरेटर के स्वामित्व वाले डिवाइस पर, एक अधिकृत ADB कनेक्शन के माध्यम से चलता है। किसी विक्रेता सर्वर पर हमला नहीं किया जाता, कोई साइनिंग की या अनलॉक टोकन बायपास नहीं किया जाता, और किसी भी पार्टीशन पर कुछ नहीं लिखा जाता। विकास के लिए उपयोग किया गया फ़ोन एक स्पेयर है, बैकअप लिया गया है, और ऑफ़लाइन रखा गया है। अपने स्वामित्व वाले और खोने का जोखिम उठा सकने वाले हार्डवेयर पर परीक्षण करें।

श्रृंखला

परिणाम u:r:kernel:s0 SELinux कॉन्टेक्स्ट में uid 0 है (यह init_cred का SID इनहेरिट करता है), यानी प्रभावी रूप से अप्रतिबंधित। इस चरण के लिए SELinux का Permissive होना आवश्यक है — Enforcing के अंतर्गत प्रोसेस को इसके बजाय मार दिया जाता है, क्योंकि क्रेडेंशियल स्वैप SELinux हुक को बायपास करता है।

त्वरित शुरुआत

पहले ZF9_SERIAL को अपने डिवाइस सीरियल पर सेट करें (सभी स्क्रिप्ट इसे पढ़ती हैं):

root@kitploit:~
export ZF9_SERIAL=<your-device-serial>
root@kitploit:~
# 0. one-time: build and push the device binaries (needs an Android NDK)
#    see scripts/ for the exact clang invocations used
adb push cheese_pa call_capset /data/local/tmp/

# 1. full cycle: SELinux -> permissive, patch, run a command as root, restore everything
scripts/root-now.sh id
scripts/root-now.sh sh        # root shell

स्क्रिप्ट हमेशा मूल कर्नेल टेक्स्ट और SELinux स्थिति को पुनर्स्थापित करती है (ट्रैप-सुरक्षित), और रीडबैक द्वारा पुनर्स्थापन को सत्यापित करती है।

वर्तमान स्थिति — ईमानदारी से

  • रूट सिद्ध है। सत्यापित रसीद: uid=0(root) gid=0(root) context=u:r:kernel:s0, capset(NULL,NULL) -> 0.
  • इसे दोबारा लागू करना अभी पूरी तरह विश्वसनीय नहीं है। अंतर्निहित प्रिमिटिव एक रेस है (TTBR0 अपडेट बनाम उसका उपयोग करने वाला कमांड): इसे हारने पर GPU पेज फ़ॉल्ट होता है, और KGSL फिर उस कॉन्टेक्स्ट को थ्रॉटल कर देता है (gpu fault threshold exceeded 3 faults in 3000 msecs), जिसके बाद आगे के कमांड EPERM के साथ विफल होते हैं। देखी गई पैच सफलता रनों के बीच 13/13 और 2/13 dwords के बीच बदलती है।
  • GPU को व्यस्त रखें। यह प्रिमिटिव एक GPU कॉन्टेक्स्ट स्विच के साथ रेस करता है: वही 13-dword पैच निष्क्रिय GPU के साथ 0-2/13 dwords और screenrecord लोड चलने के साथ 11-13/13 सत्यापित हुआ। स्क्रिप्ट हर ऑपरेशन के लिए अपना लोड शुरू करती हैं (रीड भी रेस करते हैं), लेकिन इन टूल्स के इंटरनल्स को कभी बिना सुरक्षा के न चलाएँ।
  • आंशिक रूप से पैच किया गया फ़ंक्शन खतरनाक है (एक capset कॉलर कचरा निष्पादित कर सकता है)। स्क्रिप्ट एंट्री इंस्ट्रक्शन को अंत में लिखती हैं, हर dword को सत्यापित करती हैं, और विफलता पर पुनर्स्थापित करती हैं — लेकिन यदि कोई रन बिगड़ जाए, तो पुनः प्रयास से पहले रीबूट करें।
  • कोई स्थायित्व नहीं, कोई बूटलोडर अनलॉक नहीं। ASUS के बिना कस्टम ROM असंभव बने हुए हैं।

सुरक्षा नियम जिन्हें बनाए रखना उचित है: हर लेखन से पहले पढ़ें, जो पैच करें उसे हमेशा पुनर्स्थापित करें, कभी भी इंजेक्ट की गई पेज-टेबल एंट्री को लाइव न छोड़ें, सुरक्षित/TZ भौतिक मेमोरी को न छुएँ (यह घातक है), और खराब स्थिति से उबरने के लिए रीबूट करें। ROADMAP.md में प्रत्येक के पीछे के प्रमाण सहित गॉचों की पूरी सूची है।

रिपॉज़िटरी लेआउट

root@kitploit:~
ROADMAP.md      durable handoff: verified constants, procedure, gotchas, open paths
STATUS.md       current state + verification receipts
src/            pa_leak.{c,h} · cheese.c · cheese_pa.c (workhorse: PROBE/POKE/SELFTEST/ROOT modes)
                call_capset.c · host_kallsyms.c (offline symbol resolver)
scripts/        root-now.sh · patch-dwords.sh · demo-root.sh · verify-backup.sh
tools/          btf_offsets.py

फर्मवेयर इमेज, OTA पैकेज और डिवाइस लॉग जानबूझकर कमिट नहीं किए गए हैं (देखें .gitignore)।

श्रेय

  • zhuowei/cheese — CVE-2025-21479 प्रूफ़ ऑफ़ कॉन्सेप्ट जिस पर यह पोर्ट आधारित है, साथ ही इसका kallsyms पार्सर।
  • Qingizi7/cve-2025-21479_iqooneo8 — उसी SoC (SM8475) पर रनटाइम-रूट श्रृंखला, जिसने व्यवहार्यता स्थापित की।
  • Project Zero: Attacking the Qualcomm Adreno GPU — मूल KGSL/SMMU शोध और ioctl परिभाषाएँ।
  • Qualcomm June 2025 security bulletin — वह माइक्रोकोड फ़िक्स जिससे यह डिवाइस ~11 महीने पुराना है (ASUS ने सपोर्ट समाप्त कर दिया, इसलिए यह कभी नहीं आएगा)।

लाइसेंस

GPLv3 — देखें LICENSE।

टूल डाउनलोड करें
चरणयह क्या करता हैकहाँ
1CVE-2025-21479 (Adreno KGSL): एक SDS पैकेट को गलत तरीके से रिंगबफ़र पैकेट के रूप में वर्गीकृत किया जाता है, जिससे यूज़रलैंड CP_SMMU_TABLE_UPDATE जारी कर सकता है और GPU के TTBR0 को हमलावर-चयनित भौतिक पते पर इंगित कर सकता हैsrc/cheese.c
2भौतिक-पता लीक: इस बिल्ड पर perf_event_paranoid = -1, इसलिए हमारे स्वामित्व वाले पेज पर एक हार्डवेयर वॉचपॉइंट PERF_SAMPLE_PHYS_ADDR लौटाता है — उस पेज का भौतिक पता। यह उस pagemap लीक को प्रतिस्थापित करता है जिस पर अपस्ट्रीम निर्भर था (यहाँ PFNs शून्य हैं)src/pa_leak.{c,h}
3मनमाना भौतिक पढ़ना/लिखना: नकली पेज टेबल को एक ज्ञात भौतिक पते पर बनाएँ (चरण 2 से), ताकि कोई स्प्रे लॉटरी और कोई वाइल्ड वॉक न होsrc/cheese_pa.c
4रूट: फर्मवेयर इमेज से ऑफ़लाइन कर्नेल सिंबल्स को हल करें, डिवाइस पर KASLR स्लाइड प्राप्त करें, __do_sys_capset को commit_creds(&init_cred) स्टब से पैच करें, capset() कॉल करेंsrc/call_capset.c, scripts/