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

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
ntlmv1-multi — أداة متعددة الاستخدامات لـ NTLMv1 | Kitploit
أدوات/GitHubGitHub/evilmog/ntlmv1-multi
كسر كلمات المرورأدوات التشفير/فك التشفيرهجمات كلمات المرورتحليل التجزئةالتشفيرالمصادقة
GitHubevilmog/ntlmv1-multi

ntlmv1-multi

أداة متعددة الاستخدامات لـ NTLMv1

عرض المستودع
670997منذ 2 أشهرتمت المراجعة من قبل Kitploit

الأكثر شعبية

عرض الكل →

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

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

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

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

أداة NTLMv1 المتعددة

تقوم هذه الأداة بعكس تجزئات NTLMv1 إلى NTLM، أو بشكل أكثر تحديدًا، تقوم بتنسيق استجابات التحدي NTLMv1 إلى تنسيق يمكن كسره باستخدام وضع hashcat 14000

حساب CT3

إذا حددت --ct3، فسيقوم بحساب آخر 4 أرقام من NTLM لك، وإذا حددت --json فإن --ct3 يكون ضمنيًا وسيتم إرجاعه كعنصر pt3، على سبيل المثال:

root@kitploit:~
python3 ntlmv1.py --ntlm "DC1$::MOG:AC51EC464A91A35A04A862DA3106EC2B352661ECEF909C5E:AC51EC464A91A35A04A862DA3106EC2B352661ECEF909C5E:1122334455667788" --json 

{"ntlmv1": "DC1$::MOG:AC51EC464A91A35A04A862DA3106EC2B352661ECEF909C5E:AC51EC464A91A35A04A862DA3106EC2B352661ECEF909C5E:1122334455667788", "user": "DC1$", "domain": "MOG", "challenge": "1122334455667788", "lmresp": "AC51EC464A91A35A04A862DA3106EC2B352661ECEF909C5E", "ntresp": "AC51EC464A91A35A04A862DA3106EC2B352661ECEF909C5E", "ct3": "352661ECEF909C5E", "ct3_crack": "ct3_to_ntlm.bin 352661ECEF909C5E 1122334455667788", "pt3": "8c71", "hash1": "AC51EC464A91A35A:1122334455667788", "hash2": "04A862DA3106EC2B:1122334455667788"}

أخيرًا في هذا التحديث، قمت بنقل الدوال إلى main() بحيث يمكنك فقط استيراد الوحدة للاستخدام المباشر

تحديثات 10 نوفمبر 2020

أضفت خيارين جديدين، --hashcat و --hcutils، حيث يحددان المسار إلى hashcat وhashcat-utils على التوالي حتى تتمكن من النسخ واللصق مباشرة من الأداة.

يمكنك تشغيل الأداة بهذه الطريقة إذا كان دليل hashcat الخاص بك في ~/git/hashcat ودليل hashcat-utils الخاص بك في ~/git/hashcat-utils:

root@kitploit:~
python3 ./ntlmv1.py --ntlm "SERVER1$::MOG:9DE7F41D81C1207400000000000000000000000000000000:DE766A98B60D1C911DCFFFDBB3E521314B2CE34EAB63CC7B:1122334455667788" --hashcat "~/git/hashcat" --hcutils "~/git/hashcat-utils"

تحديثات 10 ديسمبر 2019

نعم، يُفترض أن هذا متوافق مع بايثون 3، كما قمت بدمج ntlmv1 وntlmv1-ess

ntlmv1-multi

أداة NTLMv1 متعددة الاستخدامات

تقوم هذه الأداة بتعديل تجزئات NTLMv1/NTLMv1-ESS/MSCHAPv2 بحيث يمكن كسرها باستخدام وضع DES 14000 في hashcat

تعتمد هذه الأداة على العمل الذي قام به atom من فريق Hashcat https://hashcat.net/forum/thread-5832.html

