1. Giao thức điều khiển thông báo Internet (ICMP) là gì?
Giao thức ICMP là một giao thức lớp mạng được các thiết bị mạng sử dụng để phát hiện các sự cố truyền thông mạng. ICMP chủ yếu được sử dụng để xác định dữ liệu có đến đích như dự kiến một cách kịp thời hay không. Thông thường, giao thức ICMP được sử dụng trên các thiết bị mạng, chẳng hạn như bộ định tuyến. ICMP rất quan trọng để báo cáo lỗi và kiểm tra, nhưng nó cũng có thể được sử dụng trong các cuộc tấn công từ chối dịch vụ phân tán (DDoS).
2. ICMP được sử dụng để làm gì?
Mục đích chính của ICMP là để báo cáo lỗi. Khi hai thiết bị kết nối qua Internet, ICMP sẽ tạo ra lỗi để chia sẻ với thiết bị gửi trong trường hợp dữ liệu không đến được đích như dự kiến. Ví dụ, nếu một gói dữ liệu quá lớn đối với một bộ định tuyến, bộ định tuyến sẽ bỏ gói đó và gửi một thông điệp ICMP trở lại nguồn ban đầu để lấy dữ liệu.
Công dụng thứ hai của giao thức ICMP là thực hiện phát hiện mạng; các tiện ích đầu cuối thường được sử dụng traceroute và ping đều hoạt động bằng ICMP. Tiện ích traceroute được sử dụng để hiển thị đường dẫn định tuyến giữa hai thiết bị Internet. Đường dẫn định tuyến là đường dẫn vật lý thực tế của các bộ định tuyến được kết nối mà một yêu cầu phải đi qua trước khi nó đến đích. Quá trình giữa một bộ định tuyến này và một bộ định tuyến khác được gọi là “hop” và một traceroute cũng báo cáo thời gian cần thiết cho mỗi “hop” trên đường đi. Điều này giúp ích cho việc xác định các nguồn gây trễ mạng.
Ping là một phiên bản đơn giản hóa của traceroute. Một ping sẽ kiểm tra tốc độ kết nối giữa hai thiết bị và báo cáo chính xác thời gian một gói dữ liệu đến đích và quay trở lại thiết bị của người gửi. Mặc dù ping không cung cấp dữ liệu về định tuyến hoặc số “hop” nhưng nó vẫn là một số liệu rất hữu ích để đánh giá độ trễ giữa hai thiết bị. Các thông báo ICMP echo-request và echo-reply thường được sử dụng cho mục đích thực hiện ping.
Thật không may các cuộc tấn công mạng có thể khai thác quá trình này, gây gián đoạn như tấn công ICMP flood và ping.
3. ICMP hoạt động như thế nào?
Không giống như giao thức Internet (IP), ICMP không được liên kết với giao thức lớp truyền tải như TCP hoặc UDP. Điều này làm cho ICMP trở thành một giao thức không kết nối: một thiết bị không cần mở kết nối với thiết bị khác trước khi gửi tin nhắn ICMP. Lưu lượng IP thông thường được gửi bằng TCP, có nghĩa là bất kì hai thiết bị nào trao đổi dữ liệu trước tiên sẽ thực hiện TCP để đảm bảo cả hai thiết bị đều sẵn sàng nhận dữ liệu. ICMP không mở kết nối theo cách này. Giao thức ICMP cũng không cho phép nhắm tới một cổng cụ thể trên thiết bị.
4. ICMP được sử dụng như thế nào trong các cuộc tấn công DDoS?
ICMP không phải là giao thức lớp mạng duy nhất được sử dụng trong các cuộc tấn công DDoS lớp 3. Ví dụ, tấn công sử dụng các gói GRE trước đó.
Thông thường, các cuộc tấn công DDoS ở lớp mạng nhắm vào thiết bị và cơ sở hạ tầng mạng, nhắm vào thuộc tính web. Cloudflare Macgic Transit là một cách bảo vệ chống lại các cuộc tấn công DDoS ở lớp mạng.
Hải Yến – PKT VnPro
Giao thức ICMP là một giao thức lớp mạng được các thiết bị mạng sử dụng để phát hiện các sự cố truyền thông mạng. ICMP chủ yếu được sử dụng để xác định dữ liệu có đến đích như dự kiến một cách kịp thời hay không. Thông thường, giao thức ICMP được sử dụng trên các thiết bị mạng, chẳng hạn như bộ định tuyến. ICMP rất quan trọng để báo cáo lỗi và kiểm tra, nhưng nó cũng có thể được sử dụng trong các cuộc tấn công từ chối dịch vụ phân tán (DDoS).
2. ICMP được sử dụng để làm gì?
Mục đích chính của ICMP là để báo cáo lỗi. Khi hai thiết bị kết nối qua Internet, ICMP sẽ tạo ra lỗi để chia sẻ với thiết bị gửi trong trường hợp dữ liệu không đến được đích như dự kiến. Ví dụ, nếu một gói dữ liệu quá lớn đối với một bộ định tuyến, bộ định tuyến sẽ bỏ gói đó và gửi một thông điệp ICMP trở lại nguồn ban đầu để lấy dữ liệu.
Công dụng thứ hai của giao thức ICMP là thực hiện phát hiện mạng; các tiện ích đầu cuối thường được sử dụng traceroute và ping đều hoạt động bằng ICMP. Tiện ích traceroute được sử dụng để hiển thị đường dẫn định tuyến giữa hai thiết bị Internet. Đường dẫn định tuyến là đường dẫn vật lý thực tế của các bộ định tuyến được kết nối mà một yêu cầu phải đi qua trước khi nó đến đích. Quá trình giữa một bộ định tuyến này và một bộ định tuyến khác được gọi là “hop” và một traceroute cũng báo cáo thời gian cần thiết cho mỗi “hop” trên đường đi. Điều này giúp ích cho việc xác định các nguồn gây trễ mạng.
Ping là một phiên bản đơn giản hóa của traceroute. Một ping sẽ kiểm tra tốc độ kết nối giữa hai thiết bị và báo cáo chính xác thời gian một gói dữ liệu đến đích và quay trở lại thiết bị của người gửi. Mặc dù ping không cung cấp dữ liệu về định tuyến hoặc số “hop” nhưng nó vẫn là một số liệu rất hữu ích để đánh giá độ trễ giữa hai thiết bị. Các thông báo ICMP echo-request và echo-reply thường được sử dụng cho mục đích thực hiện ping.
Thật không may các cuộc tấn công mạng có thể khai thác quá trình này, gây gián đoạn như tấn công ICMP flood và ping.
3. ICMP hoạt động như thế nào?
Không giống như giao thức Internet (IP), ICMP không được liên kết với giao thức lớp truyền tải như TCP hoặc UDP. Điều này làm cho ICMP trở thành một giao thức không kết nối: một thiết bị không cần mở kết nối với thiết bị khác trước khi gửi tin nhắn ICMP. Lưu lượng IP thông thường được gửi bằng TCP, có nghĩa là bất kì hai thiết bị nào trao đổi dữ liệu trước tiên sẽ thực hiện TCP để đảm bảo cả hai thiết bị đều sẵn sàng nhận dữ liệu. ICMP không mở kết nối theo cách này. Giao thức ICMP cũng không cho phép nhắm tới một cổng cụ thể trên thiết bị.
4. ICMP được sử dụng như thế nào trong các cuộc tấn công DDoS?
- Tấn công ICMP flood
- Tấn công Ping
- Tấn công Smurf
ICMP không phải là giao thức lớp mạng duy nhất được sử dụng trong các cuộc tấn công DDoS lớp 3. Ví dụ, tấn công sử dụng các gói GRE trước đó.
Thông thường, các cuộc tấn công DDoS ở lớp mạng nhắm vào thiết bị và cơ sở hạ tầng mạng, nhắm vào thuộc tính web. Cloudflare Macgic Transit là một cách bảo vệ chống lại các cuộc tấn công DDoS ở lớp mạng.
Hải Yến – PKT VnPro