banner
 .::Defense::. Các cách tấn công và phòng chống tấn công ARP (address resolution protocol) Go to original post Author: hung1910 (st) - Translator:  - Entry Date: 15/02/2009 23:14:29
1. MAC, ARP là gì?

Mỗ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.

Các thiết bị thường dùng cơ chế ARP (Address Resolution Protocol) và RARP (Reverse Address Resolution Protocol) để biết được các địa chỉ MAC, IP của các thiết bị khác



2. Quá trình ARP


HostA và HostB 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à HostA khởi động quá trình hỏi MAC trước, nó broadcast gói tin ARP request để hỏi MAC HostB, thì HostB coi như đã có MAC của HostA, và HostB chỉ trả lời cho A MAC của HostB thôi (gói tin trả lời từ HostB là ARP reply).



3. Làm thế nào để tấn công bằng ARP



Giả sử ta có mạng Lan như mô hình trên gồm các host

Attacker: là máy hacker dùng để tấn công ARP attack

IP: 10.0.0.11

Mac: 0000:0000:0111



HostA

IP: 10.0.0.09

MAC: 0000:0000:0109



HostB

IP: 10.0.0.08

MAC: 0000:0000:0108



Victim: là máy bị tấn công ARP attack

IP: 10.0.0.10

MAC: 0000:0000:0110



Attacker muốn thực hiện ARP attack đối với máy Victim. Attacker muốn mọi gói tin HostA 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 đó?



Đầu tiên, HostA muốn gởi dữ liệu cho Victim. HostA cần phải biết địa chỉ MAC của Victim để liên lạc. HostA 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.

HostB, 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 HostA. ARP Reply chứa thông tin về IP của Victim, MAC Victim, MAC HostA

Sau khi nhận được gói tin ARP Reply từ Victim, HostA đã biết được địa chỉ MAC của Victim. HostA bắt đầu thực hiện liên lạc, truyền dữ liệu tới Victim. HostB, Attacker không thể xem nội dung dữ liệu được truyền giữa 2 máy HostA và Victim



Attacker muốn xem dữ liệu truyền giữa HostA 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 HostA. Ở đây, thay vì là MAC Victim, Attacker đã đổi thành địa chỉ MAC của mình.

HostA 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). HostA lưu thông tin này vào bảng ARP Cache.

Bây giờ mọi thông tin, dữ liệu HostA 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 HostA 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 HostA 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 HostA và Victim nhưng có địa chỉ MAC là của Attacker.

HostA 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ĩ HostA sẽ có địa chỉ MAC là 0000:0000:0111 (MAC của Attacker)

Mọi thông tin trao đổi giữa HostA 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 HostA và Victim



Sau khi bị tấn công ARP attack, sẽ rất nguy hiểm cho người dùng vì mọi thông tin trao đổi của họ đều bị lộ, nhất là những thông tin đó là quan trọng, cần phải giữ bí mật



4.Giới hạn và điểm yếu của kiểu tấn công ARP Spoof:

- 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 vì

+ 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 . HostA muốn trao đổi dữ liệu với HostB. HostA sẽ dò tìm trong bảng ARP cache xem IP của HostB sẽ có địa chỉ MAC tương ứng là gì. HostA đóng gói dữ liệu cần truyền với MAC nguồn là MAC HostA, MAC đích là MAC HostB. Sau đó HostA sẽ truyền dữ liệu tới HostB dựa vào MAC đích của gói tin

+ Trong trường hợp HostA, HostB 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. HostA sẽ đóng gói dữ liệu cần truyền với MAC nguồn là HostA, MAC đích là router. Gói tin đó sẽ được truyền đến router, router sẽ dựa vào địa chỉ IP đích (IP HostB)và dò tìm trong bảng định tuyến nhằm xác định con đường đi đến HostB. Router có khả năng ngăn chặn các gói tin broadcast

- Hình thức tấn công này không thể thực hiện được trong mạng WAN, trên Internet mà chỉ thực hiện được trên cùng mạng LAN







5. Một số chương trình tấn công bằng ARP


ARP0c

http://www.l0t3k.org/security/tools/arp/


WinArpSpoofer

http://www.nextsecurity.net/


Ettercap

http://ettercap.sourceforge.net/

Cách phát hiện và phòng chống:

Dùng lệnh:
+ ipconfig /all xem MAC của mình
+ arp -a xem bảng ARP trên máy mình, kiểm tra MAC của B có phải đúng là MAC B hay không.
+ arp -d * xóa toàn bộ ARP table trên máy mình, như vậy các địa chỉ MAC bị tấn công cũng mất, và máy tính sẽ bắt đầu học lại. Nhưng nếu máy tấn công vẫn tiếp tục bơm các gói tin ARP đầu độc thì việc xóa ARP table này cũng vô ích
+ arp -s gắn cố định IP đích vào MAC thật của nó, như vậy kẻ tấn công không đầu độc được IP này nữa. Nhưng việc này không khả thi cho mạng lớn, nhiều máy tính, và có sự thay đổi IP (ví dụ dùng DHCP).

Dùng thiết bị:
Sử dụng switch có chức năng port secure (tham khảo tài liệu Cisco): chức năng này mục tiêu là để gắn cứng 1 hoặc 1 số MAC vào 1 port, như vậy máy tấn công không thể giả danh nhiều địa chỉ MAC được nữa.
Lệnh cấu hình:
http://www.cisco.com/en/US/products/hw/switches/ps628/products_configuration_guide_chapter09186a00800d84 c2.html#31465

Sorry, nguồn mình ko nhớ ở đâu
[digg] [delicious] [google] [yahoo] [technorati] [reddit] [stumbleupon]
Go to top Go to original post  

Powered by JForum - Extended by HVAOnline
 hvaonline.net  |  hvaforum.net  |  hvazone.net  |  hvanews.net  |  vnhacker.org
1999 - 2013 © v2012|0504|218|