كما أنها تستند إلى https://hashcat.net/forum/thread-5912.html و https://www.youtube.com/watch?v=LIHACAct2vo

التثبيت

قم بتثبيت أداة الجيل التالي ntlmv1_nextgen.py كأمر عام ntlmv1-multi باستخدام uv:

root@kitploit:~
uv tool install .
ntlmv1-multi --ntlmv1 "hashcat::DUSTIN-5AA37877:76365E2D142B5612980C67D057EB9EFEEE5EF6EB6FF6E04D:727B4E35F947129EA52B9CDEDAE86934BB23EF89F50FC595:1122334455667788"

أو قم بتشغيله مباشرة من المستودع دون تثبيت:

root@kitploit:~
uv run ntlmv1_nextgen.py --ntlmv1 "hashcat::DUSTIN-5AA37877:..."

يأتي المشروع مع pyproject.toml (بايثون 3.14+، اعتماد pycryptodome) لذلك يحل uv كل شيء لك؛ لا يزال ntlmv1.py الأصلي يعمل بشكل مستقل مع أي مترجم بايثون 3.

أداة الجيل التالي (ntlmv1_nextgen.py)

ntlmv1_nextgen.py (المثبت كأمر ntlmv1-multi) هو المحلل الحديث. يقبل NTLMv1 وكتل $99$ وMSCHAPv2، ويتعامل مع ESS تلقائيًا، ويمكنه إكمال التحويل الكامل من NTLMv1 -> NTLM من ملف potfile مكسور في خطوة واحدة. الخيارات المتاحة:

الاستخدام

NTLMv1 بدون ESS

للالتقاط، استخدم responder مع العلم --lm، بدون --lm ستقوم بتفعيل ESS مما سيزيد من وقت الكسر، كما أن هناك علمًا جديدًا --disable-ess يحاول تعطيل ESS وإجبار خفض الإصدار. جرب --disable-ess أولًا وإذا فشل فجرّب --lm. إذا كنت تستخدم --disable-ess أو --lm فتأكد من أن تحدي العميل لديك هو 1122334455667788 لاستخدام FPGA، ومع ذلك قد يؤدي ذلك إلى إثارة بعض حمايات IDS/IPS للشبكة إذا رأت ذلك الحركة.

سيبدو الالتقاط هكذا.

root@kitploit:~
[SMB] NTLMv1 Client   : 184.64.60.62
[SMB] NTLMv1 Username : DUSTIN-5AA37877\hashcat
[SMB] NTLMv1 Hash     : hashcat::DUSTIN-5AA37877:76365E2D142B5612980C67D057EB9EFEEE5EF6EB6FF6E04D:727B4E35F947129EA52B9CDEDAE86934BB23EF89F50FC595:1122334455667788
[*] Skipping previously captured hash for DUSTIN-5AA37877\hashcat

جزء التجزئة يبدو هكذا

root@kitploit:~
hashcat::DUSTIN-5AA37877:76365E2D142B5612980C67D057EB9EFEEE5EF6EB6FF6E04D:727B4E35F947129EA52B9CDEDAE86934BB23EF89F50FC595:1122334455667788

لذا استخدم الأداة المتعددة هكذا (كما أنها متوافقة مع بايثون 2)

root@kitploit:~
python3 ntlmv1.py --ntlmv1 hashcat::DUSTIN-5AA37877:76365E2D142B5612980C67D057EB9EFEEE5EF6EB6FF6E04D:727B4E35F947129EA52B9CDEDAE86934BB23EF89F50FC595:1122334455667788

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

root@kitploit:~
['hashcat', '', 'DUSTIN-5AA37877', '76365E2D142B5612980C67D057EB9EFEEE5EF6EB6FF6E04D', '727B4E35F947129EA52B9CDEDAE86934BB23EF89F50FC595', '1122334455667788']

