
اقرأ وافهم وأسكت معرّف جهاز Windows GDID (المعرّف الذي تعقّب المخترق عبر VPN). تم التحقق منه على جهاز افتراضي حقيقي يعمل بنظام Win11. بصراحة: إنه يوقف الإبلاغ، لكنه لا يجعلك مجهول الهوية.
اقرأ وافهم وأسكِت معرّف الجهاز العام في Windows (GDID) — معرّف الجهاز الخفي المرتبط بالحساب والذي ساعد مكتب التحقيقات الفيدرالي (FBI) في تعقّب مشتبه به كان يستخدم VPN.
⚠️ إخلاء مسؤولية صريح من البداية: لا تقوم هذه الأداة بمسح الـ GDID الخاص بك ولا تجعل هويتك مجهولة. الـ GDID يعيش على خوادم Microsoft، مرتبطًا بحساب Microsoft لديك، منذ لحظة تسجيل دخولك.
no-gdidتمنع جهازك من إعادة تسجيله والإبلاغ عنه — لكنها لا تستطيع التراجع عمّا تملكه Microsoft بالفعل. من أجل خصوصية حقيقية في الأعمال الحساسة، الحل الوحيد الموثوق هو عدم الاعتماد على Windows.
تم إعادة إنتاج كل نتيجة هنا على جهاز افتراضي حقيقي يعمل بنظام Windows 11 Pro (build 26200) قبل تدوينها. لا شيء نظري. انظر إلى docs/technical-writeup.md للحصول على الأدلة، المُصنَّفة حسب مستوى الثقة — وإلى كيف تم بناء هذا لمعرفة ما تضمّنه هذا التحقق فعلًا.
في 2026، تعقّب مكتب التحقيقات الفيدرالي (FBI) مشتبهًا به من مجموعة Scattered Spider كان يبدّل عناوين IP عبر VPN في ثلاثة بلدان. ما فضح أمره كان GDID — وهو معرّف جهاز تربطه Microsoft بتثبيت Windows وتشاركه مع سلطات إنفاذ القانون عند صدور استدعاء رسمي (subpoena). لا يتغيّر هذا المعرّف عندما تغيّر عنوان IP الخاص بك. هذا المستودع يفكّك هذا المعرّف ويُريك ما يمكنك فعله حياله فعلًا.
ليس تجزئة عتاد (hardware hash) — بل PUID جهاز 64-بت من نوع MSA تُصدِره login.live.com، ويُخزَّن محليًا في السجل (registry)، ويُسجَّل في الرسم البياني لخدمة Device Directory Service من Microsoft، ويُبلَّغ عنه عبر Delivery Optimization.
wlidsvc ── mint ──► PUID from login.live.com
│ cached at HKCU\SOFTWARE\Microsoft\IdentityCRL\ExtendedProperties\LID
CDPSvc / CDPUserSvc ── register ──► Device Directory Service (dds.microsoft.com)
│
DoSvc ── report ──► UCDOStatus.GlobalDeviceId (Azure Monitor)
قيمة LID في السجل (hex) تقابل قيمة الخادم g:<decimal>. جميع PUIDs الخاصة بأجهزة Windows تقع في نطاق 0x0018… namespace (تم التحقق: قيمتنا التجريبية والقيمة الواردة في ملف المحكمة تشتركان في هذا النطاق).
جميع البرامج النصية مكتوبة بـ PowerShell، وبأحرف ASCII فقط، وتعمل تحت أي ترميز أحرف (codepage). افتح PowerShell بصلاحيات مرتفعة (elevated).
# 1. See your own GDID and which parts of the chain are active (read-only, safe)
powershell -ExecutionPolicy Bypass -File .\audit\Get-GDID-Audit.ps1
# 2. Preview what the mitigation would change (no changes yet)
powershell -ExecutionPolicy Bypass -File .\mitigate\Disable-GDID-Services.ps1
powershell -ExecutionPolicy Bypass -File .\mitigate\Block-GDID-Endpoints.ps1
# 3. Apply it: stop the report chain + blackhole its endpoints, keep MSA working
powershell -ExecutionPolicy Bypass -File .\mitigate\Disable-GDID-Services.ps1 -Apply
powershell -ExecutionPolicy Bypass -File .\mitigate\Block-GDID-Endpoints.ps1 -Apply
# Undo everything
powershell -ExecutionPolicy Bypass -File .\mitigate\Revert-GDID.ps1
اختبر في جهاز افتراضي (VM) مع لقطة (snapshot) أولًا. فإجراءات التخفيف تعطّل خدمات النظام.
wlidsvc، والمس أي تطبيق من Microsoft — سيعود مطابقًا تمامًا من الخادم. إنه مرتبط بحسابك.DoSvc يرفض Set-Service حتى مع صلاحيات المسؤول — يُعطَّل عبر السجل بقيمة Start=4 (انظر التوثيق).تعطيل هذه الخدمات يكسر التخزين المؤقت من نظير إلى نظير (peer caching) في Delivery Optimization، وPhone Link / "Continue on PC"، والمشاركة القريبة (nearby sharing). تُترك wlidsvc وlogin.live.com وشأنهما حتى يستمر تسجيل الدخول بحساب Microsoft في العمل.
docs/technical-writeup.md — السلسلة الكاملة، ومسارات السجل، وendpoints، وكل ادعاء مُصنَّف حسب مستوى الثقة ([COURT]، [OBSERVED]، [STATIC]، [NO-GDID VÉRIFIÉ]).docs/FAQ.md — إجابات قصيرة عن الأسئلة الواضحة.تم التحقيق في هذا المشروع وكتابته بمساعدة كبيرة من الذكاء الاصطناعي (Claude). سجل الالتزامات (commit history) يقول ذلك، وهذه الفقرة تقوله أيضًا — لا ينبغي أن تضطر إلى التنقيب لمعرفته.
ماذا يعني ذلك عمليًا، بصراحة:
LID وإعادة تشغيل wlidsvc يعيد فعلًا نفس المعرّف بمجرد أن يطلبه أي تطبيق من Microsoft — لقد شاهدت ذلك يحدث. كانت DiagTrack متوقفة بالفعل على ذلك الجهاز الافتراضي ومع ذلك كان الـ GDID ما يزال موجودًا، وهذا ما قضى على نصيحة "فقط أوقف القياس عن بُعد". DoSvc يرفض فعلًا Set-Service بصلاحيات المسؤول، ولهذا يمر السكريبت عبر السجل بدلًا من ذلك. كل واحدة من هذه بدأت كفرضية من الذكاء الاصطناعي، وعدة منها كانت خاطئة حتى تم اختبارها.LID/GDID منذ التثبيت حتى مع حساب محلي فقط). التوثيق يسجّل من أي build جاءت كل نتيجة — إذا كان الادعاء لا يحمل رقم build، فتعامل معه على أنه أضعف.إذا وجدت ادعاءً هنا لا ينطبق على جهازك، افتح issue مع رقم الـ build الخاص بك — فهذا يساوي للمستودع أكثر من مجرد الموافقة.
SmtimesIWndr/gdid-reversal.MIT. أدوات دفاعية موجّهة للخصوصية. استخدمها على أجهزة تملكها.
| المسار | الغرض | هل يكتب؟ |
|---|
audit/Get-GDID-Audit.ps1 | يقرأ الـ GDID الخاص بك + حالة سلسلة الخدمات الخمس | لا |
audit/Get-GDID-Traffic.ps1 | يرسم خريطة نقاط الاتصال الشبكية الفعلية للسلسلة | لا |
mitigate/Block-GDID-Endpoints.ps1 | يعزّل endpoints الخاصة بـ DDS/DO في ملف hosts (يُبقي login.live.com) | مع -Apply |
mitigate/Disable-GDID-Services.ps1 | يعطّل CDPSvc/DoSvc/CDPUserSvc (يُبقي wlidsvc) | مع -Apply |
mitigate/Revert-GDID.ps1 | يستعيد الخدمات وينظّف ملف hosts | نعم |
experiments/ | فحوصات محكومة بلقطات (snapshots) استُخدمت لإثبات النتائج | تخريبيّة، محكومة |
docs/ | توثيق تقني بمصادر + أسئلة شائعة | — |