Skip to content
KitploitKITPLOIT
أدواتالمدونة
Log in
إرسال
أدواتالمدونة
إرسال

أدوات الاختراق واختبار الاختراق والأمن السيبراني لترسانتك الأمنية!

Kitploit هو دليل لأدوات الاختراق والأمن السيبراني واختبار الاختراق. اكتشف آخر تحديثات المشاريع للعثور على الثغرات وتحليل الأنظمة وأتمتة الاختبارات وتعزيز أمنك.

الخلاصاتاتصالالخصوصية© 2026 Kitploit

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
PacketWhisper — PacketWhisper: استخرج البيانات بسرية وتجنب الإسناد باستخدام استعلامات DNS والإخفاء النصي. تجنب المشاكل المرتبطة بطرق استخراج DNS النموذجية. انقل البيانات بين الأنظمة دون أن تتصل الأجهزة المتصلة ببعضها البعض مباشرة أو بنقطة نهاية مشتركة. لا حاجة للتحكم في خادم أسماء DNS. | Kitploit
أدوات/GitHubGitHub/trycatchhcf/packetwhisper
تسريب البياناتإخفاء المعلوماتالتشفيرالفريق الأحمرتحليل DNS
GitHubtrycatchhcf/packetwhisper

PacketWhisper

PacketWhisper: استخرج البيانات بسرية وتجنب الإسناد باستخدام استعلامات DNS والإخفاء النصي. تجنب المشاكل المرتبطة بطرق استخراج DNS النموذجية. انقل البيانات بين الأنظمة دون أن تتصل الأجهزة المتصلة ببعضها البعض مباشرة أو بنقطة نهاية مشتركة. لا حاجة للتحكم في خادم أسماء DNS.

عرض المستودع
65312272منذ 6 سنواتتمت المراجعة من قبل Kitploit

الأكثر شعبية

عرض الكل →

اكتشف الأدوات الأكثر استخدامًا من قبل مجتمعنا.

استكشف جميع الأدوات

تصفح مجموعتنا من الأدوات

عرض جميع الأدوات →
مشاركة

PacketWhisper

PacketWhisper - نقل البيانات بتخفي وهزيمة الإسناد باستخدام استعلامات DNS والإخفاء النصي، دون الحاجة إلى خوادم أسماء أو نطاقات يتحكم بها المهاجم؛ تجاوز أجهزة DLP/MLS؛ هزيمة ضوابط القائمة البيانية للبيانات وخوادم أسماء DNS. تحويل أي نوع ملف (مثل برامج تنفيذية، Office، Zip، صور) إلى قائمة بأسماء نطاقات مؤهلة بالكامل (FQDNs)، واستخدام استعلامات DNS لنقل البيانات. بسيط لكنه فعال للغاية.

(تحديث 27/05/2020: نعم، سأقوم بترحيل جميع مشاريعي على Github إلى Python3 خلال صيف 2020.)

المؤلف

Joe Gervais (TryCatchHCF)

لماذا يختلف هذا عن كل تقنية تسريب DNS الأخرى؟

تعتمد تقنيات تسريب DNS التقليدية على أحد الأمور التالية: نفق DNS؛ إخفاء البيانات في حقول استعلام DNS؛ أو حمولات مشفرة/مشفرة يتم تقسيمها واستخدامها كمجالات فرعية في استعلام DNS. كل هذه الطرق تتطلب أن يتحكم المهاجم في نطاق و/أو خادم أسماء DNS مرتبط لاستقبال البيانات، مما يؤدي إلى الإسناد. هذه المقاربات أيضًا معرضة للقائمة السوداء لخوادم أسماء DNS (شائعة) والقائمة البيانية (تزداد شيوعًا). مشكلة أخرى هي أن محللي DFIR على دراية بهذه الطرق، وأنظمة SIEM غالبًا ما تكتشف وتنبه عند رؤيتها.

يتجاوز PacketWhisper هذه القيود.

ماذا لو أمكن نقل البيانات باستخدام خوادم DNS البيضاء الخاصة بالهدف، دون أن تتصل الأنظمة المتصلة ببعضها البعض مباشرة أو بنقطة نهاية مشتركة؟ حتى لو كان حد الشبكة يستخدم القائمة البيانية للبيانات لمنع تسرب البيانات؟

كيف يعمل

لتحقيق كل ذلك، يجمع PacketWhisper بين استعلامات DNS والإخفاء النصي. باستخدام Cloakify Toolset، يحول الحمولة إلى قائمة من سلاسل FQDN. ثم يستخدم PacketWhisper قائمة FQDNs لإنشاء استعلامات DNS متسلسلة، لنقل الحمولة عبر (أو داخل) حدود الشبكة، مع إخفاء البيانات في العيان، دون اتصال النظامين مباشرة ببعضهما البعض أو بنقطة نهاية مشتركة. توفر الشفرات المستخدمة من قبل PacketWhisper مستويات متعددة من الخداع لتجنب إطلاق التنبيهات وكذلك لتضليل محاولات التحليل.

