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

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
Invoke-TheHash — PowerShell Pass The Hash Utils | Kitploit
أدوات/GitHubGitHub/kevin-robertson/invoke-thehash
هجمات كلمات المرورالحركة الجانبيةما بعد الاستغلالأمن الشبكاتاختبار الاختراقالمصادقة
GitHubkevin-robertson/invoke-thehash

Invoke-TheHash

PowerShell Pass The Hash Utils

عرض المستودع
1.8k313منذ 7 سنواتتمت المراجعة من قبل Kitploit

الأكثر شعبية

عرض الكل →

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

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

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

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

Invoke-TheHash

يحتوي Invoke-TheHash على دوال PowerShell لأداء مهام تمرير التجزئة (pass the hash) لـ WMI و SMB. يتم الوصول إلى اتصالات WMI و SMB عبر .NET TCPClient. يتم إجراء المصادقة عن طريق تمرير تجزئة NTLM إلى بروتوكول مصادقة NTLMv2. ليست هناك حاجة إلى صلاحيات المسؤول المحلي من جانب العميل.

المتطلبات

الحد الأدنى PowerShell 2.0

الاستيراد

Import-Module ./Invoke-TheHash.psd1

أو

. ./Invoke-WMIExec.ps1 . ./Invoke-SMBExec.ps1 . ./Invoke-SMBEnum.ps1 . ./Invoke-SMBClient.ps1 . ./Invoke-TheHash.ps1

الدوال

  • Invoke-WMIExec
  • Invoke-SMBExec
  • Invoke-SMBEnum
  • Invoke-SMBClient
  • Invoke-TheHash

Invoke-WMIExec

  • دالة تنفيذ أوامر WMI.
المعاملات:
  • Target - اسم المضيف أو عنوان IP للهدف.
  • Username - اسم المستخدم المستخدم للمصادقة.
  • Domain - المجال المستخدم للمصادقة. هذه المعلمة ليست مطلوبة مع الحسابات المحلية أو عند استخدام @domain بعد اسم المستخدم.
  • Hash - تجزئة كلمة مرور NTLM للمصادقة. ستقبل هذه الدالة إما تنسيق LM:NTLM أو NTLM.
  • Command - الأمر المراد تنفيذه على الهدف. إذا لم يتم تحديد أمر، ستتحقق الدالة فقط من أن اسم المستخدم والتجزئة لديهما صلاحية الوصول إلى WMI على الهدف.
  • Sleep - الافتراضي = 10 مللي ثانية: يحدد قيم Start-Sleep الخاصة بالدالة بالمللي ثانية.
مثال:

Invoke-WMIExec -Target 192.168.100.20 -Domain TESTDOMAIN -Username TEST -Hash F6F38B793DB6A94BA04A52F1D3EE92F0 -Command "command or launcher to execute" -verbose

لقطة شاشة:

wmi

Invoke-SMBExec

  • دالة تنفيذ أوامر SMB (PsExec) تدعم SMB1 و SMB2.1، مع وبدون توقيع SMB.
المعاملات:
  • Target - اسم المضيف أو عنوان IP للهدف.
  • Username - اسم المستخدم المستخدم للمصادقة.
  • Domain - المجال المستخدم للمصادقة. هذه المعلمة ليست مطلوبة مع الحسابات المحلية أو عند استخدام @domain بعد اسم المستخدم.
  • Hash - تجزئة كلمة مرور NTLM للمصادقة. ستقبل هذه الدالة إما تنسيق LM:NTLM أو NTLM.
  • Command - الأمر المراد تنفيذه على الهدف. إذا لم يتم تحديد أمر، ستتحقق الدالة فقط من أن اسم المستخدم والتجزئة لديهما صلاحية الوصول إلى SCM على الهدف.
  • CommandCOMSPEC - الافتراضي = مفعل: يسبق الأمر بـ %COMSPEC% /C.
  • Service - الافتراضي = 20 حرفًا عشوائيًا: اسم الخدمة المراد إنشاؤها وحذفها على الهدف.
  • Sleep - الافتراضي = 150 مللي ثانية: يحدد قيم Start-Sleep الخاصة بالدالة بالمللي ثانية.
  • Version - الافتراضي = تلقائي: (تلقائي، 1، 2.1) فرض إصدار SMB. السلوك الافتراضي هو إجراء تفاوض على إصدار SMB واستخدام SMB2.1 إذا كان مدعومًا من الهدف.
