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

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
bkcrack — اختراق تشفير zip القديم باستخدام هجوم النص العادي المعروف لـ Biham و Kocher. | Kitploit
أدوات/GitHubGitHub/kimci86/bkcrack
كسر كلمات المرورأدوات التشفير/فك التشفيرتحليل الثغرات الأمنيةالتشفير
GitHubkimci86/bkcrack

bkcrack

اختراق تشفير zip القديم باستخدام هجوم النص العادي المعروف لـ Biham و Kocher.

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

الأكثر شعبية

عرض الكل →

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

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

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

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

bkcrack

CI badge coverage badge release badge license badge GitHub Sponsors badge

اختراق تشفير zip القديم باستخدام هجوم النص الواضح المعروف لـ Biham وKocher.

نظرة عامة

قد يحتوي أرشيف ZIP على العديد من الإدخالات التي يمكن ضغط محتواها و/أو تشفيره. على وجه الخصوص، يمكن تشفير الإدخالات باستخدام خوارزمية تشفير متناظرة تعتمد على كلمة مرور تُعرف باسم تشفير PKWARE التقليدي، أو التشفير القديم، أو ZipCrypto. تولد هذه الخوارزمية تيارًا عشوائيًا زائفًا من البايتات (تيار المفاتيح) يتم XOR مع محتوى الإدخال (نص واضح) لإنتاج بيانات مشفرة (نص مشفر). يتم تهيئة حالة المولد، المكونة من ثلاثة أعداد صحيحة 32 بت، باستخدام كلمة المرور ويتم تحديثها باستمرار مع النص الواضح أثناء التشفير. خوارزمية التشفير هذه عرضة لهجمات النص الواضح المعروف كما أظهر Eli Biham و Paul C. Kocher في الورقة البحثية A known plaintext attack on the PKZIP stream cipher. باستخدام النص المشفر و 12 بايت أو أكثر من النص الواضح المقابل، يمكن استعادة الحالة الداخلية لمولد تيار المفاتيح. هذه الحالة الداخلية كافية لفك تشفير النص المشفر بالكامل وكذلك الإدخالات الأخرى التي تم تشفيرها بنفس كلمة المرور. يمكن استخدامها أيضًا لاختراق كلمة المرور بقوة عنيفة بتعقيد nl-6 حيث n هو حجم مجموعة الأحرف و l هو طول كلمة المرور.

bkcrack هي أداة سطر أوامر تنفذ هجوم النص الواضح المعروف هذا. الميزات الرئيسية هي:

  • استعادة الحالة الداخلية من النص المشفر والنص الواضح.
  • إزالة أو تغيير كلمة مرور أرشيف ZIP باستخدام الحالة الداخلية.
  • استعادة كلمة المرور الأصلية من الحالة الداخلية.

تثبيت

حزم مُجمَّعة مسبقًا

يمكنك الحصول على أحدث إصدار رسمي على GitHub.

حزم مُجمَّعة مسبقًا لأنظمة Ubuntu و MacOS و Windows متوفرة للتحميل. قم باستخراج الأرشيف المُحمَّل في أي مكان تريده.

في Windows، مكتبات تشغيل Microsoft ضرورية لتشغيل bkcrack. إذا لم تكن مثبتة بالفعل على نظامك، قم بتحميل وتثبيت أحدث حزمة Microsoft Visual C++ Redistributable.

التجميع من المصدر

بدلاً من ذلك، يمكنك تجميع المشروع باستخدام CMake.

أولاً، قم بتنزيل ملفات المصدر أو استنساخ مستودع git. ثم، تشغيل الأوامر التالية في شجرة المصدر سينشئ تثبيتًا في مجلد install.

root@kitploit:~
cmake -S . -B build -DCMAKE_INSTALL_PREFIX=install
cmake --build build --config Release
cmake --build build --config Release --target install

حزم الطرف الثالث

bkcrack متوفرة في مستودعات الحزم المدرجة أدناه. هذه الحزم مقدمة من قبل مشرفين خارجيين.

Packaging status

الاستخدام

قائمة الإدخالات

