tấn công mac & dhcp

8
Tấn công MAC 1. MAC là gì? Địa chỉ MAC (Media Access Control) : là kiểu địa chỉ vật lí, đặc trưng cho một thiết bị hoặc một nhóm các thiết bị trong mạng LAN. Địa chỉ này được dùng để nhận diện các thiết bị giúp cho các gói tin lớp 2 có thể đến đúng đích. Một địa chỉ MAC bao gồm 6 byte và thường được viết dưới dạng hexa, với các thiết bị của Cisco, địa chỉ này được viết dưới dạng số hexa ,ví dụ: 0000.0C12.FFFF là một địa chỉ MAC hợp lệ. Để đảm bảo địa chỉ MAC của một thiết bị là duy nhất, các nhà sản xuất cần phải ghi địa chỉ đó lên ROM của thiết bị phần cứng và định danh của nhà sản xuất sẽ được xác định bởi 3 byte đầu OUI (Organizationally Unique Identifier). Địa chỉ MAC được phân làm 3 loại : - Unicast: đây là loại địa chỉ dùng để đại diện cho một thiết bị duy nhất. - Multicast: đây là loại địa chỉ đại diện cho một nhóm các thiết bị trong mạng LAN. Địa chỉ được dùng trong trường hợp một ứng dụng có thể muốn trao đổi với một nhóm các thiết bị. Bằng cách gửi đi một bản tin có địa chỉ multicast; tất cả các thiết bị trong nhóm đều nhận và xử lí gói tin trong khi các thiết bị còn lại trong mạng sẽ bỏ qua. Giao thức IP cũng hỗ trợ truyền multicast. Khi một gói tin IP multicast được truyền qua một mạng LAN, địa chỉ MAC multicast tương ứng với địa chỉ IP sẽ là 0100.5exxx.xxxx. - Broadcast: địa chỉ này đại diện cho tất cả các thiết bị trong cùng một mạng LAN. Điều đó cũng có nghĩa là nếu một gói tin có địa chỉ MAC là FFFF.FFFF.FFFF được gửi đi thì tất cả các thiết bị trong mạng LAN đều phải thu nhận và xử lí. 2. Chức năng chuyển mạch của switch: Việc đưa thiết bị chuyển mạch vào một mạng LAN có nhiều mục đích nhưng mục đích quan trong nhất là để chia một mạng LAN ra thành nhiều vùng khác nhau nhằm giảm thiểu việc xung đột gói tin khi có

Upload: kuroemon485

Post on 08-Apr-2016

236 views

Category:

Documents


8 download

DESCRIPTION

Tấn công MAC & DHCP

TRANSCRIPT

Page 1: Tấn công MAC & DHCP

T n công MACấ

1. MAC là gì?

Địa chỉ MAC (Media Access Control) : là kiểu địa chỉ vật lí, đặc trưng cho một thiết bị hoặc một nhóm các thiết bị trong mạng LAN. Địa chỉ này được dùng để nhận diện các thiết bị giúp cho các gói tin lớp 2 có thể đến đúng đích.

Một địa chỉ MAC bao gồm 6 byte và thường được viết dưới dạng hexa, với các thiết bị của Cisco, địa chỉ này được viết dưới dạng số hexa ,ví dụ: 0000.0C12.FFFF là một địa chỉ MAC hợp lệ. Để đảm bảo địa chỉ MAC của một thiết bị là duy nhất, các nhà sản xuất cần phải ghi địa chỉ đó lên ROM của thiết bị phần cứng và định danh của nhà sản xuất sẽ được xác định bởi 3 byte đầu OUI (Organizationally Unique Identifier).

Địa chỉ MAC được phân làm 3 loại:- Unicast: đây là loại địa chỉ dùng để đại diện cho một thiết bị duy nhất.- Multicast: đây là loại địa chỉ đại diện cho một nhóm các thiết bị trong mạng LAN. Địa chỉ được dùng trong trường hợp một ứng dụng có thể muốn trao đổi với một nhóm các thiết bị. Bằng cách gửi đi một bản tin có địa chỉ multicast; tất cả các thiết bị trong nhóm đều nhận và xử lí gói tin trong khi các thiết bị còn lại trong mạng sẽ bỏ qua. Giao thức IP cũng hỗ trợ truyền multicast. Khi một gói tin IP multicast được truyền qua một mạng LAN, địa chỉ MAC multicast tương ứng với địa chỉ IP sẽ là 0100.5exxx.xxxx.- Broadcast: địa chỉ này đại diện cho tất cả các thiết bị trong cùng một mạng LAN. Điều đó cũng có nghĩa là nếu một gói tin có địa chỉ MAC là FFFF.FFFF.FFFF được gửi đi thì tất cả các thiết bị trong mạng LAN đều phải thu nhận và xử lí.

