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

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
أدوات/GitHubGitHub/codingo/interlace
الاستطلاعالبرمجة النصية والأتمتةاختبار الاختراقالأدوات والمكونات
GitHubcodingo/interlace

Interlace

حوّل بسهولة تطبيقات سطر الأوامر أحادية الخيط إلى تطبيق سريع متعدد الخيوط مع دعم CIDR و glob.

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

الأكثر شعبية

عرض الكل →

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

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

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

عرض جميع الأدوات →
مشاركة
Interlace — حوّل بسهولة تطبيقات سطر الأوامر أحادية الخيط إلى تطبيق سريع متعدد الخيوط مع دعم CIDR و glob. | Kitploit

Interlace

حوّل بسهولة تطبيقات سطر الأوامر أحادية الخيط إلى تطبيق سريع متعدد الخيوط مع دعم CIDR و glob.

Python 3.2|3.6 License Twitter Twitter

Reviews / Howto Guides

Interlace: A Tool to Easily Automate and Multithread Your Pentesting & Bug Bounty Workflow Without Any Coding

Table of Contents

  • الإعداد
  • الاستخدام - الأعلام
  • أمثلة الاستخدام
  • شرح تدوين المنافذ
  • شرح تدوين الأهداف
  • دعم الخيوط لتطبيق لا يدعمها
  • تدوين CIDR لتطبيق لا يدعمه
  • تدوين GLOB لتطبيق لا يدعمه
  • دعم بروكسيات متعددة لتطبيق لا يدعمها
  • استبدال المتغيرات
  • استخدام متقدم لملف الأوامر
  • استخدام متقدم: الحاجز
  • استخدام متقدم: الكتل
  • الاستثناءات

Setup

Install using:

root@kitploit:~
$ python3 setup.py install

سيتم تثبيت التبعيات وسيتم إضافة Interlace إلى مسارك كـ interlace.

Usage

مزيد من المعلومات حول المنافذ

ExampleNotation Type
80منفذ واحد
1-80تدوين الشرطة، تنفيذ أمر لكل منفذ من 1 إلى 80
80,443تنفيذ أمر لكل من المنفذين 80 و443

مزيد من المعلومات حول الأهداف

يتم معالجة كل من -t و -tL بنفس الطريقة. يمكنك تمرير الأهداف كما تفعل عند استخدام nmap. يمكن القيام بذلك باستخدام تدوين CIDR، أو تدوين الشرطة، أو قائمة مفصولة بفواصل من الأهداف. يمكن لملف قائمة أهداف واحد أيضًا استخدام أنواع تدوين مختلفة لكل سطر.

بدلاً من ذلك، يمكنك تمرير الأهداف عبر STDIN ولن تكون هناك حاجة إلى -t أو -tL.

استبدال المتغيرات

سيتم استبدال المتغيرات التالية في الأوامر في وقت التشغيل:

استخدام متقدم لملف الأوامر

Interlace أيضًا يستخدم ميزتين إضافيتين للتحكم في تدفق التنفيذ داخل ملف الأوامر: _blocker_ و _block:<name>_. تمنع الحواجز تنفيذ الأوامر المدرجة بعدها حتى تكتمل جميع الأوامر قبلها، ويمكن استخدام الكتل لفرض تنفيذ تسلسلي للأوامر المدرجة داخل الكتلة، لهدف واحد.

يتم تشغيلها على مستوى كل هدف. إذا كانت هناك خيوط متاحة وكان هناك حاجز في طريق الهدف الحالي، فسيبدأ Interlace أوامر من الهدف التالي ضمن قائمة الأهداف لتعظيم الكفاءة.

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

الحاجز

تمنع الحواجز أي شيء أسفلها من التنفيذ حتى تكتمل جميع الأوامر فوقها (للمضيف النشط حاليًا). على سبيل المثال، في ما يلي:

root@kitploit:~
mkdir -p _output_/_target_/scans/
_blocker_
nmap _target_ -oA _output_/_target_/scans/_target_-nmap

استخدام حاجز هنا يمنع nmap من التشغيل على هدف قبل إنشاء هيكل المجلد الأساسي، مما يمنع nmap من إلقاء استثناء.

