DHCP - Dynamic Host Configuration Protocol
Last updated
Last updated
Khái niệm
Là giao thức cấu hình host động. Giao thức này cung cấp cho máy tính địa chỉ ip, subnet mask, default gateway. (thường được DHCP server tích hợp sẵn trên router cấp phát)
DHCP giao tiếp bằng UDP và sử dụng port 67 và 68. DHCP server sử dụng port 67 để nghe thông tin từ client và sử dụng port 68 để reply thông tin
Ưu điểm khi sử dụng DHCP
Tập trung quản trị thông tin cấu hình host
Cấu hình động các máy
Cấu hình IP cho các máy một cách liền mạch.
Sự linh hoạt
Đơn giản hóa vai trò quản trị của việc cấu hình địa chỉ IP của client.
Sự linh hoạt
DHCP làm việc theo mô hình client server và thành phần chính của DHCP là:
DHCP client: Là thiết bị dùng để kết nối vào mạng
DHCP server: Là thiết bị dùng để cấp phát địa chỉ cho client
Thành phần chính của DHCP bao gồm 4 bản tin:
DISCOVERY
OFFER
REQUEST
ACK
Để phân tích gói tin của giao thức DHCP ta có thể sử dụng lệnh tcpdump trên linux
Quá trình cấp phát địa chỉ IP trong giao thức DHCP bao gồm các bước sau:
Bước 1: Client khởi động với "địa chỉ IP rỗng" cho phép liên lạc với máy chủ DHCP bằng giao thức UDP. Nó chuẩn bị một thông điệp (DHCP Discover) chứa địa chỉ MAC (ví dụ địa chỉ của card Ethernet) và tên máy tính. Thông điệp này có thể chứa địa chỉ IP trước đây đã thuê. Client phát tán liên tục thông điệp này lên mạng cho đến khi nhận được phản hồi từ máy chủ.
Bước 2: Mọi máy chủ DHCP có thể nhận thông điệp và chuẩn bị địa chỉ IP cho Client. Nếu máy chủ có cấu hình hợp lệ cho Client, nó chuẩn bị thông điệp đề nghị (DHCP Offer) chứa địa chỉ MAC của khách, địa chỉ IP đề nghị, subnet mask, địa chỉ IP của máy chủ và thời gian cho thuê. Địa chỉ đề nghị được đánh dấu là "reserve" (để dành). Máy chủ DHCP phát tán thông điệp đề nghị này lên mạng.
Bước 3: Khi client nhận thông điệp đề nghị và chấp nhận một trong các địa chỉ IP, Client phát tán thông điệp này để khẳng định nó đã chấp nhận địa chỉ IP và từ máy chủ DHCP nào.
Bước 4: Cuối cùng, máy chủ DHCP khẳng định toàn bộ sự việc với Client. Để ý rằng lúc đầu Client phát tán yêu cầu về địa chỉ IP lên mạng, nghĩa là mọi máy chủ DHCP đều có thể nhận thông điệp này. Do đó, có thể có nhiều hơn một máy chủ DHCP tìm cách cho thuê địa chỉ IP bằng cách gửi thông điệp đề nghị. Client chỉ chấp nhận một thông điệp đề nghị, sau đó phát tán thông điệp khẳng định lên mạng. Vì thông điệp này được phát tán, tất cả máy chủ DHCP có thể nhận được nó. Thông điệp chứa địa chỉ IP của máy chủ DHCP vừa cho thuê, vì thế các máy chủ DHCP khác rút lại thông điệp chào hàng của mình và hoàn trả địa chỉ IP vào vùng địa chỉ, để dành cho khách hàng khác.
Kiểu tấn công cố gắng làm quá tải server bằng cách gửi nhiều request hơn mức server có thể xử lý. Mục tiêu là chiếm dụng tài nguyên máy tính và sử dụng chúng để hệ thống mục tiêu không thể thực hiện chức năng dự định. Có thể thực hiện tràn nhập bằng nhiều phương pháp sử dụng ICPM packets, UDP packets và TCP SYN flood.
Giảm thiểu:
Giới hạn tốc độ lưu lượng ICMP đến server sử dụng iptables rules tren Linux hoặc PF rules trên các hệ thống FreeBSD hoặc OpenBSD
Giảm thiểu việc nhận quá nhiều lưu lượng UDP bằng cách định cấu hình các tham số sysctl (Linux) hoặc dhcpd’s options như “option domain-name-servers” (BSD)
Với TCP SYN attacks, cấu hình “sysctl net/ipv4/tcp_syncookies” for Linux
Kiểu tấn công trên DHCP server. Nó thường được dùng để từ chối dich vụ cho các DHCP clients hợp pháp. Attacker giả mạo phản hồi cho yêu cầu của client, tuyên bố rằng địa chỉ IP của chính nó đã được phân bổ trong nhóm địa chỉ IP chưa được DHCP server phân bổ. Điều này dẫn đến việc client hợp lệ bị từ chối dịch vụ và không có tuyến đường hợp lệ để truy cập mạng. Sau đó, attacker gửi các gói tin có địa chỉ nguồn giả mạo để chúng xuất hiện như thể đến từ client hợp lệ và do đó gây ra tình trạng từ chối dịch vụ cho những máy khách đã nhận được địa chỉ IP
Giảm thiểu: Xác thực các các client yêu cầu địa chỉ IP để chỉ những người dùng đã xác thực mới có thể gửi yêu cầu thuê mới hoặc gia hạn các hợp đồng hiện có
Là những DHCP server giả mạo được cài đặt trên mạng mà không có sự cho phép của network administrator, cho phép attacker gán địa chỉ IP cho các server trên mạng không được phép sử dụng chúng và giúp thực hiện các hành vi độc hại khác như DNS poisoning hoặc MiTM
Giảm thiểu:
Giám sát mạng để tìm DHCP server trái phép
Cấu hình router với ACLs và chỉ cho phép lưu lượng đáng tin cậy đi qua chúng
Sử dụng phần mềm như dhcpwatch hoặc DNShaper để ngăn administrator có quyền truy cập trực tiếp vào router của bạn
Bảo vệ thiết bị của bạn và đảm bảo rằng chúng không thể truy cập được từ internet. Đảm bảo rằng không có người không được phép nào có thể truy cập chúng từ internet hoặc mạng nội bộ.
Sử dụng địa chỉ IP tĩnh cho tất cả các thiết bị quan trọng của bạn thay vì sử dụng IP động (DHCP). Địa chỉ IP tĩnh là vĩnh viễn và không thay đổi thường xuyên, do đó sẽ không dễ bị tin tặc đoán ra
Sử dụng tường lửa như tường lửa Cisco ASA cho phép người quản trị cấu hình các quy tắc truy cập trên giao diện dựa trên địa chỉ IP nguồn/đích hoặc cổng TCP/UDP
Bật tính năng bảo vệ chống DHCP snooping trên các thiết bị mạng của bạn.