
ماسح ضوئي لتقييد المعدل العالمي في لينكس (CVE-2016-5696)
grill، المعروف أيضًا باسم تحديد المعدل العالمي في لينكس، هو ماسح ضوئي لـ CVE-2016-5696 (هجوم TCP نقي خارج المسار).
$ go get github.com/nogoegst/grill
لا تستخدم أبدًا الروابط اللاسلكية في الطريق إلى المضيفين. فقدان الحزم المستمر وإعادة الإرسال يقللان بشكل كبير من دقة الفحص.
استخدم عددًا أقل من NATs قدر الإمكان (ويفضل أن يكون 0)، لأنها تسبب تأخيرات وتغيّر الحزم.
حاليًا يستخدم grill حوالي متوسط 400 كيلوبت/ثانية وبحد أقصى 500 كيلوبت/ثانية من عرض النطاق الترددي للإخراج (16 عملية فحص متزامنة).
لتجنب تداخل النواة أثناء الفحص، أضف قاعدة إلى جدار الحماية لديك لإسقاط حزم RST الصادرة.
لـ PF (/etc/pf.conf):
block drop out quick proto tcp flags R/R
ثم # pfctl -f /etc/pf.conf.
لـ NetFilter:
# iptables -A OUTPUT -p tcp --tcp-flags RST RST -j DROP
يقرأ grill من stdin ويقوم بفحص المضيفين منه (حتى 16 عملية فحص متزامنة). تنسيق الإدخال هو host port\n.
# cat probe | grill -i interface -dll gateway-MAC [-sll src-MAC] [-sip src-IP] > results
تنسيق الإخراج هو host:port,recievedChACKs,1stBurstSendingTime,2ndBurstSendingTime.
للحصول على نتائج مفهومة، مرّر النتائج عبر أداة verdict (وهي موجودة في مجلد verdict):
cat results | verdict
هكذا تسير الأمور. استمتعوا ومارسوا الحب.
لفحص مرحلات شبكة تور، فقط قم بجلب وتنسيق آخر إجماع (consensus):
curl https://collector.torproject.org/recent/relay-descriptors/consensuses/`date -u +'%Y-%m-%d-%H-00-00-consensus'` | grep '^r '| awk '{print $7" "$8}' > probe-consensus
ثم مرّر الملف الناتج إلى إدخال grill.
حاليًا، يجب أن يستغرق فحص شبكة تور بالكامل أقل من 30 دقيقة (16 عملية فحص متزامنة).
لقد تمكنت من فحص الشبكة بالكامل في 7 دقائق و44 ثانية باستخدام 127 عملية فحص متزامنة، وفي 6 دقائق و30 ثانية عن طريق خفض المهلة الزمنية إلى 1.7 ثانية أيضًا (وهذا على الأرجح غير آمن بسبب فقدان الحزم والازدحام وما إلى ذلك).
لاحظ أن 127 هو العدد الأقصى (والمعقول) من BPFs المفتوحة في OpenBSD. في لينكس، هذا الحد أعلى لكنه سيجعل نواتك شبه عالقة. على أي حال، حظًا سعيدًا.
grill مستوحى بشكل كبير من ماسح Scapy المماثل من David Stainton [https://github.com/david415/scan_for_rfc5961]
وPoC من violentshell [https://github.com/violentshell/rover].