مثال:

Invoke-SMBExec -Target 192.168.100.20 -Domain TESTDOMAIN -Username TEST -Hash F6F38B793DB6A94BA04A52F1D3EE92F0 -Command "command or launcher to execute" -verbose

مثال:

التحقق من متطلبات توقيع SMB على الهدف. Invoke-SMBExec -Target 192.168.100.20

لقطة شاشة:

smb

Invoke-SMBEnum

  • يقوم Invoke-SMBEnum بمهام تعداد المستخدمين والمجموعات وجلسات NetSession والمشاركات عبر SMB2.1 مع وبدون توقيع SMB.
المعاملات:
  • Target - اسم المضيف أو عنوان IP للهدف.
  • Username - اسم المستخدم المستخدم للمصادقة.
  • Domain - المجال المستخدم للمصادقة. هذه المعلمة ليست مطلوبة مع الحسابات المحلية أو عند استخدام @domain بعد اسم المستخدم.
  • Hash - تجزئة كلمة مرور NTLM للمصادقة. ستقبل هذه الدالة إما تنسيق LM:NTLM أو NTLM.
  • Action - (الكل، مجموعة، جلسة NetSession، مشاركة، مستخدم) الافتراضي = مشاركة: إجراء التعداد الذي سيتم تنفيذه.
  • Group - الافتراضي = المسؤولون: المجموعة المراد تعدادها.
  • Sleep - الافتراضي = 150 مللي ثانية: يحدد قيم Start-Sleep الخاصة بالدالة بالمللي ثانية.
  • Version - الافتراضي = تلقائي: (تلقائي، 1، 2.1) فرض إصدار SMB. السلوك الافتراضي هو إجراء تفاوض على إصدار SMB واستخدام SMB2.1 إذا كان مدعومًا من الهدف. ملاحظة: فقط التحقق من التوقيع يعمل مع SMB1.
مثال:

Invoke-SMBEnum -Target 192.168.100.20 -Domain TESTDOMAIN -Username TEST -Hash F6F38B793DB6A94BA04A52F1D3EE92F0 -verbose

لقطة شاشة:

invoke-smbenum

Invoke-SMBClient

  • دالة عميل SMB تدعم SMB2.1 وتوقيع SMB. توفر هذه الدالة بشكل أساسي إمكانيات مشاركة ملفات SMB للعمل مع التجزئات التي لا تملك صلاحية تنفيذ الأوامر عن بُعد. يمكن أيضًا استخدام هذه الدالة لمرحلة إعداد الحمولات لاستخدامها مع Invoke-WMIExec و Invoke-SMBExec. لاحظ أن Invoke-SMBClient مبني على .NET TCPClient ولا يستخدم عميل Windows SMB. Invoke-SMBClient أبطأ بكثير من عميل Windows.