الكتل

تفرض الكتل تشغيل كل شيء داخلها بشكل تسلسلي. يمكنك أيضًا استخدام كتل متعددة لكل ملف أوامر. على سبيل المثال، في ما يلي:

root@kitploit:~
_block:nmap_
mkdir -p _target_/output/scans/
nmap _target_ -oN _target_/output/scans/_target_-nmap
_block:nmap_
nikto --host _target_

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

أمثلة الاستخدام

تشغيل Nikto على عدة مواقع

لنفترض أن لديك ملفًا targets.txt يحتوي على المحتويات التالية:

root@kitploit:~
bugcrowd.com
hackerone.com

يمكنك استخدام Interlace للتشغيل على أي عدد من الأهداف داخل هذا الملف باستخدام: bash

root@kitploit:~
➜  /tmp interlace -tL ./targets.txt -threads 5 -c "nikto --host _target_ > ./_target_-nikto.txt" -v
=========================================================================
Interlace v1.0	by Michael Skelton (@codingo_) & Sajeeb Lohani (@sml555_)
=========================================================================
[14:33:23] [THREAD] [nikto --host hackerone.com > ./hackerone.com-nikto.txt] Added to Queue 
[14:33:23] [THREAD] [nikto --host bugcrowd.com > ./bugcrowd.com-nikto.txt] Added to Queue 

سيقوم هذا بتشغيل Nikto على كل مضيف وحفظه في ملف لكل هدف. لاحظ أنه في المثال أعلاه بما أننا نستخدم عامل >، فلن يتم تغذية النتائج مرة أخرى إلى الطرفية؛ ومع ذلك فهذه وظيفة مرغوبة لأننا بخلاف ذلك لن نتمكن من إسناد النتائج التي يعيدها Nikto إلى الهدف الصحيح.

بالنسبة للتطبيقات التي ترغب فيها في التغذية الراجعة، ما عليك سوى تمرير الأوامر كالمعتاد (أو استخدام tee).

تشغيل Nikto على عدة مواقع ومنافذ

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

root@kitploit:~
➜  /tmp interlace -tL ./targets.txt -threads 5 -c "nikto --host _target_:_port_ > ./_target_-_port_-nikto.txt" -p 80,443 -v
=========================================================================
Interlace v1.0	by Michael Skelton (@codingo_) & Sajeeb Lohani (@sml555_)
=========================================================================
[14:33:23] [THREAD] [nikto --host hackerone.com:80 > ./hackerone.com-nikto.txt] Added to Queue 
[14:33:23] [THREAD] [nikto --host bugcrowd.com:80 > ./hackerone.com-nikto.txt] Added to Queue 
[14:33:23] [THREAD] [nikto --host bugcrowd.com:443 > ./bugcrowd.com-nikto.txt] Added to Queue 
[14:33:23] [THREAD] [nikto --host hackerone.com:443 > ./hackerone.com-nikto.txt] Added to Queue 

تشغيل قائمة أوامر ضد مضيفين هدف

غالبًا في اختبارات الاختراق، هناك قائمة أوامر تريد تشغيلها في كل مهمة تقريبًا. بافتراض أن القائمة تتضمن testssl.sh وnikto وsslscan، يمكنك حفظ قائمة أوامر بالمحتوى التالي في ملف يسمى commands.txt:

root@kitploit:~
nikto --host _target_:_port_ > _output_/_target_-nikto.txt
sslscan _target_:_port_ >  _output_/_target_-sslscan.txt
testssl.sh _target_:_port_ > _output_/_target_-testssl.txt

إذا تم إعطاؤك هدفًا example.com، فيمكنك تشغيل كل من هذه الأوامر ضد هذا الهدف باستخدام ما يلي:

root@kitploit:~
interlace -t example.com -o ~/Engagements/example/ -cL ./commands.txt -p 80,443

سيقوم هذا بعد ذلك بتشغيل nikto وsslscan وtestssl.sh لكل من المنفذين 80 و443 ضد example.com وحفظ الملفات في مجلد المهام الخاص بك.

