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

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

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

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

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

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
ghostlock-sabrina — CVE-2026-43499 Google TV वाले Chromecast (sabrina) के लिए GhostLock रूट एक्सप्लॉइट | Kitploit
उपकरण/GitHubGitHub/k-o-n-t-o-r/ghostlock-sabrina
एंड्रॉइड सुरक्षाएम्बेडेड सिस्टम सुरक्षाविशेषाधिकार वृद्धिभेद्यता विश्लेषणशोषणहार्डवेयर और IoT सुरक्षापेपर और शोधपेलोड डेवलपमेंटबाइनरी शोषण
GitHubk-o-n-t-o-r/ghostlock-sabrina

ghostlock-sabrina

CVE-2026-43499 Google TV वाले Chromecast (sabrina) के लिए GhostLock रूट एक्सप्लॉइट

11 दिन पहलेअभी तक समीक्षित नहीं

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

सभी देखें →

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

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

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

सभी उपकरण देखें →
साझा करें
रिपॉजिटरी देखें

GhostLock Sabrina

Chromecast with Google TV (sabrina) के लिए रूट एक्सप्लॉइट, जो Linux kernel के futex PI (priority inheritance) सबसिस्टम में use-after-free (CVE-2026-43499) के माध्यम से काम करता है।

Android 14 और kernel 5.15.170 (PGO+BOLT+LTO, clang 17) चलाने वाले लॉक्ड बूटलोडर डिवाइस पर रूट प्राप्त करता है।

भेद्यता

GhostLock, rt_mutex_start_proxy_lock() में -EDEADLK रोलबैक पाथ से कॉल किए जाने वाले remove_waiter() में एक बग का फायदा उठाता है। यह फ़ंक्शन waiter टास्क के बजाय requeuer के current->pi_blocked_on (जो पहले से NULL है) को साफ़ करता है। waiter का pi_blocked_on कभी साफ़ नहीं होता, जिससे kernel स्टैक पर मुक्त किए गए rt_mutex_waiter के लिए एक dangling pointer बना रह जाता है।

इसके बाद का sched_setattr, rt_mutex_adjust_pi -> rt_mutex_adjust_prio_chain को ट्रिगर करता है, जो dangling pointer का अनुसरण करता है और reclaimed heap पेज पर attacker-नियंत्रित डेटा पर PI चेन को वॉक करता है -- जिससे rb_erase के माध्यम से एक arbitrary write primitive मिलता है।

एक्सप्लॉइट चेन

मुख्य नवाचार

  • SIGUSR1 walk-before-cleanup: SEQPACKET overlay एक signal handler के अंदर चलता है जो futex wait को बाधित करता है, इसलिए PI चेन वॉक futex cleanup पाथ के spray पेज के spinlocks पर विवाद करने से पहले फायर होते हैं (MCS qspinlock wedge को समाप्त करता है)
  • Fake user_namespace: spray पेज पर एक self-contained namespace जिसमें identity uid/gid maps और ucounts = NULL है -- cap_capable पहले iteration पर मैच करता है और inc_rlimit_ucounts एक लूप के बाद समाप्त हो जाता है, जिससे &init_user_ns लीक करने की आवश्यकता समाप्त हो जाती है
  • TID-गेटेड perf sampling: PERF_SAMPLE_TID फ़िल्टर सुनिश्चित करते हैं कि केवल कॉलिंग थ्रेड के register snapshots गिने जाएँ, जिससे hot system services mode-vote पर हावी नहीं होते

लक्ष्य

  • डिवाइस: Chromecast with Google TV (sabrina), Amlogic S905X3 (4x A55), 2 GB RAM
  • Kernel: 5.15.170-android14-11-gf4a1f03072af (aarch64, PGO+BOLT+LTO, clang 17.0.2)
  • Android: 14, build UTTC.250917.004, security patch 2025-10-01
  • Config: CONFIG_FUTEX_PI=y, CONFIG_IO_URING=y, perf_event_paranoid=-1, SELinux enforcing, panic_on_oops=1, कोई user namespaces नहीं

बिल्ड करना

root@kitploit:~
export ANDROID_NDK_HOME=/path/to/android-ndk
make -j$(nproc)

Android NDK की आवश्यकता है (r27 के साथ परीक्षित)। एक statically linked aarch64 बाइनरी उत्पन्न करता है।

उपयोग

root@kitploit:~
adb push ghostlock /data/local/tmp/
adb shell "cd /data/local/tmp && ./ghostlock --cred"

एक्सप्लॉइट में ~20 सेकंड लगते हैं (heap spray + KernelSnitch bruteforce)। सफल होने पर, प्रक्रिया uid=0 क्रेडेंशियल्स के साथ /system/bin/sh को exec करती है।

लेखकत्व

यह एक्सप्लॉइट Claude Opus 4.6 (Anthropic) द्वारा GLM-5.3 (Z.ai) के साथ kernel exploitation सलाहकार के रूप में पोर्ट और विकसित किया गया था।

संदर्भ

  • GhostLock (मूल एक्सप्लॉइट) -- AnomalyStudio का OnePlus/Pixel GhostLock एक्सप्लॉइट जिस पर यह पोर्ट आधारित है
  • KernelSnitch -- futex hash collisions के माध्यम से kernel heap पतों को लीक करने के लिए timing side-channel (Gruss et al., TU Graz)
  • CVE-2026-43499 -- futex PI use-after-free भेद्यता
  • Linux kernel 5.15 स्रोत -- kernel/futex/, kernel/locking/rtmutex.c, lib/rbtree.c

अस्वीकरण

यह एक्सप्लॉइट सुरक्षा अनुसंधान और शैक्षिक उद्देश्यों के लिए प्रकाशित किया गया है। यह शोधकर्ता के स्वामित्व वाले डिवाइस को लक्षित करता है। इसका उपयोग उन डिवाइसों पर न करें जो आपके स्वामित्व में नहीं हैं या बिना प्राधिकरण के।

लाइसेंस

MIT

टूल डाउनलोड करें
चरणतकनीक
KASLR लीकperf_event_open के साथ PERF_SAMPLE_IP (TID-गेटेड)
Task struct लीकperf_event_open के साथ PERF_SAMPLE_REGS_INTR (TID-गेटेड, linear-map पतों का मोड)
mm_struct लीकKernelSnitch -- futex hash collision timing side-channel
Heap spraySLUB discard choreography (memfd-close, CPU-partial overflow) + io_uring_setup(256) order-2 page reclaim
Stack overlayAF_UNIX SOCK_SEQPACKET sendmsg -- move_addr_to_kernel 128-बाइट sockaddr को kernel स्टैक पर कॉपी करता है, जो dangling waiter के task/lock/prio फ़ील्ड्स को ओवरले करता है
Walk ट्रिगरmonotonic nice ladder (7 -> 14 -> 19) के साथ sched_setattr PI चेन वॉक को फायर करता है
Write primitiverb_erase Case 1a, child (fake_cred) को parent->rb_right = task->cred पर लिखता है
Cred swaptask->cred = fake_cred (uid=0, सभी caps, spray पेज पर self-contained fake user_namespace)
Root shellexecve("/system/bin/sh") -- exec पाथ में commit_creds fake_cred को एक साफ़ slab credential में कॉपी करता है