2. Chức năng chuyển mạch của switch:

Việc đưa thiết bị chuyển mạch vào một mạng LAN có nhiều mục đích nhưng mục đích quan trong nhất là để chia một mạng LAN ra thành nhiều vùng khác nhau nhằm giảm thiểu việc xung đột gói tin khi có quá nhiều thiết bị được nối vào cùng một môi trường truyền dẫn. Các vùng được phân chia này được gọi là các collision domain.Chức năng chính của switch là vận chuyển các frame lớp 2 qua lại giữa các collision domain này. Các collision domain này còn được gọi là các đoạn mạng LAN (LAN segment).Để có thể vận chuyển chính xác được gói tin đến đích, switch cần phải có một sơ đồ ánh xạ giữa địa chỉ MAC của các thiết bị vật lí gắn tương ứng với cổng nào của nó. Sơ đồ này được lưu lại trong switch và được gọi là bảng CAM (Content Address Memory).Quá trình vận chuyển gói tin qua switch có thể được mô tả như sau:- Nếu địa chỉ MAC nguồn của gói tin chưa có trong bảng CAM, switch sẽ cập nhật với cổng tương ứng. Nếu địa chỉ MAC nguồn đã tồn tại trong bảng nhưng với một cổng khác, switch sẽ báo lỗi “MAC flapping” và huỷ gói tin.- Nếu địa chỉ đích của gói tin là địa chỉ multicast hoặc địa chỉ broadcast hoặc là địa chỉ unicast nhưng ánh xạ của địa chỉ này không tồn tại trong bảng CAM trước đó thì gói tin sẽ được gửi ra tất cả các cổng của switch trừ cổng mà nó nhận được gói tin.- Nếu địa chỉ đích của gói tin là địa chỉ unicast và ánh xạ của địa chỉ tồn tại trong bảng CAM

Page 2: Tấn công MAC & DHCP

đồng thời cổng mà nó nhận được gói tin khác với cổng mà gói tin cần được chuyển đi thì nó sẽ gửi gói tin đến chính xác cổng có trong bảng CAM.- Các trường hợp còn lại, gói tin sẽ bị huỷ.

3. Kiểu tấn công làm tràn bảng CAM (MAC flooding):

3.1. Phương thức tấn công:

Kiểu tấn công làm tràn bảng CAM dựa vào điểm yếu của thiết bị chuyển mạch: bảng CAM chỉ chứa được một số hữu hạn các ánh xạ (ví dụ như switch Catalysh 6000 có thể chứa được tối đa 128000 ánh xạ) và các ánh xạ này không phải tồn tại mãi mãi trong bảng CAM [4]. Sau một khoảng thời gian nào đó, thường là 300 s; nếu địa chỉ này không được dùng trong việc trao đổi thông tin thì nó sẽ bị gỡ bỏ khỏi bảng.Khi bảng CAM được điền đầy, tất cả thông tin đến sẽ được gửi đến tất cả các cổng của nó trừ cổng nó nhận được. Lúc này chức năng của switch không khác gì chức năng của một hub.

Page 3: Tấn công MAC & DHCP

Trong ví dụ trên, host C của kẻ tấn công gửi đi liên tục hàng loạt các bản tin có địa chỉ MAC nguồn là địa chỉ giả mạo (host X và host Y). Switch sẽ cập nhật địa chỉ của các host giả mạo này vào bảng CAM. Kết quả là khi host A gửi tin đến cho host B; địa chỉ của B không tồn tại trong bảng nên gói tin được switch gửi ra các cổng của nó và bản tin A chỉ gửi riêng cho B cũng sẽ được chuyển đến C.

3.2. Cách phòng chống:Nguyên lí chung của các phương pháp phòng chống là không để các gói tin có địa chỉ MAC lạ đi qua switch. Phương pháp phòng chống hiệu quả nhất là cấu hình port security trên switch [1]. Đây là một đặc trưng cấu hình cho phép điều khiển việc truy cập vào cổng switch thông qua địa chỉ MAC của thiết bị gắn vào.Khi switch nhận được một gói tin chuyển đến, nó sẽ kiểm tra địa chỉ MAC nguồn của gói tin với danh sách các địa chỉ đã được cấu hình trước đó. Nếu hai địa chỉ này khác nhau thì tuỳ theo sự cấu hình của người quản trị mà switch sẽ xử lí gói tin đến với các mức độ khác nhau.

Page 4: Tấn công MAC & DHCP

T n công DHCPấ1. DHCP là gì?