Hostname: DUSTIN-5AA37877
Username: hashcat
Challenge: 1122334455667788
LM Response: 76365E2D142B5612980C67D057EB9EFEEE5EF6EB6FF6E04D
NT Response: 727B4E35F947129EA52B9CDEDAE86934BB23EF89F50FC595
CT1: 727B4E35F947129E
CT2: A52B9CDEDAE86934
CT3: BB23EF89F50FC595

To Calculate final 4 characters of NTLM hash use:
./ct3_to_ntlm.bin BB23EF89F50FC595 1122334455667788

To crack with hashcat create a file with the following contents:
727B4E35F947129E:1122334455667788
A52B9CDEDAE86934:1122334455667788

To crack with hashcat:
./hashcat -m 14000 -a 3 -1 charsets/DES_full.charset --hex-charset hashes.txt ?1?1?1?1?1?1?1?1

كلمة المرور المستخدمة في هذه الحالة هي "password" ويمكننا التحقق من تجزئة ntlm باستخدام

root@kitploit:~
echo -n password | iconv -f utf8 -t utf16le | openssl dgst -md4
(stdin)= 8846f7eaee8fb117ad06bdd830b7586c

باستخدام أداة ct3_to_ntlm.bin من hashcat utils التي كتبها atom، يمكنك حساب آخر 4 أحرف من تجزئة NTLM من تحدي NTLMv1، والتي تخرجها الأداة

root@kitploit:~
./ct3_to_ntlm.bin BB23EF89F50FC595 1122334455667788
586c

هذا يتطابق مع نهاية تجزئة ntlm لذا نحن جاهزون، الخطوة التالية هي كسر التجزئات باستخدام hashcat لذا نحتاج إلى إنشاء ملف hashes.txt يحتوي على

root@kitploit:~
727B4E35F947129E:1122334455667788
A52B9CDEDAE86934:1122334455667788

لكسر هذا باستخدام hashcat استخدم

root@kitploit:~
./hashcat -m 14000 -a 3 -1 charsets/DES_full.charset --hex-charset hashes.txt ?1?1?1?1?1?1?1?1

ملاحظة مهمة هي أن hashcat سيعيد مفاتيح DES وليس مفاتيح NTLM، ستحتاج إلى التحويل إلى NTLM باستخدام deskey_to_ntlm.pl من Hashcat Utils، ويمكن إنجاز ذلك عن طريق

root@kitploit:~
./deskey_to_ntlm.pl [cracked des key 1]
./deskey_to_ntlm.pl [cracked des key 2]

ثم تقوم بدمج مفتاحي ntlm مع الجزء الثالث من كلمة المرور. المحسوب بواسطة (أيًا كان ما تخرجه الأداة)

root@kitploit:~
./ct3_to_ntlm.bin BB23EF89F50FC595 1122334455667788

اجمع هذه الأجزاء الثلاثة معًا وستكون جاهزًا

الاختبار باستخدام محول des

إذا كنت تختبر الكود الخاص بي فقط وتعرف كلمة المرور بالفعل، يمكنك استخدام محول des

root@kitploit:~
python ntlm-to-des.py --ntlm b4b9b02e6f09a9bd760f388b67351e2b
DESKEY1: b55d6d04e67926
DESKEY2: bcba83e6895b9d

echo "$HEX[b55d6d04e67926]">>des.cand
echo "$HEX[bcba83e6895b9d]">>des.cand

ببساطة تقوم بما يلي

root@kitploit:~
echo "$HEX[b55d6d04e67926]">>des.cand
echo "$HEX[bcba83e6895b9d]">>des.cand
root@kitploit:~
./hashcat -m 14000 -a 0 hashes.txt des.cand

ويجب أن تحصل على بعض التجزئات المعكوسة

NTLMv1 مع ESS

