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

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
KNX-Bus-Dump — أداة للاستماع على حافلة KNX عبر TPUART ومجموعة مشروع Calimero، ولتفريغ البيانات من الحزم إلى تفريغ سداسي عشري لملف متوافق مع Wireshark. | Kitploit
أدوات/GitHubGitHub/chrism09/knx-bus-dump
التقاط وتحليل الحزمأمان إنترنت الأشياءالتحقيق الجنائي الرقميأمن الشبكاتالتحاليل الرقمية الجنائيةأمان الأجهزة وإنترنت الأشياء
GitHubchrism09/knx-bus-dump

KNX-Bus-Dump

أداة للاستماع على حافلة KNX عبر TPUART ومجموعة مشروع Calimero، ولتفريغ البيانات من الحزم إلى تفريغ سداسي عشري لملف متوافق مع Wireshark.

عرض المستودع
124منذ 4 سنواتلم تتم المراجعة بعد

الأكثر شعبية

عرض الكل →

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

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

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

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

تفريغ ناقل KNX

KNX هو بروتوكول أتمتة المباني الشائع ويُستخدم لربط أجهزة الاستشعار والمحركات والمكونات الأخرى لمبنى ذكي معًا. تستخدم أداة تفريغ ناقل KNX الخاصة بنا مكتبة Calimero Java، والتي ساهمنا فيها من أجل هذه الأداة، لتسجيل البرقيات المرسلة عبر ناقل KNX. على وجه الخصوص، تصل أداتنا إلى ناقل KNX عبر اتصال TPUART ولكن يمكن تغييرها لاستخدام وسائط اتصال مختلفة. يتم تفريغ البرقيات في ملف تفريغ سداسي عشري متوافق مع Wireshark. يتم توفير الطوابع الزمنية وتطبيعها إلى توقيت UTC بدقة نانوثانية لإجراء تحليل البيانات وتوفير خط زمني للبرقيات. يمكن استيراد ملف التفريغ السداسي العشري إلى Wireshark، والذي يمكن تكوينه لتفكيك برقيات KNX باستخدام أداة تفكيك cEMI الخاصة بـ Wireshark.

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

لا يمكن استخدام Tcpdump و Wireshark لتفريغ البرقيات المرسلة عبر ناقل KNX لأننا نتعامل مع برقيات KNX أصلية، وليس حزم TCP/IP. يمكن لـ Wireshark و tcpdump تفريغ حزم KNXnet/IP، وهي حزم TCP/IP. KNXnet/IP هو بروتوكول لإرسال الأوامر والبيانات إلى ناقل KNX عبر شبكة TCP/IP.

المتطلبات الأساسية

تم تصميم هذه الأداة للعمل مع مكتبة Calimero Java وهي متوافقة مع Raspberry Pi 3 أو 4 وغطاء Raspberry Pi HAT لاتصال TPUART.

فيما يلي بعض الأدلة لإعداد البيئة:

  1. دليل استخدام غطاء KNX Raspberry PiHAT
  2. إعداد Raspberry Pi و Calimero Suite

ملاحظة: ستفترض الخطوات التالية أنك قمت بإعداد بيئتك وفقًا لهذه الأدلة.

الاستخدام

إنشاء التفريغ السداسي العشري

  1. ضع ملف KNXBusDump.java في المجلد introduction/src/main/java/ الخاص بمشروع Calimero Suite.

  2. انتقل إلى المجلد introduction.

  3. لتشغيل البرنامج، يمكنك ببساطة تشغيل:

    root@kitploit:~
    ./gradlew run -Pcalimero.serial.tpuart.maxInterByteDelay=60000 -DmainClass=KNXBusDump
    

    راجع دليل استكشاف الأخطاء وإصلاحها أدناه لبعض حلول الأخطاء الشائعة.

  4. الآن، انتظر حتى يتم إرسال بعض الرسائل على الناقل وستكون البرقيات التي تم تفريغها في ملف KNXBusDump-Telegrams.txt.

  5. قم بإلغاء الأداة باستخدام Ctrl-C وأصبح الملف جاهزًا للاستيراد إلى Wireshark لتحليله.

تحليل التفريغ السداسي العشري