DHCP (Dynamic Host Configuration Protocol) là giao thức cấu hình Host động. Giao thức này cung cấp phương pháp thiết lập các thông số TCP/IP cần thiết cho hoạt động của mạng, giúp giảm khối lượng công việc cho quản trị hệ thống. Tuy có nhiều ưu điểm, nhưng giao thức DHCP hoạt động lại khá đơn giản, suốt quá trình trao đổi thông điệp giữa DHCP Server và DHCP Client không có sự xác thực hay kiểm soát truy cập nên cũng phát sinh một số điểm yếu về an toàn.

Dịch vụ DHCP gồm hai thành phần là DHCP Server (máy chủ chạy dịch vụ DHCP) và DHCP Client (máy trạm chạy dịch vụ DHCP). 

Quá trình truyền thông giữa một máy tính trạm được cấu hình sử dụng IP động (DHCP Client) với một máy chỉ được cấu hình đảm nhận chức năng cấp phát IP động (DHCP Server) diễn ra như sau:

- Đầu tiên, DHCP Client muốn nhận một địa chỉ IP mới (tức là máy tính này muốn tham gia vào hệ thống mạng) sẽ gửi lên toàn mạng (gửi broadcast) một thông điệp DHCP Discover có chứa địa chỉ MAC của mình để tìm kiếm sự hiện diện của DHCP Server.- Nếu tồn tại sự hoạt động của một DHCP Server có cùng subnet với DHCP Client trên thì DHCP Server này sẽ phản hồi cho DHCP Client một thông điệp DHCP Offer có chứa địa chỉ IP và các thiết lập TCP/IP khác như một lời đề nghị cho thuê địa chỉ đó.- Ngay sau khi nhận được thông điệp DHCP Offer đầu tiên, DHCP Client sẽ gửi lại cho DHCP Server đó một thông điệp DHCP như là một lời chấp thuận thuê địa chỉ IP đó.- Cuối cùng, DHCP Server sẽ gửi lại cho DHCP Client thông điệp DHCP Acknowledgment để xác nhận lần cuối hợp đồng cho thuê địa chỉ IP.

2. Tấn công vào dịch vụ DHCP

2.1. Tấn công DHCP Starvation:

Trong tấn công DHCP Starvation, kẻ tấn công liên tục gửi tới DHCP Server các gói tin yêu cầu xin cấp địa chỉ IP với các địa chỉ MAC nguồn không có thực, cho tới khi dải IP có sẵn

Page 5: Tấn công MAC & DHCP

trên DHCP Server cạn kiệt vì bị nó thuê hết. Điều này dẫn tới việc DHCP Server không còn địa chỉ IP nào để cho các DHCP Client hợp pháp thuê, khiến dịch vụ bị ngưng trệ, các máy trạm khác không thể truy nhập vào hệ thống mạng để truyền thông với các máy tính trong mạng.

2.2. Tấn công giả mạo DHCP server:

Trong tấn công giả mạo DHCP server, kẻ tấn công sẽ tạo ra môt server giả mạo vào trong mạng. Server này có khả năng phản hồi DHCP discovery request từ phía client. Vậy nên cả server giả mạo và server thực đều có khả năng phản hồi các yêu cầu của client và server nào đáp ứng trước sẽ kiểm soát được client đó. Trong trường hợp server giả mạo đáp ứng trước server thực, các thông tin cung cấp cho client bởi server giả mạo sẽ chặn việc truy xuất vào mạng, gây ra DoS.

Phản hồi từ server DHCP giả mạo có thể gán địa chỉ IP của kẻ tấn công thành default gateway cho client. Như vậy, tất cả các thong tin từ client sẽ được gửi tới địa chỉ của kẻ tấn công. Kẻ tấn công sau khi thu thập tất cả những thong tin này, rồi chuyển đến default gateway đúng của mạng. Loại tấn công này rất khó bị phải hiện bởi client trong một thời gian dài.

Page 6: Tấn công MAC & DHCP

3. Các phương pháp bảo vệ sự tấn công DHCP:

3.1. Tấn công DHCP Starvation:

Sử dụng port security để giới hạn số địa chỉ MAC tối đa trên switch port để tránh bị tấn công DHCP Starvation.

Page 7: Tấn công MAC & DHCP

3.3. Tấn công giả mạo DHCP server:

Tấn công giả mạo DHCP server có thể được hạn chế bằng DHCP snooping.

DCHP snooping là một tính năng có sẵn trên switch. Để có thể phòng thủ trước tấn công giả mạo DHCP server, thiệp lập DHCP snooping trên chỉ cho các dhcp server hợp lệ kết nối vào. Một khi đã thiết lập DHCP snooping, nó sẽ không cho phép các cổng khác trên switch phản hồi các gói DHCP discover gửi bởi client. Như vậy, nếu kẻ tấn công dù có tạo một dhcp server giả mạo và kết nói vào switch, cũng không thể phản lại các gói DHCP discover.