تدوين CIDR مع تطبيق لا يدعمه

يقوم Interlace تلقائيًا بتوسيع تدوين CIDR عند بدء الخيوط (ما لم يتم تمرير العلم --no-cidr). يتيح لك ذلك تمرير تدوين CIDR إلى مجموعة متنوعة من التطبيقات:

لتشغيل فحص مضيف افتراضي ضد كل هدف ضمن 192.168.12.0/24 باستخدام أمر مباشر يمكنك استخدام:

root@kitploit:~
interlace -t 192.168.12.0/24 -c "vhostscan _target_ -oN _output_/_target_-vhosts.txt" -o ~/scans/ -threads 50

هذا على الرغم من أن VHostScan لا يحتوي على أي دعم مدمج لتدوين CIDR. نظرًا لأن Interlace يوسع التدوين قبل بناء قائمة انتظار من الخيوط، فإن VHostScan من جميع النوايا يتلقى فقط قائمة بعناوين IP مباشرة لفحصها.

تدوين Glob مع تطبيق لا يدعمه

يقوم Interlace تلقائيًا بتوسيع نطاقات glob عند بدء الخيوط. يتيح لك ذلك تمرير نطاقات glob إلى مجموعة متنوعة من التطبيقات:

لتشغيل فحص مضيف افتراضي ضد كل هدف ضمن 192.168.12.* باستخدام أمر مباشر يمكنك استخدام:

root@kitploit:~
interlace -t 192.168.12.* -c "vhostscan _target_ -oN _output_/_target_-vhosts.txt" -o ~/scans/ -threads 50

مرة أخرى، VHostScan لا يحتوي على أي دعم مدمج لصيغة نطاق glob.

تدوين الشرطة (-) مع تطبيق لا يدعمه

يقوم Interlace تلقائيًا بتوسيع نطاقات الشرطة عند بدء الخيوط. يتيح لك ذلك تمرير نطاقات glob إلى مجموعة متنوعة من التطبيقات:

لتشغيل فحص مضيف افتراضي ضد كل هدف ضمن 192.168.12.1-15 باستخدام أمر مباشر يمكنك استخدام:

root@kitploit:~
interlace -t 192.168.12.1-15 -c "vhostscan _target_ -oN _output_/_target_-vhosts.txt" -o ~/scans/ -threads 50

مرة أخرى، VHostScan لا يحتوي على أي دعم مدمج لصيغة نطاق الشرطة.

دعم الخيوط لتطبيق لا يدعمها

قم بتشغيل فحص مضيف افتراضي ضد كل مضيف في ملف (target-lst.txt)، مع تحديد الفحوصات في أي وقت بحد أقصى 50 خيطًا.

يمكن القيام بذلك باستخدام أمر مباشر:

root@kitploit:~
interlace -tL ./target-list.txt -c "vhostscan -t _target_ -oN _output_/_target_-vhosts.txt" -o ~/scans/ -threads 50

أو بدلاً من ذلك، لتشغيل نفس الأمر أعلاه، ولكن باستخدام ملف أوامر:

root@kitploit:~
interlace -cL ./vhosts-commands.txt -tL ./target-list.txt -threads 50 -o ~/scans

يفترض هذا أن محتوى ملف الأوامر هو:

root@kitploit:~
vhostscan -t $target -oN _output_/_target_-vhosts.txt

سيؤدي هذا إلى إخراج ملف لكل هدف في مجلد الإخراج المحدد. يمكنك أيضًا تشغيل أوامر متعددة بمجرد إضافتها إلى ملف الأوامر.

الاستثناءات

يقوم Interlace تلقائيًا باستثناء أي مضيفين يتم توفيرهم عند تحديدهم عبر الوسيطات -e أو -eL. هذه الوسيطات متوافقة أيضًا مع تدوينات النطاق المذكورة أعلاه (CIDR وglob والشرطة)

لتشغيل فحص مضيف افتراضي ضد كل هدف في نطاق CIDR 192.168.12.0/24 ولكن ليس للأهداف في النطاق 192.168.12.0/26، باستخدام أمر مباشر، يمكنك استخدام:

