
حوّل بسهولة تطبيقات سطر الأوامر أحادية الخيط إلى تطبيق سريع متعدد الخيوط مع دعم CIDR و glob.
حوّل بسهولة تطبيقات سطر الأوامر أحادية الخيط إلى تطبيق سريع متعدد الخيوط مع دعم CIDR و glob.
Install using:
$ python3 setup.py install
سيتم تثبيت التبعيات وسيتم إضافة Interlace إلى مسارك كـ interlace.
| Argument | Description |
|---|---|
| (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 | إذا تم تعيينه فسيتم عرض مخرجات مفصلة في الطرفية |
| Example | Notation Type |
|---|---|
| 80 | منفذ واحد |
| 1-80 | تدوين الشرطة، تنفيذ أمر لكل منفذ من 1 إلى 80 |
| 80,443 | تنفيذ أمر لكل من المنفذين 80 و443 |
يتم معالجة كل من -t و -tL بنفس الطريقة. يمكنك تمرير الأهداف كما تفعل عند استخدام nmap. يمكن القيام بذلك باستخدام تدوين CIDR، أو تدوين الشرطة، أو قائمة مفصولة بفواصل من الأهداف. يمكن لملف قائمة أهداف واحد أيضًا استخدام أنواع تدوين مختلفة لكل سطر.
بدلاً من ذلك، يمكنك تمرير الأهداف عبر STDIN ولن تكون هناك حاجة إلى -t أو -tL.
سيتم استبدال المتغيرات التالية في الأوامر في وقت التشغيل:
| Variable | Replacement |
|---|---|
| _target_ | يتم استبداله بقائمة الأهداف الموسعة التي يعمل عليها الخيط الحالي |
| _cleantarget_ | يتم استبداله بالهدف بعد تنظيفه من http:// أو https:// |
| _safe-target_ | يتم استبداله بالهدف مع الاقتباس التلقائي للأوامر، لمنع تشغيل الأوامر الفرعية |
| _host_ | يعمل بنفس طريقة _target_، ويمكن استخدامه بالتبادل |
| _output_ | يتم استبداله بمتغير مجلد الإخراج من Interlace |
| _port_ | يتم استبداله بمتغير المنفذ الموسع من Interlace |
| _realport_ | يتم استبداله بمتغير المنفذ الحقيقي من Interlace |
| _proxy_ | يتم استبداله بقائمة البروكسيات من Interlace |
| _random_ | يتم استبداله بالملف المختار عشوائيًا من Interlace |
Interlace أيضًا يستخدم ميزتين إضافيتين للتحكم في تدفق التنفيذ داخل ملف الأوامر: _blocker_ و _block:<name>_. تمنع الحواجز تنفيذ الأوامر المدرجة بعدها حتى تكتمل جميع الأوامر قبلها، ويمكن استخدام الكتل لفرض تنفيذ تسلسلي للأوامر المدرجة داخل الكتلة، لهدف واحد.
يتم تشغيلها على مستوى كل هدف. إذا كانت هناك خيوط متاحة وكان هناك حاجز في طريق الهدف الحالي، فسيبدأ Interlace أوامر من الهدف التالي ضمن قائمة الأهداف لتعظيم الكفاءة.
سيتيح لك استخدام هذه الميزات التحكم في تدفق التنفيذ للأهداف الفردية بشكل أكثر مباشرة لمنع الأوامر من التشغيل خارج الترتيب.
تمنع الحواجز أي شيء أسفلها من التنفيذ حتى تكتمل جميع الأوامر فوقها (للمضيف النشط حاليًا). على سبيل المثال، في ما يلي:
mkdir -p _output_/_target_/scans/
_blocker_
nmap _target_ -oA _output_/_target_/scans/_target_-nmap
استخدام حاجز هنا يمنع nmap من التشغيل على هدف قبل إنشاء هيكل المجلد الأساسي، مما يمنع nmap من إلقاء استثناء.
تفرض الكتل تشغيل كل شيء داخلها بشكل تسلسلي. يمكنك أيضًا استخدام كتل متعددة لكل ملف أوامر. على سبيل المثال، في ما يلي:
_block:nmap_
mkdir -p _target_/output/scans/
nmap _target_ -oN _target_/output/scans/_target_-nmap
_block:nmap_
nikto --host _target_
في هذا المثال، ستعمل الكتلة بنفس الطريقة السابقة، ولكن على افتراض أن عدد الخيوط مرتفع بما يكفي، فسيبدأ nikto في التشغيل فورًا، وتمرير النتائج مرة أخرى إلى الطرفية (بينما يحدث nmap وإنشاء الملفات في الخلفية).
لنفترض أن لديك ملفًا targets.txt يحتوي على المحتويات التالية: