[Article] Các cách tấn công và phòng chống tấn công ARP (address resolution protocol) |
05/07/2006 07:57:23 (+0700) | #1 | 3996 |
|
hung1910
HVA Friend
|
Joined: 06/09/2003 01:58:57
Messages: 123
Location: somewhere
Offline
|
|
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 |
|
|
|
|
[Article] Các cách tấn công và phòng chống tấn công ARP (address resolution protocol) |
14/10/2009 01:53:22 (+0700) | #2 | 195485 |
|
VTN_89
Member
|
0 |
|
|
Joined: 25/09/2006 21:47:01
Messages: 76
Offline
|
|
sao tôi gõ lệnh ipconfig /all hay arp -a gì gì đó tiếp, mà gõ xong nó biến mất vậy ? nó hiện lên màn hình cmd gòy biến mất, vậy là sao ta ? |
|
|
|
|
[Article] Các cách tấn công và phòng chống tấn công ARP (address resolution protocol) |
14/10/2009 02:34:52 (+0700) | #3 | 195492 |
jforum3000
Member
|
0 |
|
|
Joined: 26/08/2007 02:53:39
Messages: 1172
Offline
|
|
Đừng gõ trong ô "Run", bạn "Run" cmd trước đã rồi hãy gõ. |
|
|
|
|
[Article] Các cách tấn công và phòng chống tấn công ARP (address resolution protocol) |
14/10/2009 22:48:23 (+0700) | #4 | 195570 |
|
conmale
Administrator
|
Joined: 07/05/2004 23:43:15
Messages: 9353
Location: down under
Offline
|
|
VTN_89 wrote:
sao tôi gõ lệnh ipconfig /all hay arp -a gì gì đó tiếp, mà gõ xong nó biến mất vậy ? nó hiện lên màn hình cmd gòy biến mất, vậy là sao ta ?
Những cái căn bản thế này chưa nắm được thì làm sao mà đụng tới "ộp" (arp) hay "oạp" hở trời? |
|
What bringing us together is stronger than what pulling us apart. |
|
|
|
[Article] Các cách tấn công và phòng chống tấn công ARP (address resolution protocol) |
20/10/2009 04:18:27 (+0700) | #5 | 196071 |
chizro
Member
|
0 |
|
|
Joined: 07/09/2009 12:46:10
Messages: 12
Offline
|
|
hung1910 wrote:
Đầ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
đọc đến đoạn này em có 1 chút thắc mắc nếu nói như vậy thì đồng thời host A phải truyền tin cho máy Victim và máy của Attacker . Kiến thức mạng em còn yếu nói như vậy nếu sai chỗ nào anh chỉnh dùm nha |
|
|
|
|
|