6. CRACKING WIRELESS NET WORK - Bước 3: Tìm WLAN mục tiêu
Bây giờ, khi adapter đã ở chế độ monitor mode, chúng ta đã có thể bắt đầu quét để tìm ra mạng wireless. Trên thực tế, nếu ai đó đang cố gắng tấn công một mạng wireless, đều cần có một số thông tin cần thiết. Các chuyên gia làm thực nghiệm xâm nhập mạng để kiểm tra miêu tả việc tấn công này là tấn công “zero knownledge”.
Chúng ta đang tìm kiếm các AP sử dụng chế độ mã hóa WEP và đang có ít nhất 01 máy khách (client) đang kết nối tới nó. Máy khách đi kèm này là quan trọng bởi vì bạn cần có được địa chỉ MAC của client này để sử dụng đòn tấn công với ARP Replay để tạo ra dòng dữ liệu.Nếu AP không có client nào đang kết nối, hãy di chuyển đến một AP khác.
Chúng ta cần có 03 thông tin để bắt đủ dòng dữ liệu, tạo điều kiện cho aircrack hoạt động:
- Địa chỉ MAC / BSSID của AP mục tiêu.
- Địa chỉ MAC / BSSID của máy trạm kết nối với AP.
- Kênh (channel) đang được sử dụng bới AP mục tiêu và máy trạm.
Có nhiều cách để quét mạng wireless LANs, bao gồm cả chương trình rất nỗi tiếng là Kismet được tích hợp sẵn trong BT3. Tuy nhiên, chương trình này hoàn toàn độc lập với bộ Aircrack, Kismet có những yêu cầu riêng của nó đối với adapters. Việc sử dụng Kismet khá đơn gián và có cả phiên bản của Kismet dành cho Windows. Tuy nhiên, để mọi việc đơn giản, chúng tôi sẽ tiếp tục với
airodump-ng, một bộ phận của bộ Aircrack, và cũng rất tốt để làm được những điều chúng ta cần.
Khởi động airodump-ng bằng cách gõ lệnh:
airodump-ng --ivs --write capturefile ath0 Lựa chọn
--ivs nhằm mục đích để chỉ ghi lại những gói dữ liệu IVs bắt được (một phần của dòng dữ liệu lưu thông cần thiết cho việc crack WEP) dưới dạng các files với phần đầu của tên files được quy định bằng
--write "capturefile". Chú ý rằng những dấu gạch liên tiếp (
--) không phải là do gõ nhầm, mà là một dạng dài hơn để dễ đọc hơn đối với các dòng lệnh của airodump. Quote:
IV là gì?
WEP sử dụng một vector khởi tạo (Initialization Vector - IV) cùng với khóa được chia sẽ (“shared-secret”) được người dùng nhập vào để tạo ra một mã khóa RC4 nhằm mục đích mã hóa các gói dữ liệu. Vì những lý do về cấu trúc kỹ thuật mà WEP có thể bị crack thông qua việc sử dụng các IV.
Dòng lệnh này làm airodump bắt đầu quét tất cả các kên có tần số 2.4 GHz với card Atheros (ath0). Hình 4 cho thấy một dạng kết quả thường thấy.
Hình 4: airodump-ng quét các kênh
Hình 4 cho thấy có 02 APs (ở nhóm đầu) và hai máy trạm (Stations – STAs) (ở nhóm sau). Một STA (BSSID 00:1A:70:7F:79:F2) kết nối với AP với
linksys ESSID (BSSID 00:06:25:B2
4:19). Bạn có thể kiểm tra xem STA nào đang kết nối với AP nào bằng cách so sánh địa chỉ MAC của AP (BSSID) ở hai nhóm. Hình 4 cũng cho thấy rằng AP
linksys AP đang dùng Channel 5.
Và như vậy 03 thông tin mà chúng ta cần có đã được thu thập:
- Địa chỉ MAC / BSSID của AP mục tiêu = 00:06:25:B24:19.
- Địa chỉ MAC / BSSID của máy trạm kết nối với AP = 00:1A:70:7F:79:F2.
- Kênh (channel) đang được sử dụng bới AP mục tiêu và máy trạm = 5.
Ghi những thông số này ra giấy hoặc có thể copy rồi dán nó vào một trình xử lý văn bản nào đó để sử dụng về sau. Bạn có thể dùng chương trình Kedit có sẵn trong BT3 để lưu lại các thông số này dưới dạng file .txt. Bằng cách nhấn tổ hợp phím Ctrl+C, chúng ta có thể cùng lúc thoát khỏi airodump và copy nội dung các thông số trên.
Mách nước: Cột
PWR trong nhóm các AP cho thấy mức độ mạnh của tín hiệu (signal level). Nếu bạn muốn chọn một AP là mục tiêu trong số nhiều AP xuất hiện trong bảng, hãy chọn AP nào có chỉ số
PWR cao vì điều này đồng nghĩa với mức tín hiệu cao và tín hiệu mạnh = tốc độ bắt gói dữ liệu cao.
Đối với một máy client đang hoạt động, bạn cũng có thể thấy một cột
RXQ, dùng để đo tỷ lệ phần trăm của gói dữ liệu nhận được thành công trong vòng 10 giây gần nhất. Cũng như trên, một chỉ sao cao hơn sẽ tốt hơn.
Chú ý: các files bắt được bởi airodump-ng được lưu vào thư mục gốc (
/root directory). Chúng ta lựa chọn
--ivs để tránh tình trạng thiếu dung lượng trên RAM khi chạy BT2 bởi vì chúng ta không cần gì khác ngoài các file IVs.
Thường thì bạn không gặp phải trường hợp thiếu dung lượng RAM. Nhưng trong trường hợp gặp phải điều này, chỉ cần dùng lệnh
rm để loại bỏ các files bắt được. Chú ý rằng khi dùng lệnh
–ivs, các files sẽ được lưu lại với phần mở rộng là
.ivs.
7. CRACKING WIRELESS NETWORK - Bước 4 – Tạo ra dòng dữ liệu để bắt
Khi chúng ta đã xác định được AP mục tiêu sử dụng chế độ bảo mật WEP, chúng ta cần bắt đủ các Ivs bằng airodump để cho aircrack-ng sử dụng. Cột
#Data trong airodump-ng cho biết có bao nhiêu IVs đã bắt được và cột
#/s cho biết tốc độ bắt dữ liệu trên mỗi giây.
Nếu nhìn ngược lại hình 4 ở trên, bạn có thể thấy rằng trong thời gian 09 phút kể từ lúc airodump-ng bắt đầu chạy, chúng tôi chỉ bắt được có
246 Ivs vàvới một tốc độ bắt rất thấp, thậm chí nhiều lúc còn không bắt được dữ liệu. Thử tưởng tượng bạn cần phải bắt được ít nhất 20.000 Ivs để có thể bẻ được một khóa WEP mã hóa 64bit, chắc chắn bạn sẽ cần phải làm gì đó để đẩy cao tốc độ bắt gói dữ liệu lên nếu không muốn ngồi đợi cả ngày!
Quote:
Bạn cần có bao nhiêu IVs?
Số lượng IVs bạn cần phụ thuộc vào độ dài của khóa WEP, kỹ thuật crack mà bạn sử dụng và… sự may mắn mà trời ban cho (chính xác hơn là luật quy luật xác suất).
Theo trang FAQ của aircrack, một khóa WEP 64 thường cần ít nhất 300,000 IVs, và khóa WEP 128 cần nhiều hơn 1,500,000(!).
May mắn thay, với kỹ thuật PTW có trong aircrack-ng phiên bản 0.9 đã giúp giảm số lượng IVs cần có đi đáng kể, khoảng 20.000 đối với khóa WEP 64 và 40.000 đối với khóa WEP 128, nhưng nó chỉ hoạt động với gói dữ liệu ARP bắt được ở dạng đầy đủ (không phải là dạng –ivs).
Đây chính là lúc
aireplay-ng xuất hiện. Chương trình này được sử dụng để tạo ra dòng dữ liệu lưu thông (traffic) để bắt thông qua việc sử dụng nhiều kỹ thuật ánh xạ khung (frame injection) khác nhau. Chúng ta sẽ sử dụng kiểu tấn công lặp ARP Request Replay để tạo gói dữ liệu ánh xạ (packet injection). Nếu không có packet injection có thể sẽ mất đến
nhiều ngày để thu thập đủ số lượng IVs cần thiết!
Kiểu tấn công lặp chỉ đơn giản là việc bắt các gói dữ liệu tạo ra bởi STA mục tiêu, sau đó phát ra lại để đánh lừa máy trạm rằng nó bắt được gói dữ liệu. Quá trình này lặp đi lặp lại liên tục làm cho lượng dữ liệu lưu thông tăng lên nhiều lần. Bởi vì dòng dữ liệu tạo ra từ máy của bạn được ngụy trang như dòng dữ liệu của một máy client thực sự nên nó không ảnh hưởng đến hoạt động bình thường của mạng và nhờ đó công việc tạo IVs của nó được vận hành êm thấm.
Để sử dụng aireplay-ng, trước hết cần phải khởi động lại airodump-ng, nhưng với channel và địa chỉ MAC của AP mục tiêu. Gõ dòng lệnh sau đây cùng với số channel và địa chỉ MAC của AP mà bạn đã thu thập được ở bước chạy airodump-ng lần trước:
airodump-ng --ivs --channel [AP channel]
--bssid [AP BSSID] --write capturefile ath0
Chú ý: Một số dòng lệnh được cắt thành hai dòng để cho vừa bề ngang của trang.
Đảm bảo rằng bạn nhập nó chỉ với một dòng duy nhất.
Các files dữ liệu bắt được cũng sẽ được lưu vào thư mục gốc
/root và có dạng
capturefile_nn.ivsnn là hai con số, ví dụ như
capturefile_01.ivs. Trong trường hợp của chúng tôi, dòng lệnh cụ thể như sau: với
airodump-ng --ivs --channel 5 --bssid 00:06:25:B2
4:19 --write capturefile ath0 Hình 5 dưới đây thể hiện kết quả của lệnh trên. Chú ý rằng tại thời điểm này, chúng ta chỉ thấy Channel 5, AP
linksys và máy client đang kết nối với nó.
Hình 5: airodump-ng đang bắt gói dữ liệu từ AP mục tiêu
Nếu nhìn vào các cột
#Data và
#/s thì chúng ta có thể thấy được tốc độ bắt dữ liệu rất thấp như đã nói ở trên. Vậy thì hãy làm cho mọi thứ tăng tốc với aireplay-ng. Mở một cửa sổ shell khác và gõ vào các dòng lệnh cùng với thông tin về mạng WLAN mục tiêu như địa chỉ MAC của AP [AP BSSID] và MAC của client có được từ airodump.
aireplay-ng --arpreplay -b [AP BSSID] -h [client MAC from airodump] ath0 Lệnh này sẽ khởi động ARP lặp lại đối với AP mục tiêu bằng cách giả mạo địa chỉ MAC của STA kết nối đến AP này. Trong trường hợp của chúng tôi, dòng lệnh cụ thể như sau:
aireplay-ng --arpreplay -b 00:06:25:B2
4:19 -h 00:1A:70:7F:79:F2 ath0 Hình 6 cho thấy aireplay-ng lúc nó vừa mới khởi động và chưa bắt đầu quá trình phát sóng lặp lại.
Hình 6: aireplay-ng lúc vừa khởi động, còn chưa phát sóng lặp lại
Chỉ dấu ở đây là
"sent 0 packets" ở dòng cuối. Chú ý rằng nếu drivers hoặc card WLAN của bạn không hỗ trợ packet injection, aireplay sẽ cho ra những dòng tương tự như dưới đây:
Hình 7: aireplay trong trường hợp không có packet injection
Bạn có thể kiểm tra xem drivers của mình có hỗ trợ injection hay không bằng cách đọc qua trang tài liệu của aircrack-ng ở đây.
8. CRACKING WIRELESS NETWORK - Bước 5 – Hành sự… crack
Một khi các gói dữ liệu được bắt thành công và ARP replay khởi động, aireplay-ng sẽ có dạng như ở Hình 8. Lúc này, dấu chỉ sẽ là
"sent N packets", cho thấy số lượng gói dữ liệu ARP phát ra bởi STA giả mạo.
Hình 8: aireplay với ARP replay đang chạy
Lúc này, bạn có thể quay lại với cửa sổ airodump và sẽ thấy rằng cột
#/s đã tăng lên đáng kể, có khi lên tới số hàng trăm, như có thể thấy trong Hình 9.
Hình 9: airodump với ARP replay đang chạy
Bạn cần để cho các chương trình này tiếp tục chạy cho đến khi con số trong cột
#Data đạt đết ít nhất 300,000 IVs đối với khóa WEP 64 hoặc khoảng 1,500,000 đối với khóa WEP 128. Vấn đề là trong một cuộc tấn công dạng "zero knowledge", bạn không hề biết gì về độ dài của mã khóa.
Trong trường hợp của chúng tôi, vì biết trước mã khóa thuộc loại 128 bit, chúng tôi đợi đến lúc có hơn con số IVs dự kiến là 1.500.000. Để đạt được con số này, chúng tôi mất khoảng hơn 01 giờ đồng hồ, với AP mục tiêu và toàn bộ các laptop liên quan nằm trong cùng một phòng. Trong điều kiện bình thường, với một AP nằm cách máy của bạn một khoảng khá xa, bạn có thể mất nhiều thời gian hơn. Còn giờ, chúng ta sẽ mở ra cửa sổ shell thứ 3 để bắt đầu với aircrack-ng:
aircrack-ng -b [AP BSSID] [capture file(s) name] Chú ý rằng trong dòng lệnh có chứa dấu sao
để aircrack-ng sử dụng toàn bộ các file IVs bắt được đã được lưu trên thư mục gốc. Ví dụ trong trường hợp của chúng tôi dòng lệnh sẽ như sau:
aircrack-ng -b 00:06:25:B2
4:19 capturefile*.ivs Aircrack sẽ bắt đầu lục lọi trong số những gói dữ liệu đã bắt được để tìm ra khóa WEP. Điều này cũng mất thời gian nhưng không nhiều lắm nếu so với việc bắt và lưu dữ liệu. Trong một số trường hợp aircrack-ng sẽ kết thúc mà không tìm thấy khóa, nhưng đưa ra cho bạn một số đề xuất mà bạn có thể làm theo. Một khi thành công, màn hình aircrack sẽ trông tương tự như trong Hình 10.
Hình 10: aircrack-ng tìm thấy khóa
Khóa WEP 128 bit tìm thấy ở dưới dạng hệ thập lục phân (hexadecimal) và bạn có thể dùng nó để nhập vào phần thiết lập mạng Wireless sau khi loại bỏ các dấu hai chấm (
.
Và như vậy là bạn đã hoàn tất việc crack khóa mạng WEP! Quá tuyệt đúng không?
Theo: Tran My Phuc