Skip to content
KitploitKITPLOIT
أدواتالمدونة
إرسال
أدواتالمدونة
إرسال

أدوات الاختراق واختبار الاختراق والأمن السيبراني لترسانتك الأمنية!

Kitploit هو دليل لأدوات الاختراق والأمن السيبراني واختبار الاختراق. اكتشف آخر تحديثات المشاريع للعثور على الثغرات وتحليل الأنظمة وأتمتة الاختبارات وتعزيز أمنك.

··الخلاصات·اتصال·الخصوصية·© 2026 Kitploit

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
ghostlock-s26 — GhostLock (CVE-2026-43499) تطبيق لسلسلة Galaxy S26 | Kitploit
أدوات/GitHubGitHub/1ndevelopment/ghostlock-s26
أمان أندرويدتصعيد الامتيازاتآليات الاستمراريةالاستغلالاختبار اختراق تطبيقات الجوالما بعد الاستغلالأمن الجوالتطوير الحمولات
GitHub1ndevelopment/ghostlock-s26

ghostlock-s26

GhostLock (CVE-2026-43499) تطبيق لسلسلة Galaxy S26

عرض المستودع
12منذ 3 أياملم تتم المراجعة بعد

الأكثر شعبية

عرض الكل →

اكتشف الأدوات الأكثر استخدامًا من قبل مجتمعنا.

استكشف جميع الأدوات

تصفح مجموعتنا من الأدوات

عرض جميع الأدوات →
مشاركة

GhostLock - غلاف Android (indev.ghostlock.s26)

غلاف Android بنقرة واحدة لـ 1ndevelopment/ghostlock-s26: GhostLock (CVE-2026-43499) مُنقول إلى سلسلة Samsung Galaxy S26 بالكامل (Android 16 / GKI 6.12). تطبيق APK واحد، ثلاثة خطوط kernel، مطابقة معاملات وقت التشغيل - بلا متغيرات تطبيق لكل إصدار.

استخدمه فقط على الأجهزة التي تملكها أو المصرّح لك صراحةً باختبارها. الـ root المؤقت يختفي عند إعادة التشغيل. تشغيل الاستغلال مرة ثانية في نفس جلسة الإقلاع قد يؤدي إلى انهيار الجهاز - أعد التشغيل قبل إعادة المحاولة.

التغطية: عائلة S26 الكاملة

يطابق الاستغلال حسب خط kernel، وليس حسب الإصدار الفردي (exploit/src/params_table.c هو المرجع؛ ParamsTable.kt يحاكيه لحكم الواجهة فقط):

اسم الجهاز الرمزيالاسم التجاريSoCخط Kernel
m1qGalaxy S26 (SM-S942x)Snapdragoncn أو intl (حسب CSC)
m2qGalaxy S26+ (SM-S947x)Snapdragoncn أو intl (حسب CSC)
m3qGalaxy S26 Ultra (SM-S948x)Snapdragoncn أو intl (حسب CSC)
m1sGalaxy S26 (SM-S942B)Exynosexynos
m2sGalaxy S26+ (SM-S947B)Exynosexynos

الإصدارات المُختبرة (17): S9420ZCS4AZG1, S9470ZCS4AZG1, S9480ZCS3AZF1, S9480ZCS4AZG1, S942BXXS4AZG5, S947BXXS3AZF1, S947BXXS4AZG5, S942QOPU1AZDE, S942U1UES4AZG3, S942USQS4AZG3, S947USQS4AZG3, S9480ZHS4AZG1, S948BXXS4AZG5/6, S948NKSS4AZG3, S948U1UES2AZE1, S948USQS4AZG3.

تحديثات OTA غير المعروفة تتراجع تمامًا كما في params.c الأصلي: الإصدار المطابق أولًا، ثم نفس الطراز + CSC من 3 أحرف (إعادة استخدام OTA)، ثم أحدث إدخال لنفس الجهاز (مُعلَّم كغير موثّق)، وإلا الفشل المُغلَق (يعرض التطبيق UNSUPPORTED وتخرج الطبقة الأصلية بالرمز 2). الطرازات المجهولة تمامًا تُرفض - ولا تُفرض أبدًا.

ما الذي يفعله التطبيق

