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

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
PowerSploit — PowerSploit - إطار عمل باورشيل لما بعد الاستغلال | Kitploit
أدوات/GitHubGitHub/powershellmafia/powersploit
تصعيد الامتيازاتالاستطلاعتوليد الحمولةآليات الاستمراريةالحركة الجانبيةشيل كودما بعد الاستغلالاختبار الاختراقArchived
GitHubpowershellmafia/powersploit

PowerSploit

PowerSploit - إطار عمل باورشيل لما بعد الاستغلال

عرض المستودع
13.1k4.7kمنذ 6 سنواتتمت المراجعة من قبل Kitploit

الأكثر شعبية

عرض الكل →

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

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

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

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

هذا المشروع لم يعد مدعومًا

PowerSploit عبارة عن مجموعة من وحدات Microsoft PowerShell التي يمكن استخدامها لمساعدة مختبر الاختراق خلال جميع مراحل التقييم. يتكون PowerSploit من الوحدات والسيناريوهات التالية:

تنفيذ الكود

تنفيذ كود على جهاز هدف.

Invoke-DllInjection

يحقن ملف DLL في معرف العملية الذي تختاره.

Invoke-ReflectivePEinjection

يقوم بتحميل ملف PE لنظام ويندوز (DLL/EXE) بشكل عاكس في عملية PowerShell، أو يحقن DLL بشكل عاكس في عملية بعيدة.

Invoke-Shellcode

يحقن شيلكود في معرف العملية الذي تختاره أو داخل PowerShell محليًا.

Invoke-WmiCommand

ينفذ كتلة سكريبت PowerShell على جهاز هدف ويعيد مخرجاته المنسقة باستخدام WMI كقناة C2.

تعديل السيناريو

تعديل و/أو تحضير السيناريوهات للتنفيذ على جهاز مخترق.

Out-EncodedCommand

يضغط ويشفر بصيغة Base64 وينشئ مخرجات سطر أوامر لحمولة سكريبت PowerShell.

Out-CompressedDll

يضغط ويشفر بصيغة Base64 وينشئ كودًا لتحميل DLL مُدار في الذاكرة.

Out-EncryptedScript

يشفر ملفات النصوص/السيناريوهات.

Remove-Comment

يزيل التعليقات والمسافات البيضاء الزائدة من السكريبت.

الثبات

إضافة قدرات الثبات إلى سكريبت PowerShell

New-UserPersistenceOption

تكوين خيارات الثبات على مستوى المستخدم لوظيفة Add-Persistence.

New-ElevatedPersistenceOption

تكوين خيارات الثبات المرتفعة لوظيفة Add-Persistence.

Add-Persistence

إضافة قدرات الثبات إلى سكريبت.

Install-SSP

تثبيت ملف DLL لموفر دعم الأمان (SSP).

Get-SecurityPackages

تعداد جميع حزم الأمان المحملة (SSPs).

تجاوز مضاد الفيروسات

مضاد الفيروسات ليس له فرصة أمام PowerShell!

Find-AVSignature

تحديد تواقيع AV ذات البايت الواحد باستخدام نفس طريقة DSplit من "class101".

تسريب البيانات

كل بياناتك أصبحت ملكي!

Invoke-TokenManipulation

سرد رموز تسجيل الدخول المتاحة. ينشئ عمليات باستخدام رموز تسجيل دخول مستخدمين آخرين، ويتقمص رموز تسجيل الدخول في السلسلة الحالية.

Invoke-CredentialInjection

إنشاء جلسات تسجيل دخول ببيانات اعتماد نصية دون إثارة حدث 4648 المشبوه (تسجيل دخول ببيانات اعتماد صريحة).

Invoke-NinjaCopy

نسخ ملف من وحدة تخزين مقسمة بنظام NTFS عن طريق قراءة الوحدة الخام وتحليل بنى NTFS.

Invoke-Mimikatz

تحميل Mimikatz 2.0 بشكل عاكس في الذاكرة باستخدام PowerShell. يمكن استخدامه لتفريغ بيانات الاعتماد دون كتابة أي شيء على القرص. يمكن استخدامه لأي وظيفة يوفرها Mimikatz.

Get-Keystrokes

تسجيل المفاتيح المضغوطة والوقت والنافذة النشطة.

Get-GPPPassword

استرداد كلمة المرور النصية ومعلومات أخرى للحسابات التي تم دفعها عبر تفضيلات نهج المجموعة.

Get-GPPAutologon

استرداد اسم المستخدم وكلمة المرور للتسجيل التلقائي من registry.xml إذا تم دفعه عبر تفضيلات نهج المجموعة.

Get-TimedScreenshot

وظيفة تلتقط لقطات شاشة على فترات منتظمة وتحفظها في مجلد.

New-VolumeShadowCopy

إنشاء نسخة ظل جديدة لوحدة تخزين.

