
تطبيق Mimikatz بلغة بايثون الخالصة
إذا أعجبك هذا المشروع، فكر في شراء تراخيص OctoPwn، مجموعة اختبار الاختراق الكاملة التي تعمل في متصفحك!
للحصول على إشعارات حول الإصدارات الجديدة ومعلومات أخرى، انضم إلى Discord
تطبيق Mimikatz بلغة Python الخالصة. على الأقل جزء منه :)
يعمل على جميع أنظمة التشغيل التي تدعم بايثون >=3.6

هذا المشروع، إلى جانب العديد من أدوات اختبار الاختراق الأخرى، يعمل في المتصفح بقوة OctoPwn!
تحقق من الإصدار المجتمعي على OctoPwn - Live
منذ الإصدار 0.1.1 تغير سطر الأوامر قليلاً. لا تقلق، لدي WIKI رائعة لك.
قم بتثبيته عبر pip أو عن طريق استنساخه من github.
سيقوم المثبت بإنشاء ملف تنفيذي pypykatz في دليل Scripts الخاص ببايثون. يمكنك تشغيله من هناك، يجب أن يكون في PATH الخاص بك.
انتبه، قد تفشل النسخة الرئيسية من github لأنني كسول لعمل فرع مناسب للإصدارات الجديدة. سأحاول إنشاء فرع للإصدار المستقر مع ذلك.
pip3 install pypykatz
تثبيت المتطلبات الأساسية
pip3 install minidump minikerberos aiowinreg msldap winacl
استنساخ هذا المستودع
git clone https://github.com/skelsec/pypykatz.git
cd pypykatz
تثبيته
python3 setup.py install
مستقل عن النظام الأساسي - جميع الأوامر لها نسخة "حية" ونسخة عادية عند الإمكان. الإصدار "الحي" سيستخدم النظام الحالي ويعمل فقط على ويندوز. الأوامر العادية مستقلة عن النظام الأساسي.
يمكن استخدامه كمكتبة لمشاريعك.
يمكنه تحليل الأسرار المخفية في عملية LSASS. هذا يشبه sekurlsa:: من mimikatz ولكن بأوامر مختلفة.
الفرق الرئيسي هنا هو أن كل منطق التحليل مفصول عن مصدر البيانات، لذلك إذا قمت بتعريف كائن قارئ جديد، يمكنك أساسًا إجراء تحليل LSASS من أي مكان.
مصادر البيانات المدعومة حالياً:
مشروعك هنا بجدية، من السهل جدًا دمجه.يحلل خلايا السجل للحصول على بيانات الاعتماد المخزنة، مثل تجزئات NT و LM، وبيانات اعتماد ذاكرة التخزين المؤقت للمجال (DCC/DCC2)، وأسرار LSA.
مصادر البيانات المدعومة حالياً:
مشروعك هنا بجدية، من السهل جدًا دمجه.DPAPI هو حامي الأسرار المحلية من أنواع عديدة. حالياً يدعم المشروع فك تشفير المفاتيح الرئيسية، كائنات dpapi، ملفات بيانات الاعتماد، ملفات الخزنة.
النتائج ليست صحيحة 100%، حيث لا توجد وثائق كافية حول معظم هذه الأمور. اسحب الطلب مرحب به دائمًا!
مصادر البيانات المدعومة حالياً:
من فضلك لا تدمج هذا الجزء في مشروعك، إنه تجريبييمكنه تشغيل عملية جديدة كأي مستخدم لديه عملية تعمل على الجهاز.
يمكنه تعيين أي رمز متاح من اختيارك لمؤشر الترابط الخاص بك
هذا مجرد أساسيات حقًا. السبب في وجوده هو أنني أكره استخدام psexec باستمرار للحصول على شل النظام من المسؤول...
نعم... تحقق من الكود. يحتوي على تعليقات وأشياء...
سبب وجود هذه المعلمة: لاختيار البنية الصحيحة للتحليل، نحتاج معلومات الطابع الزمني لملف msv dll. للأسف، لا يحتوي rekall دائمًا على هذه المعلومات لسبب ما، وبالتالي قد يفشل التحليل.
إذا فشل التحليل، يمكن أن يحل هذا المشكلة.
المعامل: -t
القيم: 0 أو 1
مثال:
pypykatz.py rekall <ملف_تفريغ_الذاكرة> -t 0
هناك طريقتان لاستخدام تحليل الذاكرة القائم على rekall.
pypykatz rekallستحتاج إلى تحديد ملف الذاكرة المراد تحليله.
إشعارات هامة:
rekall، يرجى ملاحظة: يجب تشغيله في virtualenv، وستحتاج إلى تثبيت pypykatz في نفس virtualenv!out_file و kerberos_dir!يمكنك العثور على ملف إضافة rekall باسم pypykatz_rekall.py في مجلد plugins من pypykatz.
ستحتاج إلى نسخه إلى مجلد plugins/windows الخاص بـ rekall، وإعادة تسميته إلى pypykatz.py.
بعد ذلك، قم بتعديل ملف __init__.py الموجود في نفس المجلد وأضف السطر التالي في النهاية: from rekall.plugins.windows import pypykatz
إذا كان كل شيء على ما يرام، يمكنك استخدام أمر pypykatz من سطر أوامر rekall مباشرة.
إذا كنت تريد مساعدتي في إصدار مستقر لهذا المشروع، يمكنك إرسال تفريغات ذاكرة لعملية lsass.exe إلى الرابط التالي: https://nx5494.your-storageshare.de/s/SJteWj3PPbg8jBA
هام: يرجى عدم إرسال تفريغات لعملية lsass من جهازك الشخصي!!! سأتمكن من رؤية أسرارك بما في ذلك التجزئات/كلمات المرور! أرسل ملفات تفريغ من أجهزة مثل أنظمة الاختبار الافتراضية التي لا تمانع أن يرى شخص ما بيانات الاعتماد عليها. (إذا كان لديك نظام مجال اختبار مع إعداد Kerberos، فسيكون ذلك الأفضل)
أيضًا، سأقدر إذا لم تقم بإرسال رسائل غير مرغوب فيها إلي...
من أجل إنشاء mimikatz بلغة Python، يجب على المرء إنشاء تعريفات بنية لعدد لا يحصى من البنى المختلفة (تحقق من الكود الأصلي) دون مساعدة المحلل المدمج الذي ستحصل عليه بشكل طبيعي من استخدام مترجم أصلي. المشكلة الآن هي أن حتى اختلاف بايت واحد سيؤدي إلى فشل تحليل هذه البنى. المشكلة تدور بشكل أساسي حول المحاذاة 32 - 64، لذلك تفريغات lsass من إصدارات ويندوز 32 بت مقدرة أيضًا!
أحتاج إلى بيانات يمكنني التحقق من الكود عليها وإجراء التغييرات اللازمة على المحللات حتى يعمل كل شيء بشكل صحيح.
تقديم مشكلات على صفحة github هذه لن يساعد على الإطلاق بدون الملف الفعلي ولن يعجب github بمرفقات ملفات بحجم 40-300 ميجابايت.
تهدف معظم مشاريعي الكبيرة في بايثون إلى أقصى قدر من قابلية النقل، مما يعني أنني أستخدم حزم الطرف الثالث فقط حيثما كان ذلك ضروريًا للغاية. حتى الآن، يتم استخدام ثلاث حزم إضافية، وأنوي الحفاظ على هذا الوضع.
Python>=3.6
minidump
minikerberos
asn1crypto
Benjamin DELPY @gentilkiwi لـ Mimikatz
Francesco Picasso لـ المكوّن الإضافي mimikatz.py لـ volatility
Alberto Solino (@agsolino) لـ impacket
Richard Moore لوحدة AES
Todd Whiteman لوحدة DES
David Buxton لبرنامج تحويل الطابع الزمني