วิธีจับแพ็คเก็ตที่เข้ามาทั้งหมดไปยัง NIC แม้แต่แพ็คเก็ตเหล่านั้นไม่ได้เป็นของฉัน


13

AFAIK, NIC ได้รับแพ็คเก็ตทั้งหมดจากสายในเครือข่ายท้องถิ่น แต่ปฏิเสธแพ็กเก็ตเหล่านั้นซึ่งที่อยู่ปลายทางของพวกเขาไม่เท่ากับ ip

ฉันต้องการพัฒนาแอปพลิเคชันที่ตรวจสอบการใช้งานอินเทอร์เน็ตของผู้ใช้ ผู้ใช้แต่ละคนมีที่อยู่ IP คงที่

ฉันและบุคคลอื่นเชื่อมต่อกับสวิตช์เดสก์ท็อปที่ไม่มีการจัดการ 8-Port Fast Ethernet

อย่างที่ได้กล่าวไปแล้วก่อนหน้านี้ฉันต้องการรวบรวมทราฟฟิกทั้งหมดจากผู้ใช้ทุกคนไม่เพียง แต่แพ็กเก็ตที่เป็นของฉันเท่านั้น

ฉันจะบังคับให้ NIC หรือส่วนประกอบอื่น ๆ ของฉันรับแพคเก็ตทั้งหมดได้อย่างไร


1
ซื้อสวิตช์ราคาถูกและมีการจัดการประมาณ 30 €และเปิดใช้งานพอร์ตมิเรอร์บนลิงก์ไปยังเกตเวย์
Max Ried

คำตอบ:


27

AFAIK, NIC ได้รับแพ็คเก็ตทั้งหมดจากสายในเครือข่ายท้องถิ่น แต่ปฏิเสธแพ็กเก็ตเหล่านั้นซึ่งที่อยู่ปลายทางของพวกเขาไม่เท่ากับ ip

การแก้ไข: มันปฏิเสธแพ็กเก็ตเหล่านั้นซึ่งที่อยู่MACปลายทางของพวกเขาไม่เท่ากับที่อยู่ MACของมัน(หรือมัลติคาสต์หรือที่อยู่เพิ่มเติมใด ๆ ในตัวกรองของมัน

โปรแกรมอรรถประโยชน์การจับแพ็คเก็ตสามารถทำให้อุปกรณ์เครือข่ายเข้าสู่โหมด promiscuous ซึ่งอาจกล่าวได้ว่าการตรวจสอบข้างต้นถูกข้ามไปและอุปกรณ์ยอมรับทุกสิ่งที่ได้รับ อันที่จริงแล้วนี่เป็นค่าเริ่มต้น: ด้วยtcpdumpคุณต้องระบุ-pตัวเลือกเพื่อไม่ให้ทำ

ปัญหาที่สำคัญยิ่งกว่าก็คือแพ็คเก็ตที่คุณสนใจนั้นจะถูกส่งไปยังพอร์ตการดมกลิ่นของคุณหรือไม่ เนื่องจากคุณใช้สวิตช์อีเธอร์เน็ตที่ไม่มีการจัดการพวกเขาแทบจะไม่แน่นอน สวิตช์กำลังตัดสินใจที่จะตัดแพ็คเก็ตที่ไม่ได้เป็นของคุณจากพอร์ตของคุณก่อนที่อุปกรณ์เครือข่ายของคุณจะสามารถเห็นได้

คุณต้องเชื่อมต่อกับมิร์เรอร์หรือพอร์ตการตรวจสอบที่กำหนดค่าเป็นพิเศษบนสวิตช์อีเธอร์เน็ตที่มีการจัดการเพื่อทำสิ่งนี้


1
หรือฮับอีเทอร์เน็ต ... หากคุณพบสนิมในห้องใต้หลังคา :) ฉันสงสัยว่าจะมี 1,000Base-T แต่วิกิพีเดียบอกว่ากิกะบิตฮับสนับสนุนการเชื่อมต่อเพล็กซ์ครึ่งเดียวและพวกเขาเลิกใช้แล้ว
chx

1
@chx ฮับจริงทั้งหมดรองรับ half duplex เท่านั้น โดยส่วนตัวฉันไม่เคยเห็น 1,000Base-T one
Celada

ฉันเชื่อว่าสิ่งนี้เกี่ยวข้องกับการรับส่งสัญญาณช้าของ Gigabit Ethernet - แม้ว่ามาตรฐาน 802.3ab จะออกมาในปี 1999 การดูดซับนั้นช้ามากจนถึงปี 2003/2547 เมื่อ Intel เปิดตัวชิปเซ็ต 875P เป็นครั้งแรกด้วยบัส CSA เฉพาะสำหรับ Gigabit Ethernet ในปี 2004 PCI Express เข้ามาแทนที่แบนด์วิดธ์ที่เพียงพอสำหรับ Gigabit Ethernet จากนั้นสวิทช์ก็ถูกพอ
chx

สวิตช์ Ethernet จะไม่ถ่ายทอดเฟรมเสมอไป มันมีตารางการสลับเป็นของตัวเอง (มีแผนที่ของสวิตช์พอร์ตและที่อยู่ MAC) สำหรับ unicasting เฟรม หากตารางไม่มีรายการสำหรับ MAC ใน Frame แสดงว่ามันแพร่ภาพ / ทำให้เฟรมท่วม เดสก์ท็อปของคุณจะไม่ได้รับเฟรมอื่น ๆ เช่นเดียวกับคำตอบคุณต้องใช้สวิตช์พิเศษเพื่อจับเฟรมทั้งหมดที่มาถึงสวิตช์ของคุณ
Valarpirai