root@kitploit:~
interlace -t 192.168.12.0/24 -e 192.168.12.0/26 -c "vhostscan _target_ -oN _output_/_target_-vhosts.txt" -o ~/scans/ -threads 50

تشغيل Nikto باستخدام بروكسيات متعددة

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

root@kitploit:~
➜  /tmp interlace -tL ./targets.txt -pL ./proxies.txt -threads 5 -c "nikto --host _target_:_port_ -useproxy _proxy_ > ./_target_-_port_-nikto.txt" -p 80,443 -v

المؤلفون والشكر

تمت كتابته في الأصل بواسطة Michael Skelton (codingo) وSajeeb Lohani (sml555) بمساعدة من Charelle Collett (@Charcol0x89) لإعادة هيكلة الخيوط والنهج العام، وLuke Stephens (hakluke) للاختبار والنهج.

المساهمات

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

تنزيل الأداة
ArgumentDescription
(stdin)قم بتوجيه قوائم الأهداف من تطبيق آخر بصيغة مفصولة بفواصل، أو تدوين CIDR، أو كمضيف فردي
-tحدد هدفًا أو اسم نطاق إما بصيغة مفصولة بفواصل، أو تدوين CIDR، أو كمضيف فردي
-tLحدد قائمة بالأهداف أو أسماء النطاقات
-eحدد قائمة بالأهداف لاستثنائها إما بصيغة مفصولة بفواصل، أو تدوين CIDR، أو كمضيف فردي
-eLحدد قائمة بالأهداف لاستثنائها
-threadsحدد الحد الأقصى لعدد الخيوط التي تعمل في وقت واحد (الافتراضي: 5)
-timeoutحدد قيمة مهلة بالثواني لأي خيط واحد (الافتراضي: 600)
-cحدد أمرًا واحدًا لتنفيذه على كل هدف أو نطاق
-cLحدد قائمة أوامر لتنفيذها على كل هدف أو نطاق
-oحدد متغير مجلد الإخراج الذي يمكن استخدامه في الأوامر كـ _output_
-pحدد قائمة متغير المنافذ التي يمكن استخدامها في الأوامر كـ _port_. يمكن أن يكون منفذًا واحدًا، أو قائمة مفصولة بفواصل، أو نطاقًا باستخدام تدوين الشرطة
-pLحدد قائمة بالبروكسيات
--protoحدد البروتوكولات التي يمكن استخدامها في الأوامر كـ _proto_
-rpحدد متغير المنفذ الحقيقي الذي يمكن استخدامه في الأوامر كـ _realport_
-randomحدد دليل ملفات يمكن استخدامها عشوائيًا في الأوامر كـ _random_
--no-bar / --soberإذا تم تعيينه فسيتم إزالة شريط التقدم
--no-cidrإذا تم تعيينه فلن يتم توسيع تدوين CIDR في ملف الهدف تلقائيًا إلى مضيفين فرديين
--no-colorإذا تم تعيينه فسيتم إزالة أي ألوان أمامية أو خلفية
--silentإذا تم تعيينه فسيتم عرض المعلومات المهمة فقط وسيتم حجب اللافتات والمعلومات الأخرى
-vإذا تم تعيينه فسيتم عرض مخرجات مفصلة في الطرفية
VariableReplacement
_target_يتم استبداله بقائمة الأهداف الموسعة التي يعمل عليها الخيط الحالي
_cleantarget_يتم استبداله بالهدف بعد تنظيفه من http:// أو https://
_safe-target_يتم استبداله بالهدف مع الاقتباس التلقائي للأوامر، لمنع تشغيل الأوامر الفرعية
_host_يعمل بنفس طريقة _target_، ويمكن استخدامه بالتبادل
_output_يتم استبداله بمتغير مجلد الإخراج من Interlace
_port_يتم استبداله بمتغير المنفذ الموسع من Interlace
_realport_يتم استبداله بمتغير المنفذ الحقيقي من Interlace
_proxy_يتم استبداله بقائمة البروكسيات من Interlace
_random_يتم استبداله بالملف المختار عشوائيًا من Interlace