
قشرة تفاعلية عبر الأنظمة الأساسية لـ Microsoft Defender for Endpoint Live Response
قشرة تفاعلية متعددة المنصات لـ Microsoft Defender for Endpoint Live Response.
| الميزة | التفاصيل |
|---|---|
| المنصة | PowerShell Core 7.0+ (Windows, Linux, macOS) |
| أوضاع API | داخلي (بوابة، قريب من الوقت الحقيقي) ورسمي (عام، بدون حالة) |
| التنفيذ | أوامر عشوائية + 25 أمر LR أصلي |
| المصادقة | 7 طرق مصادقة، قائمة موحدة، تحديث تلقائي |
| الترخيص | MIT |
تتصل قشرة LaraC2 بـ MDE Live Response من خلال مسارين مستقلين لواجهة API – واجهة API الداخلية للبوابة (جلسات مستمرة، زمن استجابة 2-5 ثوانٍ تقريبًا) وواجهة API الرسمية العامة (لكل أمر، زمن استجابة 20-60 ثانية تقريبًا). تقوم برفع الدعائم المنفذة تلقائيًا، وتتعامل مع تحديد المعدل بشفافية، وتوفر بيئة REPL كاملة مع إدارة الآلات، وإدارة المكتبات، ونظام مساعدة مدمج.
| الوثيقة | الغرض |
|---|---|
| دليل المستخدم | الإعداد خطوة بخطوة، والمصادقة، والتشغيل |
| مرجع الأوامر | جميع الأوامر، والتوجيه، والتجميع، والإكمال التلقائي |
| مرجع الأخطاء | رموز HTTP، أخطاء القشرة، أخطاء المصادقة، الإصلاحات |
| الأداء | مقارنة زمن الاستجابة والإنتاجية والحدود بين الداخلي والرسمي |
| الهندسة | البنية الداخلية، سلاسل المصادقة، نقاط النهاية، هيكل الملفات |
| المساهمة | كيفية المساهمة، الاختبار، تقديم طلبات السحب |
| سياسة الأمان | كيفية الإبلاغ عن ثغرة بشكل خاص |
| المراجع | الأعمال السابقة، الأبحاث ذات الصلة، الإسنادات |
| إخلاء المسؤولية | الترخيص، الإسنادات |
connect يعيد المصادقة عند انتهاء الجلسةmulti مع تصفية نمط الاسم وتحديد العدد الأعلىMachine.LiveResponse + Library.Manage (الوضع الرسمي)git clone https://github.com/akefallonitis/larac2shell.git cd larac2shell pwsh -File shell/Invoke-MDEShell.ps1
هذا كل شيء. تعرض الواجهة قائمة مصادقة موحدة من 7 طرق عند التشغيل الأول — اختر إحداها، قم بالمصادقة، حدد جهازًا، وستكون في REPL. لا ملف تكوين، لا وسائط، لا شيء للإعداد.```
Select API mode:
Internal API (security.microsoft.com — near real-time, ~2-5s/cmd)
1 Credentials + MFA username + password, TOTP/push/SMS [auto-refresh]
2 Software passkey FIDO2/WebAuthn JSON key file [auto-refresh]
3 ESTS cookie ESTSAUTHPERSISTENT from browser (~24hr)
4 Temporary Access Pass one-time admin-issued code
5 Direct sccauth + XSRF cookies from browser DevTools (~1hr)
Official API (api.securitycenter.microsoft.com — CI/CD ready, ~20-60s/cmd)
6 Device code browser login (interactive)
7 Client credentials app registration with client secret
Auth method (1-7):
الخيارات 1-5 تضبط الوضع الداخلي، 6-7 تضبط الرسمي. يمكنك تبديل الأوضاع لاحقًا دون إعادة التشغيل — انظر تبديل الأوضاع ضمنيًا أدناه.
[INT myhost C:]> mode Current mode: Internal API Switch with: 'mode internal' or 'mode official'.
[INT myhost C:]> mode official [Mode] Switching from Internal API to official... (auth menu for official mode opens) [Mode] Now in official mode. Run 'machines' to list targets or 'connect <name|id>' to select one.
`mode <target>` يقوم بفصل أي جلسة LR حالية، ومسح حالة المصادقة القديمة، وإعادة تشغيل تدفق المصادقة للوضع الهدف. عند العودة، تصبح مُصادقًا في الوضع الجديد دون تحديد أي جهاز — قم بتشغيل `machines` لعرض القائمة، أو `connect <name|id>` للانتقال مباشرة إلى الهدف. لا حاجة لإعادة التشغيل.
### اختصارات واجهة الأوامر (اختياري)
لأغراض البرمجة النصية أو عندما تريد تخطي القائمة الموحدة:```powershell
# Pre-select the mode (narrows the auth menu to 1-5 or 6-7)
pwsh -File shell/Invoke-MDEShell.ps1 -Mode internal
pwsh -File shell/Invoke-MDEShell.ps1 -Mode official
# Pre-select a machine (skips the picker)
pwsh -File shell/Invoke-MDEShell.ps1 -Machine myhost
# Software passkey path (internal mode)
pwsh -File shell/Invoke-MDEShell.ps1 -PasskeyPath ./keys/passkey.json
# Non-interactive single command (exits with remote command's exit code)
pwsh -File shell/Invoke-MDEShell.ps1 -Machine myhost -Command 'whoami'
يُستخدم فقط في واحدة من الحالات: الوضع الرسمي مع secret العميل، بشكل غير تفاعلي. كل طريقة مصادقة أخرى تطلب منك تفاعليًا ولا تخزن أي شيء على القرص. إذا كنت لا تحتاج إلى مصادقة client-credentials غير المراقبة، يمكنك تخطي هذا القسم بالكامل.```powershell Copy-Item shell/config/shell-config.example.json shell/config/shell-config.json
pwsh -File shell/Invoke-MDEShell.ps1 -Config shell/config/shell-config.json
مخطط التكوين (جميع الحقول اختيارية باستثناء `official.tenantId` + `official.clientId` عند استخدام بيانات اعتماد العميل):