يقوم ESS بتغيير تحدي الخادم، إذا رأيت ESS في أداة responder لأنك لم تستخدم --lm أو لأن العميل مضبوط على عدم إعطاء استجابة LM، فسيتم تفعيل ESS. أيضًا --disable-ess سيحاول إيقاف ESS بالقوة، ومع ذلك يتطلب ذلك نسخة حديثة (أغسطس 2021 أو أحدث) من impacket وresponder.

يبدو إخراج ESS هكذا

root@kitploit:~
[SMB] NTLMv1-SSP Client   : 184.64.60.62
[SMB] NTLMv1-SSP Username : DUSTIN-5AA37877\hashcat
[SMB] NTLMv1-SSP Hash     : hashcat::DUSTIN-5AA37877:85D5BC2CE95161CD00000000000000000000000000000000:892F905962F76D323837F613F88DE27C2BBD6C9ABCD021D0:1122334455667788

التجزئة الفعلية تبدو هكذا

root@kitploit:~
hashcat::DUSTIN-5AA37877:85D5BC2CE95161CD00000000000000000000000000000000:892F905962F76D323837F613F88DE27C2BBD6C9ABCD021D0:1122334455667788

لاستخدام الأداة قم بتشغيل (وهي متوافقة مع python3)

root@kitploit:~
python3 ntlmv1.py --ntlmv1 "hashcat::DUSTIN-5AA37877:85D5BC2CE95161CD00000000000000000000000000000000:892F905962F76D323837F613F88DE27C2BBD6C9ABCD021D0:1122334455667788"

ستقوم الأداة بإخراج

root@kitploit:~
Hashfield Split:
['hashcat', '', 'DUSTIN-5AA37877', '85D5BC2CE95161CD00000000000000000000000000000000', '892F905962F76D323837F613F88DE27C2BBD6C9ABCD021D0', '1122334455667788']

Hostname: DUSTIN-5AA37877
Username: hashcat
LM Response: 85D5BC2CE95161CD00000000000000000000000000000000
NT Response: 892F905962F76D323837F613F88DE27C2BBD6C9ABCD021D0
Client Challenge: 1122334455667788
SRV Challenge: b36d2b9a8607ea77

To Calculate final 4 characters of NTLM hash use:
./ct3_to_ntlm.bin 2BBD6C9ABCD021D0 1122334455667788 85D5BC2CE95161CD00000000000000000000000000000000

To crack with hashcat create a file with the following contents:
892F905962F76D32:b36d2b9a8607ea77
3837F613F88DE27C:b36d2b9a8607ea77

To crack with hashcat:
./hashcat -m 14000 -a 3 -1 charsets/DES_full.charset --hex-charset hashes.txt ?1?1?1?1?1?1?1?1

الآن كلمة المرور التي نستخدمها في هذه الحالة هي password والتي لها تجزئة ntlm التالية b4b9b02e6f09a9bd760f388b67351e2b

root@kitploit:~
echo -n password | iconv -f utf8 -t utf16le | openssl dgst -md4
(stdin)= 8846f7eaee8fb117ad06bdd830b7586c

لذا لحساب آخر 4 أحرف من تجزئة ntlm لتحدي NTLMv1-ESS الخاص بنا، نستخدم الأمر التالي من مخرجات الأداة للحصول على 586c

root@kitploit:~
./ct3_to_ntlm.bin 2BBD6C9ABCD021D0 1122334455667788 85D5BC2CE95161CD00000000000000000000000000000000

يجب علينا إنشاء ملف تجزئة بالمحتوى التالي وفقًا للأداة والذي يحتوي على تحديات SRV المعدلة للتعامل مع ESS

root@kitploit:~
892F905962F76D32:b36d2b9a8607ea77
3837F613F88DE27C:b36d2b9a8607ea77

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

root@kitploit:~
./hashcat -m 14000 -a 3 -1 charsets/DES_full.charset --hex-charset hashes.txt ?1?1?1?1?1?1?1?1