يمكنك رؤية قائمة بأسماء الإدخالات والبيانات الوصفية في أرشيف باسم archive.zip بهذه الطريقة:

root@kitploit:~
bkcrack -L archive.zip

الإدخالات التي تستخدم تشفير ZipCrypto عرضة لهجوم النص الواضح المعروف.

استعادة المفاتيح الداخلية

يتطلب الهجوم 12 بايت على الأقل من النص الواضح المعروف. يجب أن يكون 8 منها على الأقل متجاورة. كلما زاد النص الواضح المتجاوز المعروف، زادت سرعة الهجوم.

تحميل البيانات من أرشيفات zip

إذا كان لديك أرشيف zip encrypted.zip مع الإدخال cipher كنص مشفر و plain.zip مع الإدخال plain كنص واضح معروف، يمكن تشغيل bkcrack على النحو التالي:

root@kitploit:~
bkcrack -C encrypted.zip -c cipher -P plain.zip -p plain

تحميل البيانات من الملفات

إذا كان لديك ملف cipherfile يحتوي على النص المشفر (بدءًا من 12 بايت المقابلة لرأس التشفير) و plainfile مع النص الواضح المعروف، يمكن تشغيل bkcrack على النحو التالي:

root@kitploit:~
bkcrack -c cipherfile -p plainfile

الإزاحة

إذا كان النص الواضح يتوافق مع جزء آخر غير بداية النص المشفر، يمكنك تحديد إزاحة. يمكن أن تكون سالبة إذا كان النص الواضح يتضمن جزءًا من رأس التشفير.

root@kitploit:~
bkcrack -c cipherfile -p plainfile -o offset

نص واضح متناثر

إذا كنت تعرف القليل من النص الواضح المتجاوز (بين 8 و 11 بايت)، ولكنك تعرف بعض البايتات في مواقع أخرى معروفة، يمكنك تقديم هذه المعلومات للوصول إلى شرط إجمالي 12 بايت معروفة. للقيام بذلك، استخدم العلم -x متبوعًا بالإزاحة والبايتات بالست عشري.

root@kitploit:~
bkcrack -c cipherfile -p plainfile -x 25 4b4f -x 30 21

فك التشفير

إذا نجح الهجوم، يمكن حفظ البيانات المفكوكة المرتبطة بالنص المشفر المستخدم في الهجوم:

root@kitploit:~
bkcrack -c cipherfile -p plainfile -d decipheredfile

إذا كانت المفاتيح معروفة من هجوم سابق، فمن الممكن استخدام bkcrack لفك تشفير البيانات:

root@kitploit:~
bkcrack -c cipherfile -k 12345678 23456789 34567890 -d decipheredfile

فك الضغط

قد تكون البيانات المفكوكة مضغوطة اعتمادًا على ما إذا كان الضغط قد استخدم أم لا عند إنشاء ملف zip. إذا تم استخدام ضغط deflate، يمكن استخدام سكربت Python 3 المقدم في مجلد tools لفك ضغط البيانات.

root@kitploit:~
python3 tools/inflate.py < decipheredfile > decompressedfile

إزالة كلمة المرور

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

root@kitploit:~
bkcrack -C encrypted.zip -k 12345678 23456789 34567890 -D decrypted.zip

تغيير كلمة المرور

من الممكن أيضًا إنشاء أرشيف مشفر جديد بكلمة مرور من اختيارك:

root@kitploit:~
bkcrack -C encrypted.zip -k 12345678 23456789 34567890 -U unlocked.zip new_password

يمكنك أيضًا تعريف كلمة المرور الجديدة من خلال تمثيلها الداخلي المقابل.

root@kitploit:~
bkcrack -C encrypted.zip -k 12345678 23456789 34567890 --change-keys unlocked.zip 581da44e 8e40167f 50c009a0

يمكن استخدام هذين الأمرين معًا لتغيير محتويات أرشيف مشفر دون معرفة كلمة المرور ولكن بمعرفة المفاتيح الداخلية فقط: يمكنك عمل نسخة مشفرة بكلمة المرور التي تختارها، ثم تحرير النسخة باستخدام مدير أرشيف وإدخال كلمة المرور المختارة عند الطلب، وأخيرًا عمل نسخة من الأرشيف المعدل مرة أخرى باستخدام مفاتيح التشفير الأصلية.