Get-VolumeShadowCopy

سرد مسارات الأجهزة لجميع نسخ الظل المحلية.

Mount-VolumeShadowCopy

تثبيت نسخة ظل لوحدة تخزين.

Remove-VolumeShadowCopy

حذف نسخة ظل لوحدة تخزين.

Get-VaultCredential

عرض كائنات بيانات اعتماد خزينة ويندوز بما في ذلك بيانات اعتماد الويب النصية.

Out-Minidump

إنشاء تفريغ ذاكرة كامل لعملية.

Get-MicrophoneAudio

تسجيل الصوت من ميكروفون النظام وحفظه على القرص.

الفوضى

إحداث فوضى عامة باستخدام PowerShell.

Set-MasterBootRecord

كود إثبات مفهوم يكتب فوق سجل الإقلاع الرئيسي برسالة من اختيارك.

Set-CriticalProcess

يتسبب في ظهور شاشة زرقاء لجهازك عند الخروج من PowerShell.

رفع الامتيازات

أدوات للمساعدة في رفع الامتيازات على هدف.

PowerUp

مركز تجميع لفحوصات رفع الامتيازات الشائعة، إلى جانب بعض نواقل التسلح.

الاستطلاع

أدوات للمساعدة في مرحلة الاستطلاع لاختبار الاختراق.

Invoke-Portscan

يقوم بمسح بسيط للمنافذ باستخدام مآخذ عادية، بناءً (إلى حد كبير) على nmap.

Get-HttpStatus

إرجاع رموز حالة HTTP وعنوان URL الكامل للمسارات المحددة عند توفير ملف قاموس.

Invoke-ReverseDnsLookup

مسح نطاق عناوين IP لسجلات PTR لنظام أسماء النطاقات.

PowerView

PowerView هي سلسلة من الوظائف التي تقوم بتعداد الشبكات ونطاقات ويندوز واستغلالها.

Recon\Dictionaries

مجموعة من القواميس المستخدمة للمساعدة في مرحلة الاستطلاع لاختبار الاختراق. تم أخذ القواميس من المصادر التالية.

  • admin.txt - http://cirt.net/nikto2/
  • generic.txt - http://sourceforge.net/projects/yokoso/files/yokoso-0.1/
  • sharepoint.txt - http://www.stachliu.com/resources/tools/sharepoint-hacking-diggity-project/

الترخيص

مشروع PowerSploit وجميع السكريبتات الفردية تخضع لترخيص BSD 3-Clause ما لم يُنص صراحةً على خلاف ذلك.

الاستخدام

ارجع إلى التعليمات المبنية على التعليقات في كل سكريبت فردي للحصول على معلومات مفصلة حول الاستخدام.

لتثبيت هذه الوحدة، قم بوضع مجلد PowerSploit بالكامل في أحد أدلة الوحدات الخاصة بك. مسارات وحدات PowerShell الافتراضية مدرجة في متغير البيئة $Env:PSModulePath.

مسار الوحدة الافتراضي لكل مستخدم هو: "$Env:HomeDrive$Env:HOMEPATH\Documents\WindowsPowerShell\Modules" مسار الوحدة الافتراضي على مستوى الكمبيوتر هو: "$Env:windir\System32\WindowsPowerShell\v1.0\Modules"

لاستخدام الوحدة، اكتب Import-Module PowerSploit

لعرض الأوامر المستوردة، اكتب Get-Command -Module PowerSploit

إذا كنت تستخدم PowerShell v3 وتريد إزالة التحذير المزعج 'هل تريد حقًا تشغيل السكريبتات التي تم تنزيلها من الإنترنت'، بمجرد وضع PowerSploit في مسار الوحدة الخاص بك، قم بتشغيل السطر التالي: $Env:PSModulePath.Split(';') | % { if ( Test-Path (Join-Path $_ PowerSploit) ) {Get-ChildItem $_ -Recurse | Unblock-File} }

للحصول على مساعدة لكل أمر فردي، استخدم Get-Help.

ملاحظة: تم تصميم جميع الأدوات الموجودة في هذه الوحدة بحيث يمكن تشغيلها بشكل فردي. إدراجها في وحدة ما يزيد من قابلية النقل.

قواعد المساهمة

نحتاج إلى مساهمات! إذا كانت لديك فكرة رائعة لـ PowerSploit، فسنكون سعداء بإضافتها. ستتطلب الإضافات الجديدة ما يلي:

  • يجب أن يلتزم السكريبت بدليل الأسلوب. أي استثناءات لسطر الدليل تحتاج إلى سبب واضح وصحيح.
  • يجب تحديث بيان الوحدة ليعكس الوظيفة الجديدة المضافة.
  • يجب إضافة وصف موجز للوظيفة إلى README.md هذا.
  • يجب أن تصاحب اختبارات Pester جميع الوظائف الجديدة. راجع مجلد Tests للحصول على أمثلة، لكننا نبحث عن اختبارات تغطي الأساسيات على الأقل عن طريق اختبار المدخلات/المخرجات المتوقعة/غير المتوقعة وأن الوظيفة تظهر الوظيفة المطلوبة. تأكد من أن الوظيفة تجتاز جميع الاختبارات (يفضل على أنظمة تشغيل متعددة) قبل تقديم طلب السحب. شكرًا!

