
كود إثبات المفهوم لـ CVE-2016-5696
كود إثبات المفهوم لـ CVE-2016-5696
Rover هو برنامج بايثون صغير لاكتشاف منافذ مصدر العميل العشوائية كما هو موضح في CVE-2016-569. بمجرد معرفة منفذ المصدر، يمكن إكمال المجموعة الرباعية من المعلومات اللازمة لتأكيد أن مضيفين يتواصلان. عند تشغيله، ينشئ rover اتصالًا بالخادم الهدف، ويزامن ساعته الداخلية مع وقت تحدي الخادم (challenge ack)، ثم يبدأ في البحث عبر نطاق المنافذ المؤقتة الافتراضي لمعظم مضيفي لينكس (يمكن تغيير ذلك إذا لزم الأمر).
لمزيد من المعلومات، اطلع على الورقة الأصلية هنا
تم اختبار تشغيله على kali 1.0 ضد خادم SSH لنظام Ubuntu 14.04. يجب أن يعمل ضد خوادم أخرى، ومع ذلك قد/ستكون هناك حاجة لبعض التعديلات على الكود. المتطلبات هي:
الاستخدام كما يلي:
rover.py [-h] -c 192.168.1.1 -s 192.168.1.10 -p 22 [-v v, vv]
CVE2016-5969 Demonstrator.
optional arguments:
-h, --help show this help message and exit
-c 192.168.1.1 The target client IP.
-s 192.168.1.10 The target server IP.
-p 22 The target server port.
-v v, vv The verbosity level
سيُكمل Rover عمله في حوالي 1-2 دقيقة، اعتمادًا على جودة المزامنة.

os.system('iptables -A OUTPUT -p tcp --tcp-flags RST RST -j DROP') لأن النواة ستعيد تعيين اتصال scapy افتراضيًا. يجب أن يكون هذا في IPTABLES لكي يعمل البرنامج.