في Wireshark، لديك القدرة على استيراد الحزم من تفريغ سداسي عشري وتحديد أداة تفكيك لتحليل الحزمة.

  1. عند بدء تشغيل Wireshark، انتظر حتى ينتهي التحميل الأولي. ثم انقر فوق File -> Import From Hex Dump...

  2. لتحليل هذا بشكل صحيح، نحتاج إلى إعطائه تعبيرًا منتظمًا مع بعض العلامات.

    root@kitploit:~
    ^\s*(?<time>\d{4}-\d\d\-\d\dT(\d\d\:){2}\d\d.(\d){6}[Z])\s(?<seqno>\d{6})\s+(?<data>[0-9a-fA-F]*)$
    
  3. اختر ملف التفريغ السداسي العشري كمصدر.

  4. ضمن مربع الحوار الجديد، انتقل إلى علامة التبويب Regular Expression والصق التعبير المنتظم في المربع.

  5. تأكد من أن ترميز البيانات هو Plain hex 200*16

  6. في مربع النص Timestamp format، نحتاج إلى تحديد النمط الذي تم إنشاؤه بواسطة الأداة.

    root@kitploit:~
    %Y-%m-%dT%H:%M:%S.%fZ
    

    ملاحظة: يجب أن يكون تنسيق الطابع الزمني هو نفسه تمامًا. وإلا، فلن يتم تحليل الطابع الزمني.

  7. ضمن قسم Encapsulation، قم بتغيير Encapsulation Type إلى Wireshark Upper PDU Export.

  8. حدد ExportPDU لتحديد أداة تفكيك cemi.

  9. الآن يمكنك استيراد الملف وتحليل البرقية.

إخراج عينة

الطابع الزمني لـ Wireshark:

ملف التفريغ السداسي العشري المقابل

ملاحظة: الوقت المميز هو الوقت المُطَبَّع بتوقيت UTC. بغض النظر عن المنطقة الزمنية بجانب الوقت، سيكون دائمًا الوقت الصحيح بتوقيت UTC.

اعتبارات:

  1. تبدأ أداة تفكيك cemi من جزء رمز الرسالة (MC) من البرقية. لا تأخذ في الاعتبار نوع الوسيط.
  2. سبب تمييز TPCI باللون الأحمر هو خيار تصميم. سترى أداة التفكيك أن الحزمة عبارة عن حزمة بيانات غير مرقمة (UDP)، مما يعني أن رقم التسلسل، وفقًا لمعيار KNX، يتم تعيينه عادةً إلى 0. ومع ذلك، في بعض الأحيان ستقوم بعض الأجهزة بتعيين هذا إلى قيمة غير صفرية. في هذه الحالة، تم تعيينه إلى 1. ستتحقق أداة التفكيك بعد ذلك مما إذا كان رقم التسلسل صفرًا. في هذه الحالة ليس كذلك، وبالتالي تظهر رسالة الخطأ لرقم التسلسل الذي كان من المتوقع أن يكون 0.

دليل استكشاف الأخطاء وإصلاحها

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

تشغيل برنامج Discover KNX Servers بدلاً من Bus Dump

تأكد من كتابة جميع الأوامر بالضبط. تشغيل الأمر باستخدام "Dmainclass" سيجعل البرنامج يعود إلى برنامج Discover KNX Servers. تأكد من أنها "DmainClass".

لا يمكن الحصول على الحالة الأولية لمنفذ TPUART

تأكد من أن KNXD (إذا كان مثبتًا لديك وفقًا لهذه الأدلة) لا يعمل. إذا اتبعت هذا الدليل، فإن KNXD سيستخدم نفس المنفذ ويمكن لعملية واحدة فقط استخدام المنفذ التسلسلي في كل مرة.

Wireshark: "Can't initialize scanner: Unknown error"

إذا قمت بنسخ ولصق محتويات ملفات التفريغ السداسي العشري من الأعلى، فقد ينقصك حرف سطر جديد إضافي. على سبيل المثال، في "SampleData1.txt"، يُظهر تمثيل github 4 أسطر من البيانات بينما في الواقع هي 4 أسطر من البيانات بالإضافة إلى حرف سطر جديد. لذا أحد الخيارات الممكنة هو ببساطة الضغط على "Enter" بعد آخر بايت من البيانات في الملف الذي تقوم باستيراده.

تجربة الإخراج العينة

في هذا المستودع، قمت بتوفير بيانات ملف العينة في Sample-KNXBusDump-Telegrams.txt التي تم استخدامها لإنشاء لقطات الشاشة. لا تتردد في استيراد هذا إلى Wireshark لاختباره بنفسك.

سيناريو الاختبار

تم اختبار الأداة على هذا السرير التجريبي المحلي لـ KNX.

تنزيل الأداة