Khái niệm, định nghĩa ARP spoofing là gì?

Trong mạng máy tính, ARP spoofing, ARP cache poisoning, hay ARP poison routing, là một kỹ thuật qua đó kẻ tấn công giả thông điệp ARP trong mạng cục bộ. Nói chung, mục tiêu là kết hợp địa chỉ MAC của kẻ tấn công với địa chỉ IP của máy chủ khác, chẳng hạn như cổng mặc định (default gateway), làm cho bất kỳ lưu lượng truy cập nào dành cho địa chỉ IP đó được gửi đến kẻ tấn công.

ARP spoofing có thể cho phép kẻ tấn công chặn các khung dữ liệu trên mạng, sửa đổi lưu lượng, hoặc dừng tất cả lưu lượng. Thông thường cuộc tấn công này được sử dụng như là một sự mở đầu cho các cuộc tấn công khác, chẳng hạn như tấn công từ chối dịch vụ, tấn công Man-in-the-middle attack, hoặc các cuộc tấn công cướp liên lạc dữ liệu.

Cuộc tấn công này chỉ có thể dùng trong các mạng mà dùng Address Resolution Protocol, và giới hạn trong các mạng cục bộ.

Một tấn công ARP spoofing thành công cho phép kẻ xâm phập thực hiện một cuộc tấn công man-in-the-middle attack.

Bởi vì ARP không cung cấp các phương pháp để xác thực các trả lời ARP trên mạng, các hồi đáp ARP có thể đến từ các hệ thống khác hơn cái mà có địa chỉ tầng 2 yêu cầu. Ngoài ra, một host có thể chấp nhận gói ARP Reply mà trước đó không cần phải gửi gói tin ARP Request. Lợi dụng điều này, hacker có thể triển khai các phương thức tấn công như: Man In The Middle, Denial of Service, MAC Flooding. Hiện có nhiều phần mềm để phát hiện và thực hiện các cuộc tấn công giả mạo ARP, mặc dù ARP chính nó không cung cấp bất kỳ phương pháp bảo vệ chống lại các cuộc tấn công như vậy.

Lỗ hổng của ARP

Address Resolution Protocol là một giao thức truyền thông được sử dụng rộng rãi để tìm ra các địa chỉ tầng liên kết dữ liệu từ các địa chỉ tầng mạng[note 1]

Khi một gói tin (datagram) Giao thức Internet (IP) được gửi từ một máy đến máy khác trong mạng cục bộ, địa chỉ IP đích phải được giải quyết thành địa chỉ MACđể truyền qua tầng liên kết dữ liệu. Khi biết được địa chỉ IP của máy đích, và địa chỉ MAC của nó cần truy cập, một gói tin broadcast được gửi đi trên mạng nội bộ. Gói này được gọi là ARP request. Máy đích với IP trong ARP request sẽ trả lời với ARP reply, nó chứa địa chỉ MAC cho IP đó.[2]

ARP là một giao thức phi trạng thái. Máy chủ mạng sẽ tự động lưu trữ bất kỳ ARP reply nào mà chúng nhận được, bất kể máy khác có yêu cầu hay không. Ngay cả các mục ARP chưa hết hạn sẽ bị ghi đè khi nhận được gói tin ARP reply mới. Không có phương pháp nào trong giao thức ARP mà giúp một máy có thể xác nhận máy mà từ đó gói tin bắt nguồn. Hành vi này là lỗ hổng cho phép ARP spoofing xảy ra.