Hiểu Về Cuộc Tấn Công Man-In-The-Middle - Phần 6: DHCP Spoofing

DHCP snooping. ngăn ngừa những tổn thất do vài kiểu tấn công dùng DHCP snooping gây ra. DHCP snooping làm cho một switch kiểm tra các thông điệp DHCP và lọc các thông điệp bị xem là không phù hợp. DHCP snooping cũng xây dựng một bảng của các địa chỉ và các cổng dựa trên những thông điệp DHCP hợp lệ gọi là DHCP snooping binding tables. Tính năng DHCP snooping sau đó sẽ dùng bởi tính năng DAI và bởi tính năng IP Source Guard.

Hình dưới đây mô tả một kiểu tấn công man-in-the-middle trong đó dùng DHCP.
DHCP hợp lệ nằm ở vùng khác, trong khi đó DHCP của máy tấn công nằm ở LAN cục bộ, hoạt động như DHCP server.













Các bước dưới đây giải thích làm thế nào một máy tấn công có thể trở thành “man-in-the-middle”.
PC-B yêu cầu một địa chỉ IP dùng DHCP.
PC của kẻ tấn công trả lời, cấp cho một địa chỉ IP/mask nhưng dùng địa chỉ của chính nó là default gateway. Pc-B gửi các data frame nghĩ rằng máy tấn công là gateway mặc định. Máy tấn công trung chuyển các frame trên, trở thành man-in-the-middle.

Chú ý PC-B sẽ dùng gói tin DHCP reply đầu tiên mà nó nhận được, vì vậy những gói tin DHCP hợp lệ phảI đi qua đường WAN sẽ chậm hơn những gói DHCP reply của máy tấn công.

Tính năng DHCP snooping hạn chế kiểu tấn công đó cho những port mà nó xem là không tin cậy. DHCP snooping cho phép tất cả các thông điệp DHCP trên những port tin cậy, nhưng nó sẽ lọc bỏ những thông điệp DHCP trên những port không tin cậy. Cơ chế này hoạt động dựa trên giả thiết rằng các máy DHCP clients trên tồn tạI trên những cổng không tin cậy, và kết quả là switch sẽ lọc những thông điệp DHCP đi vào mà các thông điệp này được gửi bởI các server. Vì vậy từ quan điểm thiết kế, các cổng không dùng của switch và các cổng không được bảo vệ phải được cấu hình như là không tin cậy đốI vớI dịch vụ DHCP snooping.

DHCP snooping cũng cần phải kiểm tra các thông điệp DHCP client trên những cổng không tin cậy, bởi vì những kiểu tấn công khác có thể dùng các thông điệp của DHCP client. DHCP server nhận dạng các máy client dựa trên địa chỉ phần cứng của do client khai báo trong thông điệp DHCP request. Một thiết bị đơn lẻ có thể hoạt động như nhiều thiết bị bằng cách gửi ra các thông điệp DHCP lặp lại, mỗI lần vớI một địa chỉ phần cứng khác nhau. Máy chủ DHCP server nghĩ rằng các yêu cầu là đến từ các máy khác nhau sẽ gán các địa chỉ cho từng yêu cầu. Máy chủ DHCP sẽ nhanh chóng gán hết những địa chỉ sẵn có trong dãy địa chỉ, làm cho những yêu cầu hợp lệ từ những ngườI dùng khác sẽ bị từ chối.





Đối với những cổng không tin cậy, DHCP snooping dùng các nguyên tắc sau đây để lọc gói tin:

1. Nó lọc tất cả các thông điệp được gửi bởi DHCP server.
2. Switch sẽ kiểm tra các thông địep release và declient trong bảng DHCP snooping. Nếu một địa chỉ IP trong những thông điệp này không được liệt kê cùng với những cổng trong bảng snooping, thông điệp sẽ bị loại bỏ.
3. Ngoài ra, switch có thể so sánh địa chỉ phần cứng của các DHCP request vớI địa chỉ nguồn trong Ethernet frame.

Trong ba hạng mục trên, hạng mục đầu tiên sẽ quản lý kiểu tấn công man-in-the-middle. Hạng mục thứ hai sẽ ngăn ngừa các máy tấn công gửi ra các gói DHCP và sau đó cố gắng yêu cầu một địa chỉ được gán bởi cùng một địa chỉ, thông qua đó chiếm luôn kết nối của máy ban đầu. Hạng mục cuối cùng ngăn ngừa kiểu tấn công DOS attack trong đó một máy cố gắng xin cấp hết tất cả những địa chỉ IP mà server có thể cấp trong mạng.

Quay trở lại câu hòi của bạn, bạn có thể cấu hình cổng của switch gắn vào DHCP như là trust port (cổng tin cậy). Các cổng nối vào các switch non-cisco như là un-trust.



 Yêu cầu:

1: Đảm bảo xóa toàn bộ cấu hình và Vlan của SW1
2: R1, R2, Client1, Client2 đều thuộc Vlan 10.
3: Cấu hình R1, R2 là DHCP Server. Dãy địa chỉ IP mỗi Router sẽ cấp như sau:

R1:
IP: 192.168.1.0/24
Gateway: 192.168.1.253