ملاحظة مهمة هي أن hashcat سيعيد مفاتيح DES وليس مفاتيح NTLM، ستحتاج إلى التحويل إلى NTLM باستخدام deskey_to_ntlm.pl من Hashcat Utils، ويمكن إنجاز ذلك عن طريق

root@kitploit:~
./deskey_to_ntlm.pl [cracked des key 1]
./deskey_to_ntlm.pl [cracked des key 2]

الآن بافتراض أننا نعرف بالفعل ما كانت عليه تجزئة ntlm في هذه الحالة لأننا أنشأناها ونريد التحقق من الأدوات، نستخدم ما يلي

root@kitploit:~
python ntlm-to-des.py --ntlm b4b9b02e6f09a9bd760f388b67351e2b

سيقوم هذا بإخراج بعض البيانات لنا

root@kitploit:~
DESKEY1: b55d6d04e67926
DESKEY2: bcba83e6895b9d

echo "$HEX[b55d6d04e67926]">>des.cand
echo "$HEX[bcba83e6895b9d]">>des.cand

الجزء المهم هنا هو

root@kitploit:~
echo "$HEX[b55d6d04e67926]">>des.cand
echo "$HEX[bcba83e6895b9d]">>des.cand

الآن يمكننا الكسر باستخدام hashcat باستخدام ما يلي دون انتظار 8 أيام

root@kitploit:~
./hashcat -m 14000 -a 0 hashes.txt des.cand

محول تجزئة NTLM إلى مفتاح DES لاختبار التحقق من البيانات

root@kitploit:~
python ntlm-to-des.py  --ntlm 8846f7eaee8fb117ad06bdd830b7586c
root@kitploit:~
DESKEY1: b55d6d05e6792652
DESKEY2: bdba82e6895a9d6a

echo "$HEX[b55d6d05e6792652]">>des.cand
echo "$HEX[bdba82e6895a9d6a]">>des.cand

دعم JSON

تدعم الأداة الآن إخراج json، اضبط العلم --json وستقوم بإخراج json:

root@kitploit:~
python3 ntlmv1.py --ntlmv1 "SERVER1$::MOG:7EF3F506F5EA510E00000000000000000000000000000000:1217169BD7BE0270A033899BD440016D3E6DACAF5894D504:ff81dfd6b12c269d" --json
{"ntlmv1": "SERVER1$::MOG:7EF3F506F5EA510E00000000000000000000000000000000:1217169BD7BE0270A033899BD440016D3E6DACAF5894D504:ff81dfd6b12c269d", "user": "SERVER1$", "domain": "MOG", "challenge": "ff81dfd6b12c269d", "lmresp": "7EF3F506F5EA510E00000000000000000000000000000000", "ntresp": "1217169BD7BE0270A033899BD440016D3E6DACAF5894D504", "ct3": "3E6DACAF5894D504", "srvchallenge": "888f8ee0fa031808", "ct3_crack": "ct3_to_ntlm.bin 3E6DACAF5894D504 ff81dfd6b12c269d 7EF3F506F5EA510E00000000000000000000000000000000", "hash1": "1217169BD7BE0270:888f8ee0fa031808", "hash2": "A033899BD440016D:888f8ee0fa031808", "CRACK_SH": "$NETLM$888f8ee0fa031808$1217169BD7BE0270A033899BD440016D3E6DACAF5894D504"}

الحقول المهمة هي:

  • hash1 - هذه هي التجزئة الأولى لوضع hashcat 14000
  • hash2 - هذه هي التجزئة الثانية لوضع hashcat 14000
  • ct3_crack - هذا هو الأمر لكسر ct3 باستخدام hashcat utils
  • ntlmv1 - هذه هي تجزئة ntlmv1 الأصلية
  • user - هذا هو حقل المستخدم
  • domain - هذا هو حقل المجال
  • lmresp - هذه هي استجابة lm
  • ntresp - هذه هي استجابة nt
  • challenge - هذا هو حقل التحدي الأصلي
  • srvchallenge - إذا كانت هذه تجزئة ESS، فسيتم ملء تحدي srv