استعادة كلمة المرور

بالنظر إلى المفاتيح الداخلية، يمكن لـ bkcrack محاولة إيجاد كلمة المرور الأصلية.

استعادة كلمة المرور بالقوة الغاشمة

يمكنك البحث عن كلمة مرور باستخدام أحرف من مجموعة أحرف معينة:

root@kitploit:~
bkcrack -k 1ded830c 24454157 7213b8c5 -b ?p

يمكنك تقييد البحث على كلمات مرور بطول معين أو نطاق من الأطوال:

root@kitploit:~
bkcrack -k 1ded830c 24454157 7213b8c5 -b ?p -l 9
bkcrack -k 1ded830c 24454157 7213b8c5 -b ?p -l 8..10

الخيار -r <length> <charset> هو اختصار لـ -l 0..<length> -b <charset>:

root@kitploit:~
bkcrack -k 1ded830c 24454157 7213b8c5 -r 10 ?p

استعادة كلمة المرور باستخدام قناع

إذا كان لديك بعض المعرفة حول كيفية تشكيل كلمة المرور، يمكنك تحديد قناع لتقييد مساحة البحث وجعل الاستعادة أسرع بكثير. هذا مناسب لكلمات المرور الطويلة (مثل تلك التي تحتوي على 12 حرفًا أو أكثر) حيث تصبح القوة الغاشمة مستهلكة للوقت.

على سبيل المثال، بافتراض أنك تتذكر بشكل غامض أن كلمة المرور الخاصة بك تتكون من 8 أحرف صغيرة، وواصلة، و 6 أرقام عشرية، يمكنك استخدام هذا الأمر:

root@kitploit:~
bkcrack -k 1940e266 d3fd3d89 71ce9871 -m ?l?l?l?l?l?l?l?l-?d?d?d?d?d?d

يتم تنفيذ هذا في ميلي ثانية، بينما يستغرق بديل القوة الغاشمة ساعات.

مجموعات الأحرف

يتم تعريف مساحة البحث لكل من استعادة كلمة المرور بالقوة الغاشمة وباستخدام القناع بمجموعات أحرف. مجموعة الأحرف هي سلسلة من الأحرف أو اختصارات لمجموعات أحرف موجودة. يتم سرد مجموعات الأحرف المحددة مسبقًا أدناه.

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

على سبيل المثال، إذا كنت تعلم أن كلمة المرور الخاصة بك تتكون من 10 أحرف (كبيرة أو صغيرة) و 5 أرقام ثنائية، يمكنك استخدام هذا الأمر:

root@kitploit:~
bkcrack -k b8c377a6 f603160f 1832a78b -m ?x?x?x?x?x?x?x?x?x?x?y?y?y?y?y -s x ?u?l -s y 01

تعلم

يتم توفير برنامج تعليمي في مجلد example.

لمزيد من المعلومات، ألق نظرة على التوثيق واقرأ المصدر.

المساهمة

لا تتردد في اقتراح تحسينات أو تقديم طلبات سحب على GitHub.

إذا كنت ترغب في إظهار دعمك للمشروع، فنحن نرحب بك لتقديم تبرع أو رعاية المشروع عبر Github Sponsors.

الترخيص

يتم توفير هذا المشروع بموجب شروط ترخيص zlib/png.

تنزيل الأداة
الاختصارالوصفالقيمة
?lأحرف صغيرةabcdefghijklmnopqrstuvwxyz
?uأحرف كبيرةABCDEFGHIJKLMNOPQRSTUVWXYZ
?dأرقام عشرية0123456789
?sأحرف خاصة !"#$%&'()*+,-./:;<=>?@[\]^_`{|}~
?aأحرف أبجدية رقميةنفس ?l?u?d
?pأحرف ASCII قابلة للطباعةنفس ?l?u?d?s
?bجميع البايتات0x00 .. 0xff