
هذا السكربت، الذي أنشأه R4Tw1z، مصمم لفحص عناوين IP للتحقق مما إذا كانت تشغّل إصدارًا يحتمل أن يكون عرضة للثغرات من OpenSSH. تستخدم الأداة تعدد الخيوط لتحسين أداء الفحص ومعالجة عناوين IP متعددة في وقت واحد.
هذا السكربت، الذي أنشأه R4Tw1z، مصمم لفحص عناوين IP للتحقق مما إذا كانت تشغّل إصدارًا يحتمل أن يكون ضعيفًا من OpenSSH. هذا السكربت هو نسخة أسرع وأبسط من أداة فحص ثغرات OpenSSH. تعتمد الأداة على تعدد الخيوط (multi-threading) لتحسين أداء الفحص ومعالجة عناوين IP متعددة في وقت واحد.
معالجة المدخلات: يقبل السكربت عناوين IP أو أسماء النطاقات أو مسارات ملفات تحتوي عناوين IP أو نطاقات CIDR كمدخلات. يمكن توفير عناوين IP مباشرةً أو قراءتها من ملف.
إعداد المنفذ والمهلة الزمنية: يمكن للمستخدمين تحديد المنفذ المراد فحصه (الافتراضي هو المنفذ 22، المستخدم بشكل شائع لـ SSH). يمكن أيضًا تعيين قيمة مهلة زمنية للاتصال، والافتراضي هو ثانية واحدة.
تعدد الخيوط: يستخدم السكربت مجموعة خيوط لمعالجة عناوين IP بشكل متزامن، مما يزيد من سرعة الفحص. يمكن تكوين عدد خيوط العمل (الافتراضي هو 10).
فحص حالة المنفذ: يتحقق السكربت أولاً مما إذا كان المنفذ المحدد مفتوحًا على كل عنوان IP.
استرجاع لافتة SSH: إذا كان المنفذ مفتوحًا، يحاول السكربت استرجاع لافتة SSH (banner) من الخادم. يتم تحليل اللافتة لتحديد ما إذا كانت خدمة SSH تشغّل إصدارًا يحتمل أن يكون ضعيفًا من OpenSSH.
تقييم الثغرة: يتم فحص مجموعة محددة مسبقًا من إصدارات OpenSSH الضعيفة مقابل اللافتة المسترجعة. تصنف النتائج إلى: معرّض للثغرة، غير معرّض للثغرة، ومنفذ مغلق.
إخراج النتائج: يطبع السكربت عدد الخوادم غير المعرّضة للثغرة، والتي يُحتمل أنها معرّضة للثغرة، وتلك التي يكون منفذها مغلقًا.
python r4tw1z.py <targets> [options]
"الأهداف": عناوين IP أو أسماء النطاقات أو مسارات ملفات تحتوي عناوين IP، أو نطاقات شبكة CIDR لفحصها.
--port PORT (default: 22): Specify the port number to check.
-t, --timeout TIMEOUT (default: 1.0): Set the connection timeout in seconds.
-w, --workers NUM (default: 10): Define the number of worker threads for concurrent scanning.
-o, --output FILE (optional): Output the results to a specified file.
-c, --custom_banners BANNER1 BANNER2 ... (optional): List custom SSH banners to check for vulnerabilities.
-v, --verbose: Enable verbose mode to display detailed information about each scanned server.
-r, --retries NUM (default: 3): Set the number of retries for each connection attempt.
python r4tw1z.py 192.168.1.1 192.168.1.2
python r4tw1z.py 192.168.1.0/24 -v
python r4tw1z.py ips.txt -o results.txt
python r4tw1z.py 192.168.1.1 -c "SSH-2.0-CustomBanner1" "SSH-2.0-CustomBanner2"
python r4tw1z.py 192.168.1.1 -r 5 -w 20
لا تتردد في عمل fork من هذا المستودع وإرسال طلبات سحب (pull requests). المساهمات التي تهدف إلى تحسين الأداة مرحّب بها دائمًا!