المقدمة
يوضح هذا المستند كيفية تحويل تفريغ الحزمة التي تم إنشاؤها لنقطة وصول CoS إلى تنسيق PCAP ل Wireshark كحل بديل إلى حدود الحجم.
المتطلبات الأساسية
- Notepad++ - متوفر فقط على Windows
- Text2pcap مثبت - مضمن على التثبيتات العادية ل Wireshark
الإجراء
تنفيذ تفريغ الحزمة
التقط تفريغ حزمة AP بتشغيل الأمر debug traffic السلكية <multi options> verbose على سطر أوامر AP. يمكنك الاختيار بين عوامل تصفية متعددة والواجهات.
سجل الجلسة في الوحدة الطرفية.
كن حريصا على إرسال أقل مقدار من ضغطات المفاتيح عند القيام بذلك، والحروف الأكثر قابلية للطباعة في الملف التي لا تنتمي إلى الالتقاط نفسه التنظيف الأكثر الذي تحتاج للقيام به قبل التحويل.
أسهل طريقة للقيام بذلك هي جلسة عمل لوحدة التحكم بتفريغ الحزمة، وتكرار المشكلة، ووقف التفريغ وإنهاء الجلسة فورا.
إذا كنت تقوم بالتفريغ عبر SSH، فاستخدم عامل تصفية لالتقاط حركة مرور البيانات ذات الأهمية فقط. وإلا فإن الالتقاط يحتوي على حزم جلسة SSH.
ارجع إلى نقاط الوصول إلى COs لاستكشاف الأخطاء وإصلاحها للحصول على تعليمات كاملة حول كيفية تكوين الالتقاط.
عندما تنتهي، أوقف الالتقاط باستخدام الأمر undebug all. يبدو الملف الناتج كما يلي:
AP-9105>en
Password:
AP-9105#debug traffic wired udp
capture capture packets in pcap file
verbose Verbose Output
<cr>
AP-9105#debug traffic wired udp verbose
AP-9105#reading from file /dev/click_wired_log, link-type EN10MB (Ethernet)
22:35:17.1669188 IP CSCO-W-PF320YP6.lan.60354 > 239.255.255.250.3702: UDP, length 656
0x0000: 0100 5e7f fffa 806d 971d a040 0800 4500
0x0010: 02ac d4bb 0000 0111 cd11 c0a8 64d1 efff
0x0020: fffa ebc2 0e76 0298 757b 3c3f 786d 6c20
0x0030: 7665 7273 696f 6e3d 2231 2e30 2220 656e
0x0040: 636f 6469 6e67 3d22 7574 662d 3822 3f3e
<truncated>
undebug 0x0070: 444c 4e41 444f 432f 312e 3530 2050 6c61
0x0080: 7469 6e75 6d2f 312e 302e 342e 320d 0a4d
0x0090: 414e 3a20 2273 7364 703a 6469 7363 6f76
0x00a0: 6572 220d 0a53 543a 2073 7364 703a 616c
all 0x00b0: 6c0d 0a4d 583a 2033 0d0a 0d0a
<truncated>
tcpdump: pcap_loop: error reading dump file: Interrupted system call
All possible debugging has been turned off
<end of file>
تنظيف ملف الإخراج
أزلت أي معلومة أن ليس جزء من الربط يتخلص نفسه. احذف الأسطر التي تحتوي على الأمر تفريغ، وأي مطالبة تحتوي على اسم المضيف (APname#) وأي رسائل syslog الأخرى غير ذات الصلة الموجودة في الملف.
قم بإيلاء اهتمام خاص للأمر undebug لأنه يمكن طباعته قبل محتوى الحزمة كما هو موضح أعلاه. بعد التنظيف، يبدو الملف الناتج بهذا الشكل:
22:35:17.1669188 IP CSCO-W-PF320YP6.lan.60354 > 239.255.255.250.3702: UDP, length 656
0x0000: 0100 5e7f fffa 806d 971d a040 0800 4500
0x0010: 02ac d4bb 0000 0111 cd11 c0a8 64d1 efff
0x0020: fffa ebc2 0e76 0298 757b 3c3f 786d 6c20
0x0030: 7665 7273 696f 6e3d 2231 2e30 2220 656e
0x0040: 636f 6469 6e67 3d22 7574 662d 3822 3f3e
<truncated>
0x0070: 444c 4e41 444f 432f 312e 3530 2050 6c61
0x0080: 7469 6e75 6d2f 312e 302e 342e 320d 0a4d
0x0090: 414e 3a20 2273 7364 703a 6469 7363 6f76
0x00a0: 6572 220d 0a53 543a 2073 7364 703a 616c
0x00b0: 6c0d 0a4d 583a 2033 0d0a 0d0a
معلومات ملخص حزمة التنظيف
يتم اكتشاف بداية حزمة جديدة عند ظهور إزاحة جديدة 00000. يمكن أن يعالج text2pcap معلومات الملخص المطبوعة قبل كل حزمة، لتجنب المشاكل يكون من الأفضل إزالتها.
في Notepad++ انتقل إلى البحث>بحث عن علامة التبويب علامة وتحديدها، تأكد من أن وضع البحث موسع.
في البحث عن ماذا: يدخل الحقل الرمز > وانقر تمييز الكل. هذه العملية تشير إلى كل الخطوط التي تحتوي على >الرمز.
مربع الحوار Notepad++ Mark مع البحث عن الحقل الذي يحتوي على حرف Chevron بالداخل.
بعد تمييز الرؤوس، يسلط Notepad++ الضوء على جميع سطور المستند مثل:
قصاصة تفريغ الحزمة مع الخط المبرز الذي يحتوي على الشيفرون.
انتقل إلى بحث>إشارة مرجعية وانقر على إزالة خطوط معلمة بإشارة مرجعية. بعد القيام بذلك، يبدو الملف مثل هذه القصاصة:
0x0000: 0100 5e7f fffa 806d 971d a040 0800 4500
0x0010: 02ac d4bb 0000 0111 cd11 c0a8 64d1 efff
0x0020: fffa ebc2 0e76 0298 757b 3c3f 786d 6c20
0x0030: 7665 7273 696f 6e3d 2231 2e30 2220 656e
إزالة مسافات البداية وعلامات الإزاحة
انتقل إلى بحث>بحث عن علامة التبويب إستبدال ثم حددها، فتأكد من أن وضع البحث موسع.
على بحث عن ماذا: يدخل الحقل 8 مسافات بيضاء. أترك إستبدال ب: الحقل فارغ وانقر فوق إستبدال الكل. هذا يستبدل كل الفراغات البيضاء الثمانية المتتالية في بداية كل سطر بلا شيء، ويحذفهم بشكل فعال. شاشة الاستبدال تبدو مثل هذه الصورة.
Notepad++ مربع الحوار Replace ب Find the What field with 8 spaces.
يبدو الملف الناتج بعد هذه العملية مثل القصاصة:
0x0000: 0100 5e7f fffa 806d 971d a040 0800 4500
0x0010: 02ac d4bb 0000 0111 cd11 c0a8 64d1 efff
0x0020: fffa ebc2 0e76 0298 757b 3c3f 786d 6c20
0x0030: 7665 7273 696f 6e3d 2231 2e30 2220 656e
0x0040: 636f 6469 6e67 3d22 7574 662d 3822 3f3e
0x0050: 3c73 6f61 703a 456e 7665 6c6f 7065 2078
0x0060: 6d6c 6e73 3a73 6f61 703d 2268 7474 703a
0x0070: 2f2f 7777 772e 7733 2e6f 7267 2f32 3030
انتقل إلى بحث>بحث عن علامة التبويب إستبدال وحدد هذه الصفحة، تأكد من أن وضع البحث موسع. أدخل : ( لاحظ المساحة الفارغة بعد النقطتين) على الحقل بحث عن ماذا:. أترك إستبدال ب: الحقل فارغ وانقر فوق إستبدال الكل.
هذا يستبدل كل الألوان والفراغات الأولى بعد الإزاحة.
Notepad++ إستبدال مربع الحوار بميزة البحث عن الحقل الذي تم ملؤه بنقطة صغيرة ومساحة.
بعد العملية السابقة، فإن ملف المخرجات الناتج يبدو مثل هذه القصاصة:
0x0000 0100 5e7f fffa 806d 971d a040 0800 4500
0x0010 02ac d4bb 0000 0111 cd11 c0a8 64d1 efff
0x0020 fffa ebc2 0e76 0298 757b 3c3f 786d 6c20
0x0030 7665 7273 696f 6e3d 2231 2e30 2220 656e
0x0040 636f 6469 6e67 3d22 7574 662d 3822 3f3e
0x0050 3c73 6f61 703a 456e 7665 6c6f 7065 2078
0x0060 6d6c 6e73 3a73 6f61 703d 2268 7474 703a
0x0070 2f2f 7777 772e 7733 2e6f 7267 2f32 3030
تصحيح إزاحة الحزمة
يتوقع Text2pcap إزاحة الحزمة داخل كل حزمة كسلسلة سداسية عشرية مكونة من 6 أحرف، ولكن يتم إستخدام عمليات إسقاط حزم AP 0x لترميز الإزاحة بدلا من ذلك. لتصحيح هذا الأمر، انتقل إلى بحث>بحث وتحديد علامة التبويب إستبدال، تأكد من أن وضع البحث موسع.
أدخل x في الحقل بحث عن ماذا:. تعبئة حقل إستبدال ب: ب 0 وانقر على إستبدال الكل. يقوم هذا باستبدال كل x الموجود داخل الإزاحة ب 0 ليطابق تنسيق الإزاحة المتوقع ل Text2pcap.
Notepad++ إستبدال مربع الحوار ب بحث عن الحقل المعبأ بحقل الحرف x واستبدال المعبأ بالحرف 0.
بعد العملية السابقة، فإن ملف المخرجات الناتج يبدو مثل هذه القصاصة:
000000 0100 5e7f fffa 806d 971d a040 0800 4500
000010 02ac d4bb 0000 0111 cd11 c0a8 64d1 efff
000020 fffa ebc2 0e76 0298 757b 3c3f 786d 6c20
000030 7665 7273 696f 6e3d 2231 2e30 2220 656e
000040 636f 6469 6e67 3d22 7574 662d 3822 3f3e
000050 3c73 6f61 703a 456e 7665 6c6f 7065 2078
فصل وحدات بايت الحزم
يتطلب تنسيق بيانات Text2pcap أن يتم فصل كل زوج من قيم سداسية عشرية عن طريق مسافة، فيتسبب تنسيق غير صحيح في أن يقوم Text2PCAP بقراءة بيانات الحزمة على هيئة إزاحة ثم يفشل.
انتقل إلى بحث>بحث عن علامة التبويب إستبدال ثم حددها، تأكد من أن وضع البحث هو تعبير عادي.
أدخل ([0-9a-f][0-9a-f])([0-9a-f][0-9a-f]) (لاحظ المساحة البادئة) على الحقل بحث عن ماذا:.
املأ حقل إستبدال ب: ب \1 \2 (لاحظ المسافة البادئة) وانقر على إستبدال الكل.
تبحث عملية الاستبدال عن وحدات البايت السداسية العشرية للحزمة وتدخل مسافة بين كل زوج. يطابق regex مساحة يتبعها زوج أرقام سداسي عشري، يحفظهم في مجموعة الالتقاط 1، ثم يأخذ الزوج المجاور من الأرقام السداسية العشرية، ويحفظهم في مجموعة الالتقاط 2. يطبع الاستبدال كلا من المساحات المطلوبة وكذلك محتوى كل مجموعة التقاط.
يستغرق الأمر عدة ثوان أو دقائق حسب طول الملف. إنه يستخدم الكثير من ذاكرة الوصول العشوائي (RAM) أثناء التشغيل إذا كان الملف كبيرا، كن صبورا.
Notepad++ إستبدال مربع الحوار بعثور على ما تم ملؤه بتعبير قانوني وحقل الاستبدال الذي تم ملؤه بتعبير عادي آخر.
بعد العملية السابقة، فإن ملف المخرجات الناتج يبدو مثل هذا القصاصة وهو جاهز ليتم تحويله بواسطة Text2pcap.
000000 01 00 5e 7f ff fa 80 6d 97 1d a0 40 08 00 45 00
000010 02 ac d4 bb 00 00 01 11 cd 11 c0 a8 64 d1 ef ff
000020 ff fa eb c2 0e 76 02 98 75 7b 3c 3f 78 6d 6c 20
000030 76 65 72 73 69 6f 6e 3d 22 31 2e 30 22 20 65 6e
000040 63 6f 64 69 6e 67 3d 22 75 74 66 2d 38 22 3f 3e
000050 3c 73 6f 61 70 3a 45 6e 76 65 6c 6f 70 65 20 78
000060 6d 6c 6e 73 3a 73 6f 61 70 3d 22 68 74 74 70 3a
000070 2f 2f 77 77 77 2e 77 33 2e 6f 72 67 2f 32 30 30
000080 33 2f 30 35 2f 73 6f 61 70 2d 65 6e 76 65 6c 6f
000090 70 65 22 20 78 6d 6c 6e 73 3a 77 73 61 3d 22 68
تحويل الملف النصي إلى PCAP
واجهة المستخدم الرسومية (GUI) عبر Wireshark
لتحويل الملف الكامل إلى PCAP، افتح Wireshark وتصفح إلى ملف>إستيراد من تفريغ سداسي، يظهر مربع حوار.
شاشة إستيراد Wireshark
انقر على زر تصفح.. وحدد تفريغ الملف النصي. تأكد من أن نوع الإزاحة المحدد هو سداسي عشر، نوع التضمين هو إيثرنت ولم يتم تحديد رأس وهمي.
انقر فوق إستيراد لبدء عملية التحويل.
عبر سطر الأوامر
لتحويل ملف نصي إلى ملف PCAP في سطر أوامر Windows، قم بتشغيل <المسار إلى مجلد تثبيت wireshark>\text2pcap.exe <المسار إلى ملف نصي pcap> <مسار ملف الإخراج>.
يمكنك إختياريا إضافة مجلد Wireshark إلى المسار الخاص بك وإلا كنت تحتاج لتشغيل النص2pcap الذي يشير إلى المسار بأكمله إلى النص2pcap.exe كل مرة تقوم فيها بتحويل ملف. يوجد text2pcap.exe داخل مجلد تثبيت wireshark.
إخراج سطر أوامر Windows بعد تحويل تفريغ الحزم بنجاح
يتضمن النص2pcap أيضا خيارات regex متعددة للمعالجة المسبقة لملف النص، الرجاء الرجوع إلى صفحة Text2pcap اليدوية للحصول على مزيد من المعلومات.
استكشاف الأخطاء وإصلاحها
ملف النص صحيح لكن النص2pcap لا يمكنه قراءة أي حزم
يتعذر على text2pcap قراءة بعض ترميز الملفات التي تم إنتاجها بواسطة المحاكي الطرفي المستخدمة بشكل شائع (CRT الآمن أو PuTTY أو غيرها).
قم بالتغيير إلى تشفير يمكن قراءته بواسطة Text2pcap باستخدام Notepad++. انتقل إلى ترميز>UTF-8 واحفظ الملف، ثم قم بالتحويل إلى PCAP مرة أخرى.
خيارات قائمة الترميز Notepad++.
إزاحة غير متناسقة
يظهر هذا الخطأ عندما لا يتم فصل وحدات البايت الخاصة بجزء البيانات على الحزمة بشكل صحيح في أزواج، وهذا يؤدي إلى جعل Text2PCAP يفترض بداية حزمة جديدة ويفشل في الترجمة الفورية.
ابحث عن أي وحدات بايت للحزمة بدون فصل أو سلاسل في وسط محتوى الحزمة مثل undebug all الأمر.
إخراج سطر أوامر Windows بعد محاولة تحويل ملف غير صالح. تطبع الإزاحة غير المتناسقة إلى المحطة الطرفية عدة مرات.