R2:
192.168.1.0/24
Gateway: 192.168.1.254

4: Cấu hình Client 1 và Client 2 là DHCP Client

5: Cấu hình DHCP Snooping trên SW1, đảm bảo các Client sẽ chỉ xin địa chỉ IP từ R2 qua DHCP (kiểm tra default-gateway trên mỗi client phải là IP của R2 192.168.1.254)

Hướng dẫn:

1: xóa toàn bộ cấu hình:

SW1# erase startup-config
SW1# delete flash:vlan.dat

2: Cấu hình SW1:

SW1(config)# interface range f0/1 - 2 , f0/23 - 24
SW1(config-if-range)# switchport mode access
SW1(config-if-range)# switchport access vlan 10

3: Đặt địa chỉ IP cho 2 client và 2 router:

R1(config)# interface fastEthernet 0/0
R1(config-if)# ip address 192.168.1.253 255.255.255.0
R2(config)# interface fastEthernet 0/0
R2(config-if)# ip address 192.168.1.254 255.255.255.0

4: Bật DHCP Client trên Client1 và Client2.

5: Cấu hình DHCP Snooping trên SW1. R1 và R2 là 2 DHCP Server, để đảm bảo client chỉ xin địa chỉ IP từ R2, cấu hình f0/24 (SW1) trust dhcp:

!Cấu hình DHCP Server cho R1 và R2:
R1(config)# ip dhcp pool VLAN10
R1(dhcp-config)# network 192.168.1.0 /24
R1(dhcp-config)# default-router 192.168.1.253

R2(config)# ip dhcp pool VLAN10
R2(dhcp-config)# network 192.168.1.0 /24
R2(dhcp-config)# default-router 192.168.1.254

!Cấu hình DHCP Snooping trên SW1:
SW1(config)# ip dhcp snooping
SW1(config)# ip dhcp snooping vlan 10
SW1(config)# no ip dhcp information option
SW1(config)# interface f0/24
SW1(config-if)# ip dhcp snooping trust
SW1(config)# interface f0/23
SW1(config-if)# no ip dhcp snooping trust

Cấu hình đầy đủ:

!R1:
!
configure terminal
!
interface fastEthernet0/0
ip address 192.168.1.253 255.255.255.0
no shutdown
!
ip dhcp pool VLAN10
network 192.168.1.0 /24
default-router 192.168.1.253
!
end


!R2:
!
configure terminal
!
interface fastEthernet0/0
ip address 192.168.1.254 255.255.255.0
no shutdown
!
ip dhcp pool VLAN10
network 192.168.1.0 /24
default-router 192.168.1.254
!
end


!SW1:
!
configure terminal
!
interface range fastEthernet0/1 - 2 , fastEthernet0/23 - 24
switchport mode access
switchport access vlan 10
!
ip dhcp snooping
!
ip dhcp snooping vlan 10
!
no ip dhcp information option
!
interface fastEthernet0/24
ip dhcp snooping trust
!
interface fastEthernet0/23
no ip dhcp snooping trust
!
end



!Kiểm tra:

#show ip dhcp snooping

!display only dynamic configured binding
#show ip dhcp snooping binding

!display the dhcp snooping binding database status and statistics
#show ip dhcp snooping database

!display the dynamic and static configured binding
#show ip source binding

Để cấu hình dhcp snooping chúng ta phải cấu hình theo per-vlan.

To enable DHCP snooping on VLANs, perform this task:

Step 1

Router(config)# ip dhcp snooping vlan {{vlan_ID [vlan_ID]} | {vlan_range}

Enables DHCP snooping on a VLAN or VLAN range.

Step 2

Router(config)# do show ip dhcp snooping
Verifies the configuration.


Configuring the DHCP Trust State on Layer 2 LAN Interfaces

To configure DHCP trust state on a Layer 2 LAN interface, perform this task:

Step 1
Router(config)# interface {type1 slot/port | port-channel number}

Selects the interface to configure.

Step 2
Router(config-if)# ip dhcp snooping trust
Configures the interface as trusted.


Các bài viết có liên quan tới kỹ thuật này bạn có thể tham khảo thêm 

Hiểu Về Cuộc Tấn Công Man-In-The-Middle - Phần 5: STP mangling

Hiểu Về Cuộc Tấn Công Man-In-The-Middle - Phần 4: Port stealing
 
Hiểu Về Cuộc Tấn Công Man-In-The-Middle - Phần 3: Session Hijacking

Hiểu Về Cuộc Tấn Công Man-In-The-Middle - ARP Cache Poisoning (Phần 2)

Hiểu Về Cuộc Tấn Công Man-In-The-Middle - Phần 1: DNS Spoofing 
Share on Google Plus

About Vo Uu

Tác Giả là người chuyên nghiên cứu về các kỹ thuật hacking, security, marketing, là người có góc nhìn lạ và đi sâu vấn đề cũng như là một con người thẳng thắn góp ý. Nếu sử dụng bài trên blog mong các bạn dẫn lại nguồn tác giả!!! Tác Giả rất mong có sự đóng góp hội ý từ cộng đồng để cho an toàn an ninh mạng việt nam ngày càng được an toàn hơn!!

0 nhận xét:

Post a Comment