
ShadowNet هو بروتوكول توجيه مجهول يفرض على جميع الاتصالات (على مستوى النظام) المرور عبر Tor مع تنفيذ تقنيات تشبه Mixnet / تقوية نظام التشغيل
شكر كبير ليسوع لأن جعل هذا يحظى بالاهتمام! اتجه إلى يسوع قبل فوات الأوان. :) هو يحبك
🛡️ ShadowNet: بروتوكول إخفاء الهوية الثابت التدفق (تقنيات Tor + Mixnet)
لم يعد الاعتماد على الاندماج في الحشد ليكون مجهول الهوية مثل تور العادي، الآن كَوْنُك فريدًا هو الإخفاء الحقيقي!
لنظام Kali Linux/Parrot OS (توزيعات لينكس أخرى)
التثبيت:
chmod +x 777 *
sudo bash setup.sh
gcc shadownet.c -o shadownet -lm
sudo ./shadownet (start/stop)
طبقة التعتيم غير المتزامنة:
ShadowNet هو إطار عمل متقدم لتقوية الشبكة يحول محطة العمل القياسية إلى "Mixnet خاص من واحد". من خلال إجبار كل حركة مرور النظام عبر نفق متزامن، معتم زمنيًا، وموحد الحجم، فإنه يلغي البيانات الوصفية السلوكية التي يستخدمها الخصوم على مستوى الدولة لإلغاء إخفاء هوية المستخدمين.
🛡️ الميزات الأساسية التطورية
يجبر ShadowNet كل حركة مرور النظام عبر Tor مع استخدام Lokinet كحركة مرور تغطية وتنفيذ تقنيات تشبه Mixnet.
يستبدل ShadowNet إصدار الحزم الخطي القياسي بـ Stochastic Fairness Queuing.
المنطق: بدلاً من توصيل "tick-tock" متوقع، يتم تجزئة الحزم إلى "دلاء" داخلية متعددة وإصدارها باستخدام خوارزمية خلط. يقوم Jitter أيضًا بتأخير بدء الاتصال/قطع الاتصال بشكل عشوائي، لن تعرف NSA متى اتصلت بـ ShadowNet لأول مرة ومتى قطعته، كل شيء مؤجل. يتم تطبيق Jitter أيضًا على حركة المرور التغطية.
الفائدة: يدمر هجمات الربط الزمني. من خلال إعادة خلط الترتيب الداخلي للحزم كل 10 ثوانٍ (perturb 10)، يضمن أن إيقاع البيانات الخارجة من منزلك لا يتطابق أبدًا مع إيقاع البيانات الخارجة من عقدة Tor.
ينشئ ShadowNet "أرضية ضوضاء TLS" (حركة مرور تغطية عبر Tor) عند إنشاء نفق آمن أساسي.
المنطق: عند التهيئة، ينفذ البروتوكول مصافحات خلفية مع نطاقات عالمية ذات حركة مرور عالية "آمنة" (Google, Yahoo, Medium).
يتجاوز ShadowNet "مزامنة الوقت المثالية" لمحاكاة العيوب المادية للأجهزة.
المنطق: باستخدام adjtimex، يقدم البروتوكول تذبذبًا عشوائيًا مجهريًا (انحراف) في ساعة النظام.
الفائدة: غالبًا ما تكون للآلات الافتراضية والروبوتات الآلية ساعات دقيقة بالميلي ثانية "مثالية". تحتوي أجهزة الكمبيوتر المحمولة الفعلية على اهتزازات صغيرة تتسبب في انحراف الوقت. محاكاة هذا الانحراف تمنع بصمات انحراف الساعة، مما يجعل جهازك يبدو كجهاز مادي حقيقي بدلاً من مثيل مجهول الهوية.
لكل اندفاعة تخرج من جهاز الكمبيوتر الخاص بك، سيتم تعيين حجم حزمة مختلف لكل منها. (يهزم هذا بصمة الارتباط)
الفائدة: كل "شريحة" من البيانات تتحرك عبر السلك متطابقة فيزيائيًا. لا يمكن للمراقب التمييز بين رسالة نصية بحجم 1 كيلوبايت ونقل ملف بحجم 10 ميغابايت لأن كل "ظرف" حزمة يزن نفس الوزن تمامًا.
يحافظ ShadowNet على نبضة منضبطة تتراوح من 5 إلى 20 ميجابت/ثانية بغض النظر عن نشاطك الفعلي. يتم تعيين نبضة ثابتة لك لكل جلسة.
المنطق: إذا كنت خاملاً، يحافظ البروتوكول على "طنين" من حركة المرور التغطية. إذا كنت نشطًا، فإنه يخنق بياناتك في نفس النافذة 5-20 ميجابت/ثانية.
الفائدة: تظل بصمة شبكتك كحركة مرور تغطية ثابتة loopix. لا يمكن للخصم رؤية "قمم" في حركة المرور تشير إلى وقت استخدامك النشط للكمبيوتر مقابل وقت جلوسه خاملاً.
🛡️ الحماية من الأدلة الجنائية والتسرب 6. جدار الحماية "قاتل WebRTC"
WebRTC هو المتجه الأساسي لتسريبات IP في المتصفحات الحديثة. يطبق ShadowNet سياسة رفض UDP صارمة.
الفائدة: يمنع كل حركة مرور UDP غير DNS. نظرًا لأن WebRTC يتطلب منافذ UDP عشوائية لاكتشاف عنوان IP "الحقيقي" الخاص بك، فإن قاعدة جدار الحماية هذه "تعمي" قدرة المتصفح على تسريب هويتك.
يعدل ShadowNet سلوك IP الافتراضي للنواة لمحاكاة محطة عمل Windows قياسية.
المنطق: يغير "Time To Live" (TTL) من 64 (Linux) إلى 128 (Windows) ويعطل طوابع TCP الزمنية.
الفائدة: تصبح "إبرة في كومة قش" مليارات مستخدمي Windows. بالنسبة لأجهزة الاستشعار الآلية للشبكة، تبدو حركة مرورك وكأنها قادمة من كمبيوتر منزلي قياسي بدلاً من نظام تشغيل خصوصية متخصص.
وكالة خالية من التسرب: يوقف/يخفي systemd-timesyncd و chrony و ntp.
حصاد الإنتروبيا: يعيد تشغيل haveged لضمان حصول النظام على أقصى قدر من العشوائية لمفاتيح التشفير.
تنظيف الذاكرة: عند إلغاء التنشيط، يقوم البرنامج النصي بإسقاط ذاكرات التخزين المؤقت للنظام ويمسح البيانات الوصفية المتطايرة، تاركًا أي "بقايا" للجلسة في RAM.
مع قيام jitter بالفعل بإرسال الحزم في وقت عشوائي، لتعزيز jitter بشكل أكبر، تمت إضافة Entropy IAT بحيث بين الحزم المرسلة، لا ترسل أبدًا بنفس الترتيب العشوائي (مما يجعل عشوائية إرسالها غير متوقعة). تمت إضافته لكل اندفاعة مفردة تغادر الجهاز وتأخير البدء/قطع الاتصال، وتغيير عنوان MAC وطلبات DNS.
يجبر ShadowNet الآن التوجيه عبر 6 دوائر تور، بدلاً من الـ 3 الأصلية لتعزيز الخصوصية والإخفاء. يجعل من الصعب تتبعك بهذه الطريقة (بسبب هذا، قد يكون الاتصال أبطأ قليلاً من المعتاد ولكنه لا يزال يعمل ويمكن التصفح بشكل طبيعي)
الآن، لن تكشف البلورة داخل اللوحة الأم لجهاز الكمبيوتر الخاص بك معلومات أجهزة الشبكة مثل الصنع أو الطراز لخصم مراقبة عالمي مثل NSA. كل حزمة ضمن اندفاعة لها تأخير entropy iat يخفف طرق التتبع الخاصة بهم. تمت إضافة entropy IAT لكل اندفاعة تغادر جهازك وأيضًا لكل حزمة فردية يتم إرسالها. يضيف هذا تأخيرًا عشوائيًا لتوقيت كل حزمة.
الآن لكل جلسة، يتم تعيين واحد من هذه الأسماء المستعارة
Alias-Fixed -> طوال الجلسة، سيتم تعيين حزمة ثابتة تشبه sphinx بشكل عشوائي
يمنع المراقبة الصوتية/المرئية عن بعد.
أجهزة الاستشعار إلغاء تحميل الوحدات:
يمنع تسجيل المفاتيح القائم على الاهتزاز.
قفل BIOS chattr +i:
يمنع البرامج الضارة على مستوى البرامج الثابتة (Bootkits).
قفل الطاقة تغيير Governor:
يخفي القنوات الجانبية لتردد CPU.
تمت إضافتها كمساعدة إضافية لتأخيرات entropy iat، وإعادة ترتيب الحزم والخلط.
🚀 بداية سريعة
تثبيت التبعيات: sudo ./setup.sh
تهيئة ShadowNet: sudo ./shadownet (start/stop)
التحقق من الإخفاء: تحقق من عنوان IP الخاص بك وقم بتشغيل اختبار تسرب WebRTC.
إلغاء التنشيط: sudo ./shadow.sh stop (يعيد النظام إلى حالته الأصلية).
ملاحظة: تم تصميم ShadowNet للبيئات عالية الكمون وعالية الأمان. من خلال إعطاء الأولوية لثبات التدفق على السرعة، فإنه يوفر حماية ضد أكثر أنظمة تحليل حركة المرور تقدمًا في العالم.
مفتاح القطع مفعل! يتم حظر كل حركة مرور غير تور افتراضيًا! إذا فشل الاتصال عند التصفح، سيتم قطع اتصالك بالإنترنت. سيمنع هذا تسرب IP.
تزوير عنوان MAC: يزور عنوان MAC بشكل عشوائي لكل جلسة.
اختبار التشخيص:
يتحقق من أن النواة تقوم بإعادة ترتيب الحزم بنشاط لكسر الارتباط القائم على التوقيت (كسر "بندول الإيقاع" لبياناتك).
الأمر:
tc -s qdisc show dev wlo1
ping -c 20 127.0.0.1
ما تبحث عنه: يجب أن يُظهر الإخراج qdisc sfq with perturb 10sec. تحقق من إحصائيات الإرسال والتراكم؛ إذا كانت تتزايد، فإن محرك "الخلط" نشط. أيضًا عند محاولة أمر ping، يجب أن يعود بتوقيت مؤجل عشوائي.
يؤكد أن القناع الحجمي مرتفع بما يكفي لإخفاء قمم التصفح الفعلية.
الأمر:
nload (interface)
واجهة WiFi في Parrot عادةً ما تكون wlo1 وفي Kali Linux wlan0.
الهدف: راقب معدل "الخارج" أثناء الخمول. يجب أن يحافظ على خط أساس ثابت فوق 5-20 ميجابت/ثانية.
يضمن أن كل حزمة صادرة تبدو عشوائية الحجم، مما يهزم "بصمة حجم الحزمة".
الأمر:
sudo tcpdump -i (interface) -n -c 20 'host 1.1.1.1'
الهدف: يجب أن تظهر كل حزمة في الإخراج بطول عشوائي. أي انحراف في الطول أثناء الخمول يعني أن "الربط العشوائي" قد تم اختراقه.
يتحقق من أن جهازك لا يسرب بيانات توقيت CPU الفريدة أو وقت التشغيل.
الأمر:
cat /proc/sys/net/ipv4/tcp_timestamps && ping -c 3 127.0.0.1
الهدف: يجب أن يُرجع tcp_timestamps القيمة 0. يجب أن يُرجع ping ttl=128 لمطابقة بصمة محاكاة Windows.
يضمن أن تزوير الطبقة 2 نشط فعليًا على الأجهزة.
الأمر:
cat /sys/class/net/wlo1/address && ethtool -P (interface)
الهدف: يجب ألا يتطابق العنوان الأول (النشط) مع العنوان الثاني (الدائم).
ls -l /tmp/shadownet_mac.bak && df -h /tmp
يجب أن يُرجع هذا cannot access/not found.
متطلبات السيادة: يجب أن يكون ملف النسخ الاحتياطي موجودًا في /tmp. ملاحظة: استخدم df -h /tmp (بدون الشرطة المائلة اللاحقة) للتحقق من أنه مركب كـ tmpfs بحيث يمسح فورًا عند إيقاف التشغيل.
قم بتشغيل أداة shadownet
# Run in Terminal 1:
while true; do curl --connect-timeout 2 -s https://check.torproject.org/api/ip | grep -oE "\b([0-9]{1,3}\.){3}[0-9]{1,3}\b" || echo "BLOCK ENGAGED"; sleep 1; done
# Run in Terminal 2:
sudo systemctl stop tor
إذا رأيت IP تور، فسيستمر في إرساله، فقط قم بإيقاف تشغيل تور وستراه يقول 'BLOCK ENGAGED'. هذا عندما تعرف أن مفتاح القطع يعمل عندما يمنع تسرب IP الخاص بك بعد فشل/قطع مفاجئ.
يتحقق من أن المتصفح لا يمكن "خداعه" للكشف عن عنوان IP المحلي الحقيقي أو MAC الأجهزة عبر JavaScript.
الأمر: أثناء تشغيل ShadowNet، قم بتشغيل هذا في الطرفية لرؤية ما "يعتقده" النظام أنه المسار الوحيد الصالح:
ip route get 1.1.1.1
الهدف: يجب أن يظهر حركة مرور موجهة عبر 127.0.0.1 أو بوابة TRANS_PORT المحددة.
التحقق: افتح متصفحك وقم بزيارة موقع اختبار تسرب (مثل browserleaks.com/webrtc). ضمن WebRTC Local IP، يجب أن يظهر "N/A" أو "Timed out" أو IP داخلي لـ Tor (10.x.x.x). يجب ألا يظهر أبدًا عنوان IP المحلي الحقيقي الخاص بك (192.168.xxx.xxx)
🛡️ ملخص المنطق
| التشخيص | الثغرة المستهدفة | المتطلب السيادي |
|---|
| TC/SFQ | تحليل التوقيت | perturb 10sec نشط |
| NLOAD | ارتباط النشاط | الأساس > 100 كيلوبت/ثانية |
| TCPDUMP | بصمة حجم الحزمة | طول ثابت (1158/1186) 1200 بايت |
| SYSCTL | تسرب الزمن/وقت التشغيل | طوابع زمنية = 0 |
| IP/ETH | تتبع الهوية المادية | النشط != الدائم |