زر واحد كبير - Root my S26 - يشغّل خط الأنابيب بالكامل ويسرد التفاصيل في بطاقة Output:

  1. فحص الجهاز - model/device/incremental/fingerprint بالإضافة إلى حكم السلسلة (مطابق / إعادة استخدام OTA / تخمين غير موثّق / غير مدعوم). الإصدارات غير المدعومة تتوقف هنا (فشل مُغلَق، دون حرق boot-claim).
  2. Shizuku - يُستخدم تلقائيًا عند الاتصال (uid 2000 shell، نفس عائلة السياق كما في تدفق adb shell في README). يُطلب الإذن مرة واحدة عند التشغيل (ومرة أخرى إذا أُعيد تشغيل الخادم)؛ ينتظر تدفق Root المنح بدلًا من التوقف. إذا كان الخادم متوقفًا يفتح التطبيق مدير Shizuku لتشغيله، ثم يتراجع إلى shell داخل التطبيق. إضافة التطبيق إلى قائمة Shizuku المسموح لها تُلغي الطلب تمامًا.
  3. Stage - ينسخ preload.so، su_daemon، ksud إلى /data/local/tmp (preload.so، cve-2026-43499-root، ksud) وينفّذ chmod عليها. إذا كنت قد نفّذت adb push للملفات مسبقًا وفق README الأصلي، فسيتم التقاطها في مكانها.
  4. Run - ينفّذ بالضبط ما يوثّقه الأصل: env LD_PRELOAD=/data/local/tmp/preload.so sh (مُنشئ يشغّل السلسلة ثم ؛ stdout سجل الاستغلال)، حتى 5 محاولات - السباق احتمالي. مفتاح متاح لكن إعادة التشغيل أكثر أمانًا.

أسفل ذلك: صف واحد حقل أمر + Run as root (أوامر لمرة واحدة عبر بروتوكول C الخاص بـ su daemon؛ PTY التفاعلي خارج نطاق v1)، ورابط Reset صغير يمسح /data/local/tmp/ghostlock-boot.log حتى يمكن إعادة محاولة التشغيل دون إعادة تشغيل الجهاز (يحذّر الأصل من أن هذا قد يسبب panic - إعادة التشغيل هي المسار الآمن).

هيكل المشروع

root@kitploit:~
exploit/                  vendored upstream (Makefile + src/, authoritative)
ksud                      upstream prebuilt KernelSU loader (ARM64 PIE, also in assets)
app/src/main/assets/ksud  staged copy shipped in the APK
app/src/main/assets/      + preload.so / su_daemon after stage-assets.sh
app/src/main/cpp/         optional CMake rebuild of preload.so from exploit/src
app/src/main/java/indev/ghostlock/s26/
  MainActivity.kt         UI (device / stage / run / shell / boot guard)
  ParamsTable.kt          series table mirror (17 builds, 3 lines, 5 codenames)
  DeviceCompat.kt         Build.* identity + series verdict
  ShellRunner.kt          Shizuku (uid 2000) + local fallback, staging
  SuClient.kt             /data/local/tmp/temp_su.sock 'C'-mode client
  GhostlockManager.kt     exit-code interpreter (0/1/2/3/4)
PORTING.upstream.md       porting notes (new firmware = new device_map row)

البناء

المتطلبات: Android Studio (JBR 21) / SDK 35 / NDK r26+ / CMake 3.22.1 / JDK 17.

root@kitploit:~
# 1. Build the native payloads with the NDK (upstream flow):
cd exploit && make preload
#   -> build/bin/preload.so, build/embed/su_daemon_aarch64_pie

# 2. Stage them into the APK assets:
./stage-assets.sh

# 3. Build the app:
./gradlew :app:assembleDebug
#   -> app/build/outputs/apk/debug/app-debug.apk

ksud مُضمَّن مسبقًا (ksud + app/src/main/assets/ksud) لذا الخطوتان 1–2 تنتجان فقط مخرجات NDK الاثنين. هدف CMake في app/src/main/cpp/CMakeLists.txt يمكنه إضافيًا إعادة بناء libpreload.so من نفس المصادر داخل APK كخيار احتياطي.

البناء على الجهاز (Termux، aarch64)

aapt2/NDK الخاصان بـ SDK هما x86_64 ولا يمكن تنفيذهما على الجهاز. الإجراء المُتحقَّق منه (SDK في ~/android-sdk، Gradle 8.9 - AGP 8.5.2 يرفض Gradle 9.x النظامي):