المعاملات:
  • Username - اسم المستخدم المستخدم للمصادقة.
  • Domain - المجال المستخدم للمصادقة. هذه المعلمة ليست مطلوبة مع الحسابات المحلية أو عند استخدام @domain بعد اسم المستخدم.
  • Hash - تجزئة كلمة مرور NTLM للمصادقة. ستقبل هذه الدالة إما تنسيق LM:NTLM أو NTLM.
  • Action - الافتراضي = قائمة: (قائمة/عودة/حذف/تنزيل/رفع) الإجراء الذي سيتم تنفيذه.
      • قائمة: يسرد محتويات دليل.
      • عودة: يسرد محتويات دليل وجميع الدلائل الفرعية.
      • حذف: يحذف ملفًا.
      • تنزيل: يقوم بتنزيل ملف.
      • رفع: يقوم برفع ملف ويضبط أوقات الإنشاء والوصول وآخر كتابة لتتوافق مع الملف المصدر.
  • Source
      • قائمة وعودة: مسار UNC إلى دليل.
      • حذف: مسار UNC إلى ملف.
      • تنزيل: مسار UNC إلى ملف.
      • رفع: ملف للرفع. إذا لم يتم تحديد مسار كامل، يجب أن يكون الملف في الدليل الحالي. عند استخدام مفتاح "Modify"، يجب أن يكون "Source" مصفوفة بايتات.
  • Destination
      • قائمة وعودة: غير مستخدم.
      • حذف: غير مستخدم.
      • تنزيل: إذا تم استخدامه، ستكون القيمة هي اسم الملف الجديد للملف الذي تم تنزيله. إذا لم يتم تحديد مسار كامل، سيتم إنشاء الملف في الدليل الحالي.
      • رفع: مسار UNC للملف الذي تم رفعه. يجب تحديد اسم الملف.
  • Modify
      • قائمة وعودة: ستخرج الدالة كائنًا يتكون من محتويات الدليل.
      • حذف: غير مستخدم.
      • تنزيل: ستخرج الدالة مصفوفة بايتات للملف الذي تم تنزيله بدلاً من كتابة الملف على القرص. يُنصح باستخدام هذا فقط مع الملفات الصغيرة وإرسال المخرجات إلى متغير.
      • رفع: يرفع مصفوفة بايتات إلى ملف وجهة جديد.
  • NoProgress - يمنع عرض شريط تقدم الرفع والتنزيل.
  • Sleep - الافتراضي = 100 مللي ثانية: يحدد قيم Start-Sleep الخاصة بالدالة بالمللي ثانية.
  • Version - الافتراضي = تلقائي: (تلقائي، 1، 2.1) فرض إصدار SMB. السلوك الافتراضي هو إجراء تفاوض على إصدار SMB واستخدام SMB2.1 إذا كان مدعومًا من الهدف. ملاحظة: فقط التحقق من التوقيع يعمل مع SMB1.
مثال:

سرد محتويات دليل مشاركة جذرية. Invoke-SMBClient -Domain TESTDOMAIN -Username TEST -Hash F6F38B793DB6A94BA04A52F1D3EE92F0 -Source \\server\share -verbose

مثال:

سرد محتويات مشاركة بشكل عودي بدءًا من الجذر. Invoke-SMBClient -Domain TESTDOMAIN -Username TEST -Hash F6F38B793DB6A94BA04A52F1D3EE92F0 -Action Recurse -Source \\server\share

مثال:

سرد محتويات دليل فرعي لمشاركة بشكل عودي وإرجاع المحتويات فقط إلى متغير. $directory_contents = Invoke-SMBClient -Domain TESTDOMAIN -Username TEST -Hash F6F38B793DB6A94BA04A52F1D3EE92F0 -Action Recurse -Source \\server\share\subdirectory -Modify

مثال:

حذف ملف على مشاركة. Invoke-SMBClient -Domain TESTDOMAIN -Username TEST -Hash F6F38B793DB6A94BA04A52F1D3EE92F0 -Action Delete -Source \\server\share\file.txt

مثال:

حذف ملف في الدلائل الفرعية داخل مشاركة. Invoke-SMBClient -Domain TESTDOMAIN -Username TEST -Hash F6F38B793DB6A94BA04A52F1D3EE92F0 -Action Delete -Source \\server\share\subdirectory\subdirectory\file.txt

مثال:

تنزيل ملف من مشاركة. Invoke-SMBClient -Domain TESTDOMAIN -Username TEST -Hash F6F38B793DB6A94BA04A52F1D3EE92F0 -Action Get -Source \\server\share\file.txt

مثال:

تنزيل ملف من دليل فرعي داخل مشاركة وتعيين اسم ملف جديد. Invoke-SMBClient -Domain TESTDOMAIN -Username TEST -Hash F6F38B793DB6A94BA04A52F1D3EE92F0 -Action Get -Source \\server\share\subdirectory\file.txt -Destination file.txt