تحويل NTLMv1 إلى NTLM في خطوة واحدة باستخدام ملف potfile من hashcat

بعد كسر تجزئات DES للوضع 14000 باستخدام hashcat، تظهر مفاتيح DES المكسورة في ملف potfile الخاص بك كأسطر ct:challenge:key (يُخزن المفتاح عادةً كـ $HEX[...] لأنه بايتات خام). بدلاً من نسخ المفاتيح يدويًا مرة أخرى باستخدام --key1/--key2، وجّه ntlmv1_nextgen.py إلى ملف potfile وسيقوم باستعادة المفاتيح، والتحقق منها مقابل النصوص المشفرة، وإكمال التحويل الكامل من NTLMv1 -> NTLM في خطوة واحدة:

root@kitploit:~
python3 ntlmv1_nextgen.py --ntlmv1 "hashcat::DUSTIN-5AA37877:76365E2D142B5612980C67D057EB9EFEEE5EF6EB6FF6E04D:727B4E35F947129EA52B9CDEDAE86934BB23EF89F50FC595:1122334455667788" --potfile ~/.local/share/hashcat/hashcat.potfile

تتم طباعة تجزئة NTLM المستعادة كحقل NTLM (أو ntlm في --json). يعمل --potfile مع --ntlmv1 و--99 و--mschapv2، ويتعامل مع تجزئات ESS (بالمطابقة على التحدي المشتق من MD5)، ويتجاهل إدخالات potfile غير ذات الصلة. لا يزال --key1/--key2 الصريحان لهما الأولوية على مطابقات potfile.

يتم قبول ملفات potfile من كل من hashcat وrainbowcrackalack. قد يكون حقل المفتاح المكسور كتلة $HEX[...] من hashcat، أو بايتات قابلة للطباعة عارية، أو مفتاحًا عاريًا من 16 حرفًا سداسيًا بطول 8 بايت، أو مفتاحًا عاريًا من 14 حرفًا سداسيًا بطول 7 بايت (الشكل الذي يخرجه rainbowcrackalack) — يتم تطبيعها جميعًا وإعادة التحقق منها مقابل النص المشفر قبل الاستخدام.

الإقرار / الترخيص

يعتمد هذا المستودع على مشاركات المنتدى من atom مؤلف hashcat وبحوث moxie marlinspike. نظرًا لأن كود atom مرخص بمعظمه برخصة MIT، فقد تبنى هذا المشروع أيضًا تلك الرخصة لتكون متوافقة. هذا المشروع ليس GPL حتى يمكن لأي كيان دمجه في مشروع تجاري دون قيود.

تنزيل الأداة
الخيارالوصف
--ntlmv1 <hash>تجزئة NTLMv1 بصيغة Responder (user::host:LM:NT:challenge).
--99 <blob>كتلة base64 بنمط $99$.
--mschapv2 <hash>تجزئة MSCHAPv2 بصيغة John the Ripper.
--nthash <hex>تجزئة NTLM من 32 حرفًا؛ يستنتج مفاتيح DES ومرشحات hashcat.
--password <pw>استنتاج مفاتيح DES --key1/--key2 من كلمة مرور معروفة.
--key1 <hex> / --key2 <hex>توفير مفاتيح DES ذات الـ 16 حرفًا سداسيًا لـ CT1/CT2 مباشرة (تأخذ الأولوية على --potfile).
--potfile <path>ملف potfile من hashcat/rainbowcrackalack لمفاتيح الوضع 14000 المكسورة؛ يستعيد key1/key2 تلقائيًا لإكمال التحويل من NTLMv1 -> NTLM.
--hashcatإصدار سلاسل بصيغة hashcat لـ CT1/CT2.
--jsonإخراج JSON فقط (يعني حساب CT3 ضمنيًا).