root@kitploit:~
# Native payloads with the Termux toolchain (API 35 target, system liblog):
cd exploit
clang -O2 --target=aarch64-linux-android35 -fPIE -pie -Isrc src/su_daemon.c \
  -o build/embed/su_daemon_aarch64_pie
clang -O2 --target=aarch64-linux-android35 -fPIC -Isrc \
  -Wno-unused-parameter -Wno-sign-compare -Wno-unused-function -Wno-macro-redefined \
  src/main.c src/util.c src/bootclaim.c src/slide.c src/fops.c src/attr.c \
  src/root.c src/params.c src/params_table.c src/preload.c \
  -L/system/lib64 -llog -shared -o build/bin/preload.so
cd .. && ./stage-assets.sh

# APK (CMake native step auto-skips without SDK cmake; Termux aarch64 aapt2
# is injected via -P so checked-in files stay workstation-clean):
env ANDROID_HOME=~/android-sdk ANDROID_SDK_ROOT=~/android-sdk \
  JAVA_HOME=$PREFIX/lib/jvm/java-21-openjdk \
  ~/gradle-dists/gradle-8.9/bin/gradle :app:assembleDebug --console=plain \
  -Pandroid.aapt2FromMavenOverride=$(command -v aapt2)

التشغيل

  1. ثبّت APK على جهاز S26 + ثبّت/شغّل Shizuku (wireless debugging أو PC).
  2. افتح GhostLock - يُطلب إذن Shizuku تلقائيًا عند التشغيل؛ وافق عليه مرة واحدة (يستمر حتى إعادة تشغيل خادم Shizuku).
  3. تحقق من أن بطاقة Device تقول SUPPORTED/LIKELY لإصدارك.
  4. اضغط Stage، ثم Run once. السباق احتمالي - استخدم Retry ×5؛ عدة محاولات أمر طبيعي.
  5. Check root → توقّع uid=0 …. ثم شغّل الأوامر في بطاقة Root shell.
  6. بعد النجاح، ثبّت/استمتع بـ KernelSU Manager (me.weishu.kernelsu)؛ يقوم الـ daemon بتحميل ksud تلقائيًا متأخرًا (انظر وضع K في su_daemon.c).

Shizuku اختياري لكنه موصى به بشدة: التدفق الأصلي يعمل من adb shell (uid 2000، سياق SELinux shell)، والتراجع داخل التطبيق (untrusted_app) أكثر عرضة بكثير للحظر من LD_PRELOAD/exec على /data/local/tmp.

رموز الخروج (تُعرض بعد كل محاولة)

المصدر

  • الاستغلال: exploit/ + PORTING.upstream.md + ksud من 1ndevelopment/ghostlock-s26 (Apache-2.0؛ انظر LICENSE.upstream، NOTICE.upstream). التطبيق لا يربط أي كود استغلال في عمليته الخاصة - بل يجهّز الملفات المبنية بـ NDK ويشغّل shell LD_PRELOAD الموثّق.
  • الشكر (الأصل): Nebula Security (اكتشاف CVE)، polygraphene (الأساس)، monovibe (UMH root / boot-claim)، lukasmaar (kernelsnitch)، veritas501 (مفهوم pipe)، BuSung-dev (أساس التطبيق المرافق).
تنزيل الأداة
.so
_exit
هو
BOOT_FORCE=1
  • Verify - يؤكد أن id يُبلّغ عن uid=0 عبر أي قناة: مقبس temp-daemon أولًا، ثم su بنمط KernelSU. هذا مهم لأنه عند النجاح الكامل يقوم su_daemon بفصل مقبسه والخروج بحكم التصميم (تسليم إلى KernelSU) - مقبس مؤقت ميت مع su يعمل يعني أنه مُجذَّر، وليس معطلًا. يطبع ذيل سجل boot-claim ويُبلّغ عن rooted / نصيحة رمز الخروج.
  • الرمزالمعنىما يجب فعله
    0نجاح (المقبس يعمل، تحميل ksud المتأخر جيد)تحقق من root، استخدم shell
    1فات السباق / فشل التحققأعد المحاولة فقط (طبيعي)
    2إصدار غير مدعوم (فشل مُغلَق)توقف؛ البرنامج الثابت يحتاج نقلًا
    3فشل carrier/rootأعد التشغيل قبل المحاولة التالية
    4شُغّل بالفعل في هذا الإقلاعأعد التشغيل؛ BOOT_FORCE=1 يتجاوز لكنه قد يسبب انهيارًا