دليل أسلوب السكريبت

لجميع المساهمين والمساهمين المستقبليين في PowerSploit، أطلب منك اتباع دليل الأسلوب هذا عند كتابة السكريبتات/الوحدات.

  • تجنب Write-Host بأي ثمن. دوال/cmdlets PowerShell ليست أدوات سطر أوامر! لن يتم النظر في طلبات السحب التي تحتوي على كود يستخدم Write-Host. بدلاً من ذلك، يجب عليك إخراج كائنات مخصصة. لمزيد من المعلومات حول إنشاء كائنات مخصصة، اقرأ هذه المقالات:

    • http://blogs.technet.com/b/heyscriptingguy/archive/2011/05/19/create-custom-objects-in-your-powershell-script.aspx
    • http://technet.microsoft.com/en-us/library/ff730946.aspx
  • إذا كنت ترغب في عرض معلومات تصحيح ذات صلة على الشاشة، استخدم Write-Verbose. يمكن للمستخدم دائمًا إضافة '-Verbose'.

  • قدم دائمًا تعليمات وصفية مبنية على التعليقات لكل سكريبت. أيضًا، تأكد من تضمين اسمك وترخيص BSD 3-Clause (ما لم تكن هناك ظروف استثنائية تمنع تطبيق ترخيص BSD).

  • تأكد من أن جميع الدوال تتبع اتفاقية اسم الفعل-الاسم الصحيحة لـ PowerShell. استخدم Get-Verb لسرد الأفعال الافتراضية المستخدمة من قبل PowerShell. سيتم النظر في الاستثناءات للأفعال المدعومة على أساس كل حالة على حدة.

  • أفضل أن تكون أسماء المتغيرات مكتوبة بالأحرف الكبيرة وأن تكون وصفية قدر الإمكان.

  • قدم مسافات منطقية بين الكود الخاص بك. قم بمسافة بادئة للكود لجعله أكثر قابلية للقراءة.

  • إذا وجدت نفسك تكرر الكود، اكتب دالة.

  • التقط جميع الأخطاء المتوقعة وقدم مخرجات ذات معنى. إذا كان لديك خطأ يجب أن يوقف تنفيذ السكريبت، استخدم 'Throw'. إذا كان لديك خطأ لا يحتاج إلى إيقاف التنفيذ، استخدم Write-Error.

  • إذا كنت تكتب سكريبتًا يتفاعل مع واجهة برمجة تطبيقات Win32، حاول تجنب تجميع C# بشكل مضمن مع Add-Type. حاول استخدام وحدة PSReflect إذا أمكن.

  • لا تستخدم مسارات ثابتة (hardcoded). يجب أن يكون السكريبت قابلاً للاستخدام فورًا دون تعديل. لا ينبغي لأحد أن يضطر إلى تعديل الكود إلا إذا أراد ذلك.

  • التوافق مع PowerShell v2 مطلوب بشدة.

  • استخدم معاملات موضعية واجعل المعاملات إلزامية عندما يكون ذلك منطقيًا. على سبيل المثال، أبحث عن شيء مثل:

    • [Parameter(Position = 0, Mandatory = $True)]
  • لا تستخدم أي أسماء مستعارة إلا إذا كان ذلك منطقيًا لاستقبال مدخلات خط الأنابيب. إنها تجعل الكود أكثر صعوبة في القراءة للأشخاص غير المألوفين باسم مستعار معين.

  • حاول ألا تجعل الأوامر تعمل لفترة طويلة جدًا. على سبيل المثال، خط الأنابيب هو مكان طبيعي لفاصل سطر.

تنزيل الأداة
  • لا تفرط في استخدام التعليقات المضمنة. استخدمها فقط عندما تكون جوانب معينة من الكود قد تكون محيرة للقارئ.

  • بدلاً من استخدام Out-Null لكبت المخرجات غير المرغوب فيها/غير ذات الصلة، احفظ المخرجات غير المرغوب فيها إلى $null. القيام بذلك يوفر تحسينًا طفيفًا في الأداء.

  • استخدم قيمًا افتراضية لمعاملاتك عندما يكون ذلك منطقيًا. من الناحية المثالية، تريد سكريبتًا يعمل دون الحاجة إلى أي معاملات.

  • إذا كان السكريبت ينشئ كائنات مخصصة معقدة، قم بتضمين ملف ps1xml يقوم بتنسيق مخرجات الكائن بشكل صحيح.