🔍 บทนำ

(เนื้อหาเริ่มต้นของบทความ Flow vs Packet: เมื่อไหร่ควรใช้ Wireshark และเมื่อไหร่ควรใช้ Zeek)

ในบทสุดท้ายของหมวด Transport Layer (Layer 4) นี้ เราจะมาคุยเรื่อง “ยุทธศาสตร์” การเลือกเครื่องมือครับ เมื่อคุณก้าวเข้าสู่สนามจริง คุณจะพบว่าข้อมูลเครือข่ายนั้นมีปริมาณมหาศาลมาก จนบางครั้งการเก็บทุกอย่างไว้อาจจะทำให้ “ถังเก็บข้อมูลเต็ม” หรือ “เครื่องค้าง” ได้

นักสืบระดับโปรจึงต้องเลือกระหว่างการเก็บ “ทุกรายละเอียด” (Packet) หรือการเก็บแค่ “บทสรุป” (Flow) เพื่อให้การทำงานมีประสิทธิภาพสูงสุดครับ


⚖️ 09-Flow vs Packet: เมื่อไหร่ควรใช้กล้องจุลทรรศน์ และเมื่อไหร่ควรใช้ภาพถ่ายดาวเทียม

ในการสืบสวนเครือข่าย เรามักจะพบกับทางเลือกระหว่าง Full Packet Capture (FPC) และ Flow Analysis (Metadata) ทั้งสองอย่างมีดีคนละแบบ และนักสืบที่ฉลาดจะรู้วิธีใช้พวกมันร่วมกันครับ


📖 พจนานุกรมฉบับนักสืบ (The Investigator’s Glossary)

คำศัพท์คำอ่านความหมายในเชิงเทคนิค
Full Packet Captureฟูล แพ็กเก็ต แคปเจอร์การเก็บข้อมูล “ทุกบิต ทุกไบต์” ที่วิ่งผ่านสายแลน (เหมือนการบันทึกวิดีโอเหตุการณ์ทั้งหมด)
NetFlow / IPFIXเน็ต-โฟลมาตรฐานการเก็บข้อมูลแบบสรุปผล (ใคร คุยกับใคร เมื่อไหร่ นานแค่ไหน) โดยไม่สนเนื้อหาข้างใน
Metadataเมตา-ดาต้า“ข้อมูลเหนือข้อมูล” เช่น ชื่อไฟล์ที่ถูกส่ง, หัวข้ออีเมล (Zeek เก่งเรื่องนี้มาก)
DPI (Deep Packet Inspection)ดี-พี-ไอการแกะดูเนื้อหาข้างใน Packet เพื่อดูว่ามันคือแอปพลิเคชันอะไรกันแน่
Evidence Retentionเอ-วิ-เดนซ์ รี-เทน-ชันระยะเวลาในการเก็บรักษาหลักฐาน (Packet เก็บได้สั้นเพราะใหญ่, Flow เก็บได้นานเพราะเล็ก)

📊 ตารางเปรียบเทียบ: เลือกอาวุธให้ถูกงาน

คุณสมบัติPacket Analysis (Tshark/Wireshark)Flow/Metadata Analysis (Zeek/NetFlow)
ความละเอียดระดับรูขุมขน (เห็นทุกบิต)ระดับภาพรวม (เห็นพฤติกรรม)
ขนาดไฟล์ใหญ่มาก (GB/min)เล็กมาก (MB/day)
ความเร็วในการค้นหาช้า (ต้องไล่ดูทีละ Packet)เร็วมาก (ค้นหาจากหลักล้านรายการได้ทันที)
การใช้งานใช้พิสูจน์หลักฐาน (Forensics)ใช้ตรวจจับความผิดปกติ (Threat Hunting)
ตัวอย่าง“เขาแฮกรหัสอะไรไป?”“เมื่อวานนี้มีใครแอบคุยกับ IP ในต่างประเทศไหม?”

🕵️ ยุทธศาสตร์การสืบสวนแบบ 2 ขั้นตอน (The Hybrid Approach)

นักสืบส่วนใหญ่มักจะทำแบบนี้ครับ:

  1. Step 1: ใช้ Flow/Metadata (Zeek) นำทาง

    รัน Zeek ทิ้งไว้ตลอดเวลาเพื่อดูภาพรวม เมื่อเจอความผิดปกติ เช่น “มีการส่งข้อมูลออกไปนอกบริษัท 10GB ตอนตีสอง” เราจะใช้ conn.log ของ Zeek เพื่อระบุ IP และช่วงเวลา ที่เกิดเหตุทันที

  2. Step 2: ใช้ Packet Capture (Tshark) เจาะจง

    เมื่อรู้เวลาและตัวบุคคลแล้ว เราค่อยไปดึงไฟล์ PCAP เฉพาะช่วงเวลานั้นมาแกะดูด้วย Tshark เพื่อดูว่า “ไอ้ 10GB ที่ส่งออกไปน่ะ มันคือไฟล์ความลับอะไรกันแน่?”


🛠 การทดลอง: ฝึกมองความต่างบน Arch Linux

ลองรันสองอย่างพร้อมกันดูครับ:

  • Packet: sudo tshark -i eth0 -w dump.pcap (ทิ้งไว้ 1 นาที)

  • Flow (Zeek): zeek -i eth0 (ทิ้งไว้ 1 นาที)

สังเกตขนาดไฟล์ที่เกิดขึ้น:

  • dump.pcap จะมีขนาดใหญ่กว่าไฟล์ conn.log หลายร้อยเท่าตัว!

📝 สรุปปิดท้ายหมวด Transport Layer

หมวดนี้สอนให้เราเห็นว่า การจับมือ (Handshake) และ สถานะ (Flags) คือหัวใจของการสื่อสาร และการใช้เครื่องมืออย่าง Zeek ช่วยให้เรามองเห็นภาพรวมของสิ่งเหล่านี้ได้โดยไม่จมกองข้อมูลครับ


💡 ขั้นตอนต่อไปที่คุณควรลอง:

  1. ลองจดบันทึกว่า ใน 1 ชั่วโมงของการใช้งานเน็ตที่บ้าน คุณสร้าง Packet ไปทั้งหมดกี่ MB (ดูจาก ifconfig หรือ ip -s link)

  2. ลองใช้ zeek-cut ดึงข้อมูลเฉพาะ orig_bytes และ resp_bytes ใน conn.log มาบวกกันดูว่าตรงกับข้อมูลจริงไหม