Các thiết bị trong cùng một mạng thường dùng địa chỉ MAC để liên lạc với nhau tại tầng Data Link... Quá trình thực hiện bằng cách: một thiết bị IP trong mạng gửi một gói tin local broadc
Trang 1PHƯƠNG THỨC TẤN CÔNG ARP
Nội dung chính
Làm thế nào để tấn công ARP
Cách phòng thủ và ví dụ
Gioi thiệu
Nguyên lý
và phương thức
Trang 2Mỗi thiết bị mạng đều có một địa chỉ MAC (Medium Access Control address)
và địa chỉ đó là duy nhất Các thiết bị trong cùng một mạng thường dùng địa chỉ MAC để liên lạc với nhau tại tầng Data Link
Trang 3ARP là phương thức phân giải địa chỉ động giữa địa chỉ lớp network và địa chỉ lớp datalink Quá trình thực hiện bằng cách: một thiết bị IP trong mạng gửi một gói tin local broadcast đến toàn mạng yêu cầu thiết bị
khác gửi trả lại địa chỉ phần cứng ( địa chỉ lớp datalink ) hay còn gọi là Mac Address của mình.
Ban đầu ARP chỉ được sử dụng trong mạng Ethernet để phân giải địa chỉ IP và địa chỉ MAC Nhưng ngày nay ARP đã được ứng dụng rộng rãi
và dùng trong các công nghệ khác dựa trên lớp hai.
Trang 4Có hai dạng bản tin trong ARP : một được gửi
từ nguồn đến đích, và một được gửi từ đích tới
nguồn
Request : Khởi tạo quá trình, gói tin được gửi
từ thiết bị nguồn tới thiết bị đích
Reply : Là quá trình đáp trả gói tin ARP request,
được gửi từ máy đích đến máy nguồn
Trang 5Có 4 loại địa chỉ trong một bản tin ARP :
1 Sender Hardware Address : Địa chỉ lớp hai của thiết bị gửi bản tin
2 Sender Protocol Address : Địa chỉ lớp ba ( hay địa chỉ logic ) của thiết bị gửi bản tin
3 Target Hardware Address : Địa chỉ lớp hai ( địa chỉ phần cứng ) của thiết bị đích của bản tin
4 Target Protocol Address : Địa chỉ lớp ba ( hay địa chỉ logic ) của thiết bị đích của bản tin
Trang 6Host A và Host B truyền tin cho nhau, các packet sẽ được đưa xuống tầng
Datalink để đóng gói, các Host sẽ phải đóng gói MAC nguồn, MAC đích vào
frame Như vậy trước khi quá trình truyền dữ liệu xảy ra, 2 máy sẽ phải làm động tác hỏi MAC của nhau
Nếu mà Host A khởi động quá trình hỏi MAC trước, nó broadcast gói tin ARP
request để hỏi MAC Host B, thì Host B coi như đã có MAC của Host A, và Host B chỉ trả lời cho A MAC của Host B thôi (gói tin trả lời từ Host B là ARP reply)
Trang 7Lỗ hổng ARP
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
Trang 8TẤN CÔNG ARP
Làm thế nào để tấn công?
Attacker: là máy hacker dùng để
tấn công ARP attack
IP: 10.0.0.11
Mac: 0000:0000:0111
Host AIP: 10.0.0.09MAC: 0000:0000:0109
Host BIP: 10.0.0.08MAC: 0000:0000:0108
Victim: là máy bị tấn công ARP attackIP: 10.0.0.10
MAC: 0000:0000:0110
Trang 9Attacker muốn thực hiện ARP attack đối với máy Victim Attacker muốn mọi gói tin Host A truyền tới máy Victim đều có thể chụp lại được để xem trộm Làm thế nào để Attacker có thể hiện được điều đó?
00:0110
Host A muốn gởi dữ liệu cho Victim Host A cần phải biết địa chỉ MAC của Victim để liên lạc Host A sẽ gửi broadcast ARP Request tới tất cả các máy trong cùng mạng Lan để hỏi xem IP 10.0.0.10 (IP của Victim) có địa chỉ MAC là bao nhiêu.
Trang 10Host B, Attacker, Victim đều nhận được gói tin ARP Request, nhưng chỉ có
Victim là gửi lại gói tin ARP Reply lại cho Host A ARP Reply chứa thông tin về
IP của Victim, MAC Victim, MAC Host A
Host B
Trang 11Sau khi nhận được gói tin ARP Reply từ Victim, Host A đã biết được địa chỉ MAC của Victim Host A bắt đầu thực hiện liên lạc, truyền dữ liệu tới Victim Host B,
Attacker không thể xem nội dung dữ liệu được truyền giữa 2 máy Host A và Victim
Host A
Host A IP: 10.0.0.10 MAC: 0000:0000:0110
Trang 12Attacker muốn xem dữ liệu truyền giữa Host A và Victim Attacker sử dụng kiểu tấn công ARP Spoof Attacker thực hiện gửi liên tục ARP Reply chứa thông tin
về IP Victim, MAC Attacker, MAC Host A Ở đây, thay vì là MAC Victim, Attacker
đã đổi thành địa chỉ MAC của mình
ARP Reply
Trang 13Host A nhận được ARP Reply và nghĩ là IP Victim 10.0.0.10 sẽ có địa chỉ MAC là 0000:0000:0111 (MAC của Attacker) Host A lưu thông tin này vào bảng ARP
Cache
Bây giờ mọi thông tin, dữ liệu Host A gửi tới 10.0.0.10 (Victim), Attacker đều có thể nhận được, Attacker có thể xem tòan bộ nội dung Host A gửi cho Victim
Attacker còn có thể kiểm sóat tòan bộ quá trình liên lạc giữa Host A và Victim
thông qua ARP Attack
Attacker thường xuyên gửi các gói tin ARP Reply chứa địa chỉ IP của Host A và Victim nhưng có địa chỉ MAC là của Attacker
Host A nhận được gói tin này thì cứ nghĩ Victim sẽ có địa chỉ MAC là
0000:0000:0111 (MAC của Attacker)
Victim nhận đươc gói tin này thì cứ nghĩ Host A sẽ có địa chỉ MAC là
0000:0000:0111 (MAC của Attacker)
Mọi thông tin trao đổi giữa Host A và Victim, Attacker đều có thể nhận được Như vậy là Attacker có thể biết được nội dung trao đổi giữa Host A và Victim
Trang 15Điểm yếu phương thức tấn công
1 Chỉ có những máy nằm trong cùng đường mạng với máy Attacker mới bị tấn công Các máy nằm khác mạng sẽ không thể bị tấn công bằng hình thức này
2 Trong cùng một đường mạng LAN, các máy sẽ thực hiện trao đổi dữ liệu với nhau dựa vào địa chỉ MAC Host A muốn trao đổi dữ liệu với Host B Host A sẽ dò tìm trong bảng ARP cache xem IP của Host B sẽ có địa chỉ MAC tương ứng là gì Host A đóng gói dữ liệu cần truyền với MAC nguồn
là MAC Host A, MAC đích là MAC Host B Sau đó Host A sẽ truyền dữ liệu tới Host B dựa vào MAC đích của gói tin
3 Trong trường hợp Host A, Host B khác đường mạng muốn liên lạc với nhau, ta phải dựa vào địa chỉ IP để truyền dữ liệu và phải thông qua một thiết bị định tuyến, đó là router Host A sẽ đóng gói dữ liệu cần truyền với MAC nguồn là Host A, MAC đích là router Gói tin đó sẽ được truyền đến router, router sẽ dựa vào địa chỉ IP đích (IP Host B)và dò tìm trong bảng định tuyến nhằm xác định con đường đi đến Host B Router có khả năng
Trang 16Phương thức tấn công
NGUYÊN LÝ VÀ PHƯƠNG THỨC
Man in the middle(Gỉa mạo DNS)
Denial of service(Từ chối dịch vụ)
Mac flooding
Trang 17Denial of service
Hacker tiến hành tấn công bằng cách gởi gói ARP Reply đến toàn bộ các host
trong mạng với nội dung mang theo là địa chỉ IP của Gateway và địa chỉ MAC
không hề tồn tại Như vậy các host trong mạng tin tưởng rằng mình đã biết được MAC của Gateway và khi gửi thông tin đến Gateway, kết quả là gửi đến một nơi hoàn toàn không tồn tại Đó là điều hacker mong muốn, toàn bộ các host trong
mạng đều không thể đi ra Internet được
Trang 18Tool tấn công
SwitchSniffer
Trang 19Tool tấn công
Cain &abel
Trang 20Tool tấn công
Netcut
Trang 21dòng màu đỏ, trong đó có IP
Gateway, máy tấn công và
các máy nạn nhân
Bạn hãy loại ra IP Gateway
và các IP máy nạn nhân bị
mất mạng, còn lại chính là IP
của máy tính tấn công đó
(máy này không bị mất
mạng)
Nếu chú ý hơn vào XArp 2.0, bạn kéo ra sau cùng sẽ thấy cột How
Trang 22Cách phòng thủ
1 Mạng nhỏ
Ta có thể sử dụng địa chỉ IP tĩnh và ARP table tĩnh, khi đó, bạn sẽ liệt kê bằng tay IP nào đi với MAC nào
Trong Windows có thể sử dụng câu lệnh ipconfig /all để xem IP và MAC,
dùng câu lệnh arp -s để thêm vào ARP table Khi mà ép tĩnh như vậy sẽ
ngăn chặn hacker gởi các gói ARP Reply giả tạo đến máy của mình vì khi sử dụng ARP table tĩnh thì nó luôn luôn không thay đổi Chú ý rằng cách thức
này chỉ áp dụng được trong môi trường mạng với quy mô nhỏ, nếu mạng lớn hơn là không thể vì chúng ta phải thêm vào ARP table bằng tay với số lượng quá nhiều
Trang 23Cách phòng thủ
2 Mạng lớn
Khi quản trị trong một mạng quy mô lớn, ta có thể sử dụng chức năng Port
security Khi mở chức năng Port security lên các port của Switch, ta có thể
quy định port đó chỉ chấp nhận một địa chỉ MAC Như vậy sẽ ngăn chặn việc thay đổi địa chỉ MAC trên máy hacker
Ngoài ra cũng có thể sử dụng các công cụ, ví dụ như ArpWatch Nó sẽ phát hiện và báo cáo cho bạn các thông tin liên quan đến ARP đang diễn ra trong mạng Nhờ đó, nếu có hiện tượng tấn công bằng ARP Poisoning thì bạn có thể giải quyết kịp thời
Trang 24Cảm ơn mọi người đã lắng nghe
Tháng 11