لاستقبال البيانات، تلتقط حركة مرور الشبكة التي تحتوي على استعلامات DNS، باستخدام أي طريقة تناسبك. (انظر "التقاط ملف PCAP" أدناه للحصول على أمثلة لنقاط الالتقاط.) ثم تقوم بتحميل ملف PCAP الملتقط في PacketWhisper (يعمل على أي نظام مناسب)، الذي يستخرج الحمولة من الملف ويفك تشفيرها إلى شكلها الأصلي.

DNS هو بروتوكول جذاب للاستخدام لأنه، على الرغم من أنه وسيلة بطيئة نسبيًا لنقل البيانات، إلا أن DNS مسموح به دائمًا تقريبًا عبر حدود الشبكة، حتى على الشبكات الأكثر حساسية.

ملاحظة مهمة: نحن نستخدم استعلامات DNS لنقل البيانات، وليس عمليات بحث DNS ناجحة. لا يحتاج PacketWhisper أبدًا إلى حل أي من استعلامات DNS الخاصة به بنجاح. في الواقع، لا ينظر PacketWhisper حتى إلى استجابات DNS. هذا يوسع حالات الاستخدام لدينا، ويؤكد حقيقة أننا لا نحتاج أبدًا إلى التحكم في نطاق نستعلم عنه، ولا نحتاج أبدًا إلى التحكم في خادم أسماء DNS الذي يعالج طلبات DNS.

لذا باستخدام PacketWhisper، نحول حمولة تبدو هكذا:

إلى قائمة من FQDNs كهذه:

والتي يحولها PacketWhisper إلى استعلامات DNS تظهر في حركة مرور الشبكة هكذا:

والتي تلتقطها كملف PCAP في أي مكان على طول مسار حل DNS، ثم تحمّل ملف PCAP هذا في نسختك المحلية من PacketWhisper لاستعادة الحمولة:

برنامج تعليمي

انظر شرائح DEF CON 26 (مضمنة في المشروع) من عرضي التقديمي في قرية اختراق الحزم. تقدم الشرائح خلفية عن تسريب DNS، والإخفاء النصي / Cloakify Toolset، وكيف يجمعهم PacketWhisper في طريقة لنقل البيانات. لقد أنشأت الشرائح خصيصًا لتكون مفيدة بذاتها، لذا يجب أن تكون الخلفية والمعلومات كاملة. ومع ذلك، يمكنك أيضًا مشاهدة فيديو عرضي التقديمي في DC26 Packet Hacking Village الذي يوفر سياقًا إضافيًا.

لقد أدرجت ملف PCAP نموذجيًا في المشروع (باسم ذكي "sample.pcap") يحتوي على حمولات منفصلة لكل من الشفرات. كان يمكن أن تكون أي نوع ملف، بالطبع، ولكن في هذه الحالة قمت بنقل ملفات نصية فقط إلى PCAP. قم بتحميله في PacketWhisper وجربه!

كاختبار سريع في بيئتك الخاصة، قم بتشغيل PacketWhisper من جهاز افتراضي، ثم أرسل ملفًا أثناء التقاط الحزم على واجهة الشبكة للجهاز الافتراضي عبر النظام المضيف. يمكنك بعد ذلك تحميل ملف PCAP في أي نسخة PacketWhisper مناسبة لفك تشفير الملف. فقط تذكر أنه ليس نقلًا سريعًا. الملفات الصغيرة والصبر هما صديقك.

يتطلب

  1. Python 2.7.x (نسخة 3.6.x قيد التطوير)
  2. لفك تشفير الحمولات: tcpdump (مضمن في Linux و MacOS) أو WinDump (Windows)

سؤال: "لماذا لم تستخدم Scapy أو مجموعة أدوات dnspython؟"

إجابة: أكره تبعيات المشروع في أدواتي التشغيلية. أحافظ على مشاريعي ذرية ومكتفية ذاتيًا قدر الإمكان لتحقيق أقصى قدر من الموثوقية، خاصة على جانب العميل حيث قد لا أتحكم في البيئة و/أو لدي صلاحيات ضئيلة. بالطريقة التي تم بها هيكلة PacketWhisper، يمكنني تشغيله على مضيف شل محدود فقط عن طريق ضغط المشروع واستخراجه على المضيف الهدف.

سؤال: "لماذا لا يكون PacketWhisper فرعًا لمشروع Cloakify Toolset؟"

إجابة: نفس الإجابة أعلاه. نحتاج فقط إلى مجموعة فرعية محددة جدًا من قدرات Cloakify، وإضافة كل شيء آخر إلى PacketWhisper سيؤدي فقط إلى دليل مزدحم وأدوات/شفرات لا يمكن استخدامها بواسطة PacketWhisper. نظرًا لأنني أملك كلا المشروعين، أعدك بمزامنة أي تغييرات بينهما.

تشغيل PacketWhisper

$ python packetWhisper.py