مثال:

تنزيل ملف من مشاركة إلى متغير مصفوفة بايتات بدلاً من القرص. $password_file = Invoke-SMBClient -Domain TESTDOMAIN -Username TEST -Hash F6F38B793DB6A94BA04A52F1D3EE92F0 -Action Get -Source \\server\share\file.txt -Modify

مثال:

رفع ملف إلى دليل فرعي لمشاركة. Invoke-SMBClient -Domain TESTDOMAIN -Username TEST -Hash F6F38B793DB6A94BA04A52F1D3EE92F0 -Action Put -Source file.exe -Destination \\server\share\subdirectory\file.exe

مثال:

رفع ملف إلى مشاركة من متغير مصفوفة بايتات. Invoke-SMBClient -Domain TESTDOMAIN -Username TEST -Hash F6F38B793DB6A94BA04A52F1D3EE92F0 -Action Put -Source $file_byte_array -Destination \\server\share\file.txt -Modify

لقطة شاشة:

invoke-smbclient

Invoke-TheHash

  • دالة لتشغيل دوال Invoke-TheHash ضد أهداف متعددة.
المعاملات:
  • Type - يحدد دالة Invoke-TheHash المطلوبة. يتم تعيينها إما إلى SMBClient أو SMBEnum أو SMBExec أو WMIExec.
  • Target - قائمة بأسماء المضيفين أو عناوين IP أو تدوين CIDR أو نطاقات IP للأهداف.
  • TargetExclude - قائمة بأسماء المضيفين أو عناوين IP أو تدوين CIDR أو نطاقات IP لاستبعادها من القائمة أو الأهداف.
  • PortCheckDisable - (مفتاح) تعطيل التحقق من منفذ WMI أو SMB. نظرًا لأن هذه الدالة ليست متعددة الخيوط بعد، فإن التحقق من المنفذ يساعد في تسريع الدالة عن طريق التحقق من وجود منفذ WMI أو SMB مفتوح قبل محاولة اتصال TCPClient متزامن كامل.
  • PortCheckTimeout - الافتراضي = 100: تعيين مهلة عدم الاستجابة بالمللي ثانية للتحقق من منفذ WMI أو SMB.
  • Username - اسم المستخدم المستخدم للمصادقة.
  • Domain - المجال المستخدم للمصادقة. هذه المعلمة ليست مطلوبة مع الحسابات المحلية أو عند استخدام @domain بعد اسم المستخدم.
  • Hash - تجزئة كلمة مرور NTLM للمصادقة. ستقبل هذه الوحدة إما تنسيق LM:NTLM أو NTLM.
  • Command - الأمر المراد تنفيذه على الهدف. إذا لم يتم تحديد أمر، ستتحقق الدالة فقط من أن اسم المستخدم والتجزئة لديهما صلاحية الوصول إلى WMI أو SCM على الهدف.
  • CommandCOMSPEC - الافتراضي = مفعل: فقط لنوع SMBExec. يسبق الأمر بـ %COMSPEC% /C.
  • Service - الافتراضي = 20 حرفًا عشوائيًا: فقط لنوع SMBExec. اسم الخدمة المراد إنشاؤها وحذفها على الهدف.
  • SMB1 - (مفتاح) فرض SMB1. فقط لنوع SMBExec. السلوك الافتراضي هو إجراء تفاوض على إصدار SMB واستخدام SMB2 إذا كان مدعومًا من الهدف.
  • Sleep - الافتراضي = WMI 10 مللي ثانية، SMB 150 مللي ثانية: يحدد قيم Start-Sleep الخاصة بالدالة بالمللي ثانية.
مثال:

Invoke-TheHash -Type WMIExec -Target 192.168.100.0/24 -TargetExclude 192.168.100.50 -Username Administrator -Hash F6F38B793DB6A94BA04A52F1D3EE92F0

لقطة شاشة:

ithsmb

تنزيل الأداة