เครื่องมือที่จะใช้ใน ARP Spoofing Attack
มีเครื่องมือมากมาย เช่น Arpspoof, Cain & Abel, Arpoison และ Ettercap ที่พร้อมใช้งานเพื่อเริ่มการปลอมแปลง ARP
นี่คือภาพหน้าจอที่แสดงให้เห็นว่าเครื่องมือดังกล่าวสามารถส่งคำขอ ARP ได้อย่างไร:
ARP Spoofing Attack ในรายละเอียด
ให้เราดูภาพหน้าจอบางส่วนและทำความเข้าใจการปลอมแปลง ARP ทีละขั้นตอน:
ขั้นตอนที่ 1 :
ความคาดหวังของผู้โจมตีคือการได้รับการตอบกลับ ARP เพื่อให้สามารถเรียนรู้ที่อยู่ MAC ของเหยื่อได้ ตอนนี้ หากเราดำเนินการต่อไปในภาพหน้าจอที่กำหนด เราจะเห็นว่ามีการตอบกลับ ARP 2 รายการจากที่อยู่ IP 192.168.56.100 และ 192.168.56.101 หลังจากนี้ เหยื่อ [192.168.56.100 และ 192.168.56.101] จะอัปเดตแคช ARP แต่ไม่ได้สอบถามกลับ ดังนั้น รายการในแคช ARP จะไม่ได้รับการแก้ไข
หมายเลขแพ็กเก็ตคำขอ ARP คือ 137 และ 138 หมายเลขแพ็กเก็ตการตอบสนอง ARP คือ 140 และ 143
ดังนั้น ผู้โจมตีจึงค้นหาช่องโหว่ด้วยการปลอมแปลง ARP สิ่งนี้เรียกว่าเป็น 'การเข้าสู่การโจมตี'
ขั้นตอนที่ 2:
หมายเลขแพ็คเก็ตคือ 141, 142 และ 144, 146
จากกิจกรรมก่อนหน้านี้ ตอนนี้ผู้โจมตีมีที่อยู่ MAC ที่ถูกต้องเป็น 192.168.56.100 และ 192.168.56.101 ขั้นตอนต่อไปสำหรับผู้โจมตีคือการส่งแพ็คเก็ต ICMP ไปยังที่อยู่ IP ของเหยื่อ และเราสามารถเห็นได้จากภาพหน้าจอที่ผู้โจมตีส่งแพ็คเก็ต ICMP และได้รับการตอบกลับจาก ICMP จาก 192.168.56.100 และ 192.168.56.101 ซึ่งหมายความว่าสามารถเข้าถึงได้ทั้งที่อยู่ IP [192.168.56.100 และ 192.168.56.101]
ขั้นตอนที่ 3:
เราจะเห็นว่ามีคำขอ ARP ล่าสุดสำหรับที่อยู่ IP 192.168.56.101 เพื่อยืนยันว่าโฮสต์ทำงานอยู่ และมีที่อยู่ MAC เดียวกันกับ 08:00:27:dd:84:45
หมายเลขแพ็คเก็ตที่กำหนดคือ 3358
ขั้นตอนที่ 4:
มีคำขอ ICMP อื่นและตอบกลับด้วยที่อยู่ IP 192.168.56.101 หมายเลขแพ็คเก็ตคือ 3367 และ 3368
เราสามารถคิดได้จากที่นี่ว่าผู้โจมตีกำลังกำหนดเป้าหมายไปที่เหยื่อซึ่งมีที่อยู่ IP คือ 192.168.56.101
ตอนนี้ ข้อมูลใดๆ ที่มาจากที่อยู่ IP 192.168.56.100 หรือ 192.168.56.101 ถึง IP 192.168.56.1 จะเข้าถึงผู้โจมตีที่อยู่ MAC ซึ่งมีที่อยู่ IP คือ 192.168.56.1
ขั้นตอนที่ 5:
เมื่อผู้โจมตีเข้าถึงได้ ก็จะพยายามสร้างการเชื่อมต่อจริง จากภาพหน้าจอที่กำหนด เราจะเห็นว่าการสร้างการเชื่อมต่อ HTTP กำลังถูกพยายามจากผู้โจมตี มีการเชื่อมต่อ TCP ภายใน HTTP ซึ่งหมายความว่าควรมีการจับมือกัน 3 ทาง นี่คือการแลกเปลี่ยนแพ็กเก็ตสำหรับ TCP:
SYN -> SYN+ACK -> ACK
จากภาพหน้าจอที่กำหนด เราจะเห็นว่าผู้โจมตีพยายามลองแพ็กเก็ต SYN ซ้ำหลายครั้งบนพอร์ตต่างๆ หมายเลขเฟรม 3460 ถึง 3469 หมายเลขแพ็กเก็ต 3469 SYN สำหรับพอร์ต 80 ซึ่งเป็น HTTP
ขั้นตอนที่ 6:
การจับมือ TCP ที่ประสบความสำเร็จครั้งแรกจะแสดงที่หมายเลขแพ็กเก็ตต่อไปนี้จากภาพหน้าจอที่กำหนด:
4488: เฟรม SYN จากผู้โจมตี
4489: เฟรม SYN+ACK จาก 192.168.56.101
4490: ACK เฟรมจากผู้โจมตี
ขั้นตอนที่ 7:
เมื่อการเชื่อมต่อ TCP สำเร็จ ผู้โจมตีจะสามารถสร้างการเชื่อมต่อ HTTP [หมายเลขเฟรม 4491 ถึง 4495] ตามด้วยการเชื่อมต่อ SSH [หมายเลขเฟรม 4500 ถึง 4503]
ตอนนี้ การโจมตีมีการควบคุมเพียงพอที่จะทำสิ่งต่อไปนี้:
- การโจมตีการจี้เซสชัน
- ผู้ชายที่อยู่ตรงกลางการโจมตี [MITM]
- การโจมตีแบบปฏิเสธการให้บริการ (DoS)
วิธีป้องกันการโจมตีด้วยการปลอมแปลง ARP
ต่อไปนี้คือการป้องกันบางอย่างที่สามารถทำได้เพื่อป้องกันการโจมตีจากการปลอมแปลง ARP:
- การใช้รายการ “Static ARP”
- ซอฟต์แวร์ตรวจจับและป้องกันการปลอมแปลง ARP
- การกรองแพ็คเก็ต
- VPN เป็นต้น
นอกจากนี้ เราสามารถหยุดสิ่งนี้ไม่ให้เกิดขึ้นอีกหากเราใช้ HTTPS แทน HTTP และใช้การรักษาความปลอดภัยเลเยอร์การขนส่ง SSL (Secure Socket layer) เพื่อให้การสื่อสารทั้งหมดได้รับการเข้ารหัส
บทสรุป
จากบทความนี้ เราได้รับแนวคิดพื้นฐานเกี่ยวกับการโจมตีแบบปลอมแปลง ARP และการเข้าถึงทรัพยากรของระบบ นอกจากนี้ ตอนนี้เรารู้วิธีหยุดการโจมตีประเภทนี้แล้ว ข้อมูลนี้ช่วยให้ผู้ดูแลระบบเครือข่ายหรือผู้ใช้ระบบสามารถป้องกันการโจมตีจากการปลอมแปลง ARP ได้