الشفرات المستندة إلى FQDN

تتكون الشفرات المستندة إلى FQDN من 3 فئات:

  1. FQDNs ذات نطاق فرعي عشوائي فريد (مستحسن - يتجنب التخزين المؤقت لـ DNS، يتجاوز NAT)
  2. FQDNs متكررة فريدة (قد يخزن DNS مؤقتًا، لكنها تتجاوز NAT)
  3. FQDNs لمواقع ويب شائعة (قد يمنع التخزين المؤقت لـ DNS، يتداخل NAT)

FQDNs ذات نطاق فرعي عشوائي فريد

وضع الشفرة الموصى به لمعظم حالات الاستخدام

هذه هي FQDNs مع عناصر عشوائية مدمجة في المجالات الفرعية. يساعد ذلك في منع التخزين المؤقت لـ DNS، مع السماح لنا أيضًا بنقل البيانات إلى ما بعد أجهزة الشبكة التي تستخدم NAT والتي قد تكون على طول مسار استعلام DNS. نظرًا لأن عنوان IP للنظام المرسل غير متاح بعد جهاز NAT، تحتوي المجالات الفرعية التي تم إنشاؤها بواسطة الشفرة على عناصر علامة فريدة لمساعدتنا في تحديد حمولات PacketWhisper في التقاط الحزمة.

تحاكي هذه الشفرات تنسيقات الخدمات المختلفة التي تعتمد على مجالات فرعية معقدة كوسيلة لتحديد جلسة أو مستخدم أو محتوى مخبأ، إلخ. يساعد هذا النهج في جعل استعلامات DNS الخاصة بـ PacketWhisper تندمج مع باقي حركة مرور الشبكة.

الجزء الأول من اسم النطاق الفرعي هو في الواقع سلسلة من قائمة الشفرة. باقي اسم النطاق الفرعي يتم توزيعه عشوائيًا لجعل كل FQDN فريدًا، مما يمنع التخزين المؤقت لـ DNS من إغلاق مسار استعلام DNS قبل الأوان. ثم نضيف اسم النطاق. نبني FQDNs بهذه الطريقة لتبدو مثل FQDNs المعتادة المرتبطة بالنطاق المحدد، لتناسب بشكل أفضل مع حركة الويب العادية التي تظهر على أي شبكة.

FQDNs متكررة فريدة

تم إنشاؤها لتبرز من بين جميع استعلامات DNS الأخرى على الشبكة، ولكن دون أي توزيع عشوائي. هذا يعني أن التخزين المؤقت لـ DNS قد يتداخل، ولكن كفائدة جانبية، ستكون استعلامات DNS الخاصة بك سهلة بالنسبة لك للعثور عليها حتى في أكبر مجموعات ملفات pcap متعددة العملاء. يرجع ذلك إلى حقيقة أن FQDNs هي نقاط نهاية غريبة، مثل قائمة "Johns" (كائنات Red Lectroid الفضائية) في شركة Yoyodyne Propulsion Systems الخيالية من فيلم 'Buckaroo Banzai Across the 8th Dimension'.

FQDNs لمواقع ويب شائعة

هذه هي FQDNs المبنية من URLs لمواقع ويب شائعة.

ملاحظة: نظرًا لأن معظم البيئات تستخدم NAT عند المحيط (إزالة رؤية عنوان IP للعميل)، فإن هذا الوضع مفيد بشكل عام فقط لنقل البيانات بين الأنظمة المتصلة بنفس الشبكة المحلية /24 (على سبيل المثال، شبكة الواي فاي للضيوف في مقهى المفضل لديك).

نظرًا لأن شفرات مواقع الويب الشائعة لديها فقط عنوان IP المصدر كوسيلة لتمييز استعلاماتها عن جميع استعلامات DNS المماثلة الأخرى على الشبكة، سيقوم PacketWhisper بنقل استعلام DNS "تسلسل طرق" فريد في بداية ونهاية الحمولة، مما يساعدنا في تمييز المضيف المرسل من ملف pcap لاحقًا.

مثال FQDN: www.github.com

إرسال الحمولة المشفرة (Cloakified)

بمجرد تحديد شفرة، يقوم PacketWhisper بتشفير (Cloakify) الحمولة إلى قائمة من سلاسل FQDN وفقًا للشفرة المطلوبة. ثم يقوم بإنشاء طلبات DNS بشكل متسلسل لإرسال البيانات على طول مسار حل DNS. يضيف PacketWhisper تأخيرًا صغيرًا بين كل استعلام DNS، مما يساعد في منع طلبات DNS غير المرتبة.

التقاط ملف PCAP

العنصر الرئيسي هنا هو بالطبع القدرة على التقاط حركة مرور الشبكة التي تحتوي على استعلامات DNS التي أنشأها PacketWhisper. هناك الكثير من الخيارات، حيث تحتاج فقط إلى أن تكون في مكان ما، في أي مكان، لديك رؤية لمسار استعلام DNS.

تنزيل الأداة