CHƯƠNG II I: PHÂN TÍCH LỖ HỔNG BẢO MẬT VÀ CÁC CÔNG CỤ TẤN CÔNG MẠNG WLAN
3.1.2. Phân tích lỗ hổng 196 trong bảo mật WPA
“Lỗ hổng 196” là một lỗ hổng trong giao thức bảo mật WPA2. WPA2, được biết đến với tư cách giao thức bảo mật Wi-Fi vững chắc nhất, được sử dụng rộng rãi bởi các doanh nghiệp để việc bảo mật các mạng Wi-Fi của họ. Tuy nhiên gần đây các
hổng 196” trong giao thức bảo mật WPA2 có thể phơi bày các mạng Wi-Fi được bảo mật theo chuẩn WPA2 trước những kẻ xâm nhập ác ý bên trong.
Lỗ hổng 196 là gì?
“Lỗ hổng 196” là một lỗ hổng trong giao thức bảo mật WPA2, lỗ hổng này làm phơi bày các mạng Wi-Fi được bảo mật WPA2 trước những kẻ tấn công bên trong.
Vấn đề cơ bản đối với lỗ hổng này là group temporal key (GTK), tạm được dịch là khóa dùng chung tạm thời, được chia sẻ giữa tất cả các máy khách được cấp quyền trong một mạng WPA2. AP sẽ phát lưu lượng dữ liệu định địa chỉ nhóm được mã hóa bằng GTK còn các máy khách sẽ sử dụng GTK để giải mã lưu lượng đó. Mặc dù vậy không gì có thể ngăn chặn một máy khách được cấp quyền trong việc tiêm nhiễm các gói được mã hóa GTK giả mạo! Bằng cách khai thác lỗ hổng này, kẻ tấn công bên trong (người dùng được cấp quyền) có thể đánh hơi và giải mã dữ liệu của các người dùng khác cũng như có thể quét lỗ hổng trên các thiết bị Wi-Fi của họ, cài đặt malware hay thỏa hiệp các thiết bị đó.
Nói một cách ngắn gọn, lỗ hổng này làm mất đi sự riêng tư đối với dữ liệu liên người dùng giữa những người dùng được cấp quyền trong mạng không dây sử dụng bảo mật WPA2.
Phân tích lỗ hổng 196
Để khai thác lỗ hổng 196, người dùng ác ý cần biết khóa chia sẻ chung group temporal key (GTK) được chia sẻ bởi các người dùng được cấp quyền trong mạng không dây đó. Vì vậy chỉ có người dùng bên trong của mạng WPA2 với quyền truy cập GTK này mới có thể khai thác lỗ hổng.
Việc tìm kiếm cho thấy rằng một kẻ ác tâm bên trong có thể khai thác lỗ hổng 196 này theo ba cách:
o Cho tấn công ARP poisoning và man-in-the-middle;
o Tiêm mã độc vào các thiết bị Wi-Fi được cấp quyền khác;
o Khởi chạy tấn công DoS mà không cần sử dụng các frame hủy kết nối.
Trong một mạng WPA2, kẻ ác tâm có thể quảng bá các gói dữ liệu giả mạo được mã hóa bằng khóa chia sẻ chung GTK trực tiếp đến các máy khách Wi-Fi được cấp quyền khá trong mạng. Một ví dụ để chứng tỏ khai thác này có thể được khởi chạy bằng cách sử dụng GTK là tấn công ARP poisoning (man-in-the-middle).
Trong khai thác ARP poisoning, kẻ tấn công bên trong có thể tích hợp một thông báo ARP Request vào bên trong gói mã hóa GTK. ARP Request có địa chỉ IP của gateway thực, nhưng thực sự là địa chỉ MAC của máy tính của kẻ tấn công. Tất cả máy khách nhận được thông báo này sẽ cập nhật bảng ARP của chúng – bản đồ hóa địa chỉ MAC của kẻ tấn công với địa chỉ IP của gateway.
Tất cả các máy khách Wi-Fi bị đầu độc sẽ gửi tất cả lưu lượng của chúng, lưu lượng được mã hóa bằng khóa riêng tương ứng (PTK) của chúng, nhưng với địa chỉ MAC của kẻ tấn công là đích đến. AP sẽ giải mã lưu lượng và chuyển tiếp nó đến kẻ tấn công, lúc này kẻ tấn công có thể giải mã nó bằng cách sử dụng PTK của mình. Do tất cả lưu lượng sẽ tập trung đến kẻ tấn công (từ AP) được mã hóa với PTK của kẻ tấn công, nên kẻ tấn công có thể giải mã lưu lượng này (gồm có các thông tin đăng nhập, email và dữ liệu nhạy cảm khác).
Kẻ tấn công sau đó có thể chuyển tiếp lưu lượng đến một gateway thực của mạng để các máy khách Wi-Fi nạn nhân không phát hiện thấy hành vi bất thường nào và tiếp tục quá trình truyền thông của chúng.
Các hãng WLAN AP có thể chống lỗ hổng 196 bằng cách ngăn chặn sử dụng khóa chia sẻ chung (GTK). Trong hầu hết các kiến trúc WLAN có bộ điều khiển ngày nay, chúng ta đều có thể tắt lưu lượng quảng bá từ các AP trên không khí và thay vào đó là sử dụng bộ điều khiển WLAN controller làm ARP proxy. Nói theo cách khác, trong cấu hình này, GTK không được sử dụng.
Tuy nhiên theo chuẩn giao thức WPA2 hiện hành, một GTK cần phải được gán bởi AP cho mỗi máy khách trong suốt quá trình bắt tay. Hãng AP có thể thực thi bản vá cho phần mềm AP của họ để gán một GTK được tạo ngẫu nhiên, duy nhất cho mỗi máy khách thay vì chia sẻ cùng một GTK giữa tất cả các máy khách với nhau. Sử dụng các GTK duy nhất sẽ trung tính được lỗ hổng 196 và cho phép khả năng cộng tác (tương thích ngược) với tất cả các thiết bị khách không dây chuẩn.
Trong khi ARP proxy vắng mặt, một AP có thể gửi lưu lượng quảng bá unicast qua không khí đến các máy khách cá nhân, quá trình này sẽ giáng chức thông lượng dữ liệu WLAN phụ thuộc vào số lượng lưu lượng quảng bá.
Phương pháp phản đối sử dụng một GTK chia sẻ chung này có thể được chấp thuận trong chuẩn IEEE 802.11 và chỉ PTK có thể được sử dụng.