
hate_crack v2.36.1
أداة لأتمتة منهجيات التكسير عبر Hashcat من فريق TrustedSec.
___ ___ __ _________ __
/ | \_____ _/ |_ ____ \_ ___ \____________ ____ | | __
/ ~ \__ \\ __\/ __ \ / \ \/\_ __ \__ \ _/ ___\| |/ /
\ Y // __ \| | \ ___/ \ \____| | \// __ \\ \___| <
\___|_ /(____ /__| \___ >____\______ /|__| (____ /\___ >__|_ \
\/ \/ \/_____/ \/ \/ \/ \/
التثبيت
التثبيت من المصدر هو المسار الوحيد المدعوم. hate_crack ليس
موزعًا على PyPI: الأمر pip install hate-crack يُحل إلى عنصر نائب بإصدار 0.0.0
يفشل عن قصد ويشير إلى هنا. الاسم محجوز فقط حتى لا يتمكن أي شخص آخر من نشر منتج مشابه تحت هذا الاسم — راجع
packaging/pypi-placeholder/.
1. تثبيت hashcat
يجب تثبيت Hashcat وأن يكون متاحًا في PATH الخاص بك:
Ubuntu/Kali:
sudo apt-get install -y hashcat
macOS (Homebrew):
brew install hashcat
أو قم بتنزيل ملف ثنائي جاهز من https://hashcat.net/hashcat/ واضبط hcatPath في config.json على موقعه.
2. تنزيل hate_crack
استنسخ مع الوحدات الفرعية (مطلوب لـ hashcat-utils وprinceprocessor وpcfg_cracker وCorporate_Masks واختياريًا omen):
git clone --recurse-submodules https://github.com/trustedsec/hate_crack.git
cd hate_crack
إذا قمت بالاستنساخ بدون الوحدات الفرعية، فقم بتهيئتها:
git submodule update --init --recursive
ثم خصّص الإعدادات إذا لزم الأمر. يستخدم hate_crack ملفَّي إعدادات، لكلٍّ منهما مجموعة مميزة من الإعدادات:
config.json— مسارات قوائم الكلمات، والأقنعة، والقواعد، والضبط الدقيق، وملف potfile، ومسار hashcat، وحدود المرشّحات، ومفاتيح الإشعارات، وإعدادات CLI الافتراضية المفضّلة (35 إعدادًا)..env— إعدادات تكامل الطرف الثالث فقط: بيانات اعتماد Hashview وHashmob، وبيانات اعتماد Pushover، وOllama، وpipal (14 إعدادًا). غير متتبَّع بواسطة git، ويُنشأ بوضعية0600.
يقع هذا الخط الفاصل لسبب واحد: .env هو الملف الذي قد يحتوي على أسرار. بيانات الاعتماد الخاصة بخدمات الطرف الثالث وإعداداتها توضع في الملف غير المتتبَّع ذي الوضعية 0600؛ وكل ما يفعله hate_crack محليًا يبقى في config.json، وهو آمن للمشاركة والمقارنة والتدوين في ملاحظاتك الخاصة. ولهذا أيضًا توجد بيانات اعتماد Pushover في .env بينما توجد مفاتيح تشغيل/إيقاف Pushover في config.json — فالمفاتيح تفضيلات محلية وليست أسرارًا.
لكل مفتاح موطن واحد بالضبط. المفتاح الموضوع في الملف الآخر يُتجاهَل، ويطبع hate_crack تحذيرًا يسمّي الملف الذي ينتمي إليه. ومع ذلك يمكن تجاوز أي مفتاح لتشغيل واحد عبر تصدير متغيّر بيئته. يمكن لمعظم المستخدمين تخطّي هذه الخطوة لأن المسارات الافتراضية تعمل مباشرةً.
config.json دائم ومن الدرجة الأولى — فهو غير مهجور ولا يوجد جدول زمني لإزالته. إعدادات التكامل فقط هي التي انتقلت.
هل ترقّي من config.json واحد؟ يقوم hate_crack بترحيله نيابةً عنك عند أول تشغيل: تُنسخ إعدادات التكامل إلى ملف .env جديد بوضعية 0600، ثم تُزال من config.json حتى لا يدّعيها الملفان معًا. ويطبع المفاتيح التي انتقلت (وليس قيمها أبدًا)، ويحفظ نسختك الأصلية باسم config.json.pre-split.bak قبل المساس بها. ويُترك كل ما تبقّى في config.json كما كان تمامًا، بما في ذلك ترتيب المفاتيح.
أول تشغيل: يُنشئ hate_crack كلا الملفين نيابةً عنك، فلا يوجد ما تفعله. لإعداد .env يدويًا بدلًا من ذلك، انسخ القالب المتتبَّع:
cp .env.example .env
chmod 600 .env
.env.example مُلتزَم به ويُشحن مع كل مفتاح بيانات اعتماد فارغ. يجب ألا يُلتزم بـ .env نفسه أبدًا — فهو مُتجاهَل بواسطة git، إلى جانب تهجئات النسخ الاحتياطي المعتادة له، ويقوم hate_crack دائمًا بإنشائه بوضع 0600 (قراءة/كتابة للمالك فقط). يتم توليد .env.example من المخطط؛ أعد توليده بعد تغيير hate_crack/config_schema.py باستخدام uv run python -m hate_crack.config_writer.
3. تثبيت التبعيات و hate_crack
أسهل طريقة هي تشغيل make (أو make install)، والذي يكتشف نظام التشغيل الخاص بك تلقائيًا ويثبّت:
- التبعيات الخارجية (p7zip، transmission-daemon / transmission-remote)
- يبني الوحدات الفرعية (hashcat-utils، princeprocessor، pcfg_cracker، واختياريًا omen) ويسحب مجموعة الأقنعة Corporate_Masks الخاصة بالبيانات فقط
- تبعيات Python عبر uv وواجهة CLI في
~/.local/bin/hate_crack
make
هذا الإجراء عديم الأثر الجانبي - يتخطى الأدوات المثبتة مسبقًا. لفرض إعادة تثبيت نظيفة:
make reinstall
أو قم بتثبيت التبعيات يدويًا:
التبعيات الخارجية
هذه مطلوبة لبعض عمليات التنزيل/الاستخراج:
7z/7za(p7zip) — يُستخدم لاستخراج أرشيفات.7z.transmission-daemon/transmission-remote— يُستخدم لتنزيل ملفات torrent الخاصة بـ Weakpass.
أوامر التثبيت اليدوي:
Ubuntu/Kali:
sudo apt-get update
sudo apt-get install -y p7zip-full transmission-daemon
macOS (Homebrew):
brew install p7zip transmission-cli # provides transmission-daemon and transmission-remote
ثم قم بتثبيت تبعيات Python وواجهة CLI:
uv sync
mkdir -p ~/.local/bin
printf '#!/usr/bin/env bash\nset -euo pipefail\nexec uv run --directory %s python -m hate_crack "$@"\n' "$(pwd)" > ~/.local/bin/hate_crack
chmod +x ~/.local/bin/hate_crack
بنية المشروع
تم تقسيم المنطق الأساسي الآن إلى وحدات تحت hate_crack/:
hate_crack/cli.py: مساعدات argparse وتجاوزات الإعدادات.hate_crack/api.py: تكاملات Hashview وWeakpass وHashmob (التنزيلات/القوائم/المساعدات).hate_crack/attacks.py: معالجات هجمات القائمة.hate_crack/corpus_stats.py: إحصاءات كلمات المرور للمجموعة الكاملة المستخدمة لوصف مجموعة بيانات إلى LLM.hate_crack/plaintext.py: يستعيد كلمة المرور من سطر مجموعة البيانات (إزالة بادئة التجزئة، فك ترميز$HEX[...]); مشترك بين أوضاع LLM وcorpus_stats وrulegen.hate_crack/llm.py: توليد مرشحات LLM منظمة (JSON) عبر Atomic Agents.hate_crack/menu.py: عارض القائمة المشترك، بما في ذلك التنقل الاختياري بمفاتيح الأسهم.hate_crack/noninteractive.py: موزّع أوامر الهجوم النصية الفرعية.hate_crack/notify/: حزمة الإشعارات (خلفية Pushover، متتبع لكل عملية كسر).hate_crack/username_detect.py: يكتشف ملفات الإدخالusername:hashلتحديد خيار--usernameفي hashcat.hate_crack/formatting.py،hate_crack/progress.py: مساعدات تنسيق الإخراج وعرض التقدم.hate_crack/main.py: التنفيذ الرئيسي لواجهة سطر الأوامر.
يبقى hate_crack.py في المستوى الأعلى نقطة الدخول الرئيسية وينسّق هذه الوحدات.
المراجع والشكر
يعتمد هذا المشروع على عدد من المشاريع والخدمات الخارجية ويستلهم منها. شكراً لـ:
- Hashview (http://github.com/hashview/)
- Weakpass (https://weakpass.com)
- Hashmob (https://hashmob.net)
الاستخدام
بعد التثبيت باستخدام make، شغّل hate_crack من أي مكان:
hate_crack
# or with arguments:
hate_crack <hash_file> <hash_type> [options]
بدلاً من ذلك، شغّله عبر uv:
uv run hate_crack.py <hash_file> <hash_type>
التشغيل كأداة (موصى به)
التثبيت باستخدام make من جذر المستودع - يقوم هذا ببناء الوحدات الفرعية وتجميع الأصول:
cd /path/to/hate_crack
make
hate_crack
يقوم أمر make install بإنشاء bash shim في ~/.local/bin/hate_crack يعمل من دليل المستودع، لذا يتم العثور على الإعدادات والأصول دائمًا بغض النظر عن دليل العمل الحالي.
يتم أيضًا البحث عن الإعدادات في:
- جذر المستودع ودليل الحزمة
~/.hate_crack
ملاحظة: hcatPath في config.json مخصص لموقع ملف hashcat الثنائي فقط (اختياري إذا كان hashcat في PATH). يتم تحميل أصول Hate_crack (hashcat-utils، princeprocessor، pcfg_cracker، Corporate_Masks، omen) من دليل المستودع ويتم تجميعها تلقائيًا بواسطة make install.
التشغيل كسكربت
يستخدم السكربت shebang الخاص بـ uv. اجعله قابلًا للتنفيذ وشغّله:
chmod +x hate_crack.py
./hate_crack.py
يمكنك أيضًا استخدام Python مباشرةً:
python hate_crack.py