8

ในช่วงแรกที่กล่าวถึงฮับอีเธอร์เน็ต (ไม่ใช่สวิตช์) แพ็คเก็ตที่ส่งจะมีให้สำหรับโฮสต์ทั้งหมดบนเครือข่ายย่อย แต่โฮสต์ที่ไม่ใช่ผู้รับที่ตั้งใจควรจะเพิกเฉย

เห็นได้ชัดว่ามันใช้เวลาไม่นานสำหรับซับเน็ตในการอิ่มตัวดังนั้นเทคโนโลยีสวิตช์จึงเกิดมาเพื่อแก้ปัญหาและหนึ่งในสิ่งที่พวกเขาทำคือทำให้เครือข่ายสลับเฉพาะแพ็กเก็ตเส้นทางที่กำหนดไว้สำหรับโฮสต์นั้นไปยังพอร์ตนั้น )

การทำเช่นนี้จะทำให้การตรวจสอบ / การดมกลิ่นของเครือข่ายยุ่งยากขึ้นเพราะคุณสามารถสูดดมแพ็คเก็ตที่โฮสต์ของคุณเท่านั้น สิ่งนี้ถือว่าเป็นสิ่งที่ดีจากมุมมองด้านความปลอดภัย แต่จากมุมมองการตรวจสอบเครือข่ายไม่ค่อยดี เพื่อให้การตรวจสอบเครือข่ายทำงานได้ผู้ขายจะใช้คุณสมบัติที่เรียกว่าการทำมิเรอร์พอร์ต สิ่งนี้จะต้องมีการกำหนดค่าในสวิตช์เครือข่ายและลิงค์ด้านล่างควรชี้ให้คุณในทิศทางที่ถูกต้องสำหรับผลิตภัณฑ์ D-link คุณจะพบที่ใดก็ได้ในซอฟต์แวร์การจัดการสวิตช์หรืออินเทอร์เฟซผู้ดูแลเว็บ หากคุณไม่พบคุณสมบัติเหล่านี้แสดงว่าอาจไม่มีฟังก์ชันการทำงานในอุปกรณ์นั้น

http://www.dlink.com/uk/en/support/faq/switches/layer-2-gigabit/dgs-series/es_dgs_1210_como_monitorear_trafico_de_un_puerto_port_mirroring


2

ก่อนอื่นคุณต้องเปลี่ยน NIC ของคุณไปเป็นโหมดที่หลากหลาย สมมติว่าอินเตอร์เฟส NIC ของคุณคือ eth0

root@linux#ifconfig eth0 promesc

หากคุณอยู่ในเครือข่ายสวิตช์การดมกลิ่นของคุณจะลดลงไปยังโดเมนการชนที่เชื่อมต่อกับพอร์ตสวิตช์ของคุณ คุณสามารถเรียกใช้macofเพื่อเอาชนะตารางการส่งต่อของสวิตช์

root@linux#macof -i eth0

จากนั้นคุณสามารถใช้wiresharkหรือtcpdumpเพื่อจับภาพการรับส่งข้อมูลทั้งหมด

root@linux#tcpdump -i eth0 -w outputfile

tcpdumpหากคุณไม่ได้อยู่ในเครือข่ายเปลี่ยนเพียงแค่เปิดใช้งานโหมดสำส่อนและการใช้งาน


1
tcpdumpจะเปิดใช้งานโหมดที่หลากหลายสำหรับคุณ คุณไม่จำเป็นต้องทำ (และอย่าลืมเลิกทำเมื่อทำเสร็จ) ด้วยตนเอง
Celada

0

คุณกำลังสร้างวงล้อใหม่

สมมติว่าคุณมีเครือข่ายง่าย ๆ ที่ลูกค้าเชื่อมต่อกับสวิตช์ด้วยเกตเวย์เริ่มต้นไปยังอินเทอร์เน็ตจากนั้นคุณจะต้องตรวจสอบอุปกรณ์เกตเวย์เริ่มต้นนั้นเท่านั้น นี่จะเป็นจุดที่ทำให้หายใจไม่ออกเพื่อแสดงปริมาณการใช้งานทั้งหมดระหว่างไคลเอนต์ LAN และอินเทอร์เน็ต

ฉันสมมติว่าลูกค้า LAN กับการรับส่งข้อมูลลูกค้า LAN ไม่เป็นที่สนใจเพราะด้วยที่อยู่ IP ทั้งหมดภายในเครือข่ายย่อย IP เดียวกันการรับส่งข้อมูลในพื้นที่จะไม่แตะเกตเวย์เริ่มต้น

หากคุณต้องการเห็นทราฟฟิกทั้งหมดผู้ใช้แต่ละคนต้องอยู่ในเครือข่าย IP ของตนเองและทราฟฟิกไปยังเครือข่ายอื่นนั้นจะผ่านเกตเวย์เริ่มต้น คุณสามารถจัดสรร a / 28 ให้กับแต่ละคนและพวกเขาสามารถมี 14 IP ได้ด้วยตนเอง

เราเตอร์ระดับครัวเรือนโดยเฉลี่ยของคุณจะไม่จัดการเรื่องนี้มากนักคุณต้องสำรวจ distro ไฟร์วอลล์เฉพาะ pfsense ส่วนตัวของฉันจะไป แต่มีหลายตัวเลือก

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.