Sử dụng Laptop Asus có card wifi để tiến hành thực nghiệm. Các bƣớc tiến hành thực nghiệm nhƣ sau:
2. Tiến hành thu thập thông tin về các mạng khơng dây
3. Thu thập các gói tin từ mạng mục tiêu
a. Tạo xác thực giả (facke authentication) với mục tiêu
4. Tìm khóa bí mật dựa vào các gói tin đã thu thập đƣợc
Tổng thời gian tiến hành thử nghiệm bẻ khóa mạng WEP mất khoảng 3 phút.
3.3. Bẻ khóa mạng khơng dây sử dụng giao thức bảo mật WPA
3.3.1. Tấn công Chopchop trên mạng sử dụng giao thức bảo mật WPA
Cuộc tấn công này đƣợc các tác giả [8]thực hiện để giải mã gói tin ARP tìm ra chuỗi khóa MIC và tổng kiểm tra ICV. Trong WPA, một gói tin đƣợc mã hóa giả mạo đƣợc làm từ một gói tin đƣợc mã hóa đã đƣợc chấp nhận
của TSC không phù hợp. Tuy nhiên, đặc trƣng QoS (Quality of Service) của chuẩn IEEE802.11e cho phép 8 kênh khác nhau cho các luồng dữ liệu khác nhau, và mỗi kênh có bộ đếm TSC độc lập với nhau.
Hình 3.3: WPA hỗ trợ tính năng IEEE802.11e QoS
Giả sử rằng một kẻ tấn cơng đã bắt đƣợc một gói tin đã đƣợc mã hóa với IV = 15 trên kênh 0. Sau đó, khi đó kẻ tấn cơng không thể thực hiện các cuộc tấn cơng chopchop trên kênh 0 vì bộ đếm TSC của kênh 0 đã đƣợc cập nhật đến 15. Tuy nhiên, kẻ tấn công có thể thực thi cuộc tấn cơng Chopchop vào các kênh khác nếu một bộ đếm TSC của kênh là ít hơn 15. Thơng thƣờng, lƣợng dữ liệu truyền trên kênh 0 sẽ nhiều hơn trên các kênh cịn lại, vì vậy giá trị của bộ đếm TSC trên các kênh khác sẽ thấp hơn giá trị bộ đếm trên kênh 0.
Cuộc tấn công Chopchop khơng khơi phục đƣợc khóa bí mật nhƣng có thể khơi phục đƣợc khóa MIC và tổng kiểm tra ICV, từ đó có thể đƣa các gói tin giả mạo vào trong mạng. Các gói tin đặc biệt, với kích thƣớc nhỏ nhƣ gói tin ARP là mục tiêu đƣợc nhắm đến. Kẻ tấn công theo dõi giao thông mạng cho đến khi bắt đƣợc gói tin ARP đã đƣợc mã hóa, gói tin này dễ dàng bị phát hiện ra bởi kích thƣớc đặc trƣng (68 byte với những gói tin xuất phát từ Client) hơn nữa gói tin ARP khơng bị phân mảnh.
Hình 3.4 Tấn cơng Chopchop khơi phục ICV
Nhiều thơng tin trong gói tin ARP là đã biết ngoại trừ thông tin về: 1. Địa chỉ IP nguồn và IP đích nằm trong byte cuối cùng
2. 8 byte Michael MIC 3. 4 byte checksum ICV
Kẻ tấn công sẽ khôi phục từng byte của gói tin bằng cách cắt byte cuối cùng của gói tin. Khi đó gói tin sẽ có ICV sai, kẻ tấn cơng dự đốn byte cuối cùng (có 256 khả năng từ 0 đến 255), để gói tin vẫn có ICV đúng kẻ tấn cơng thực hiện XOR gói tin với giá trị dự đốn, khi đó nếu giá trị dự đốn là đúng thì gói tin sẽ có ICV đúng và đƣợc chấp nhận. Tuy nhiên, giá trị MIC sai, AP sẽ gửi báo cáo lỗi MIC, nếu có 2 thơng báo lỗi MIC thì kết nối sẽ bị đóng và kẻ tấn cơng phải chờ 60 giây để cơ chế báo cáo lỗi MIC hết hiệu lực để tiếp tục khôi phục byte tiếp theo.
Nhƣ vậy để khôi phục 12 byte gồm 4 byte ICV và 8 byte MIC kẻ tấn công cần khoảng 12 phút. Để xác định những byte còn lại mà ta không biết (IP sender và IP receiver), kẻ tấn cơng đốn các giá trị và kiểm tra ngƣợc lại bằng các giá trị ICV đã đƣợc giải mã.
Khi biết đƣợc MIC và các giá trị bản rõ khác, kẻ tấn cơng có thể giải mã ngƣợc để có đƣợc chuỗi khóa sinh MIC. Do thuật tốn băm Michael khơng có tính chất 1 chiều và có thể giải ngƣợc. Nhƣ vậy, kẻ tấn cơng đã có chuỗi khóa để sinh MIC và thực hiện việc chỉnh sửa các gói tin hoặc gửi các gói tin vào trong mạng.
Với kiểu tấn công này, kẻ tấn cơng khơng thực sự vƣợt qua q trình xác thực cũng nhƣ không khôi phục đƣợc chuỗi khóa bí mật, tuy nhiên, kẻ tấn cơng có thể thực hiện truyền các gói tin trong mạng, từ đó có thể thực hiện một số hành vi phá hoại trên mạng.
3.4. Bẻ khóa mạng khơng dây sử dụng giao thức bảo mật WPA2
Giao thức bảo mật WPA2 đƣa thêm vào các cơ chế để khắc phục nhƣợc điểm của WEP và WPA. Hiện nay, WPA2 chƣa bộc lộ điểm yếu về thuật toán. Tuy nhiên phƣơng pháp bẻ khóa sử dụng từ điển có thể đƣợc sử dụng để bẻ khóa WPA2-PSK thơng qua q trình bắt tay 4 bƣớc (4-way handshake).
Hình 3.5 Bắt tay 4 bước
Trong quá trình bắt tay 4 bƣớc, cả AP và Client đều biết PSK, AP gửi số ngẫu nhiên ANounce cho Client, Client cũng tự tạo ra 1 số ngẫu nhiên SNounce. PTK (Pairwise Transient Key) đƣợc tổng hợp từ PSK, ANounce và SNounce. PTK đƣợc sử dụng để mã hóa kết nối của riêng từng Client với AP. PTK và SNonce sẽ đƣợc gửi tới AP trong quá trình bắt tay 4 bƣớc để AP xác thực Client bằng cách tính giá trị PTK từ PSK, ANounce và SNounce, sau đó so sánh với PTK nhận đƣợc từ Client.
Hình 3.6 Tạo PTK
Nhƣ vậy, các thông tin ANounce, SNounce, chuỗi PTK đƣợc truyền đi trong quá trình bắt tay 4 bƣớc dƣới dạng bản rõ, khơng đƣợc mã hóa. Kẻ tấn cơng có thể bắt các thơng tin này trong q trình bắt tay 4 bƣớc, từ đó sử dụng từ điển để dị chuỗi khóa bí mật. Cơ chế dị khóa sử dụng từ điển đƣợc mơ tả trong Hình 3.7. Sau khi có đƣợc các thơng tin cần thiết để tạo ra PTK, địa chỉ SSID cũng là một thông tin dễ dàng nắm bắt đƣợc, các chuỗi khóa K trong từ điển lần lƣợt đƣợc sử dụng kết hợp với SSID để tạo ra PSK. PSK kết hợp với ANounce và SNounce để tạo ra PTK, nếu chuỗi PTK này trùng với chuỗi PTK thu đƣợc thì chuỗi K chính là khóa bí mật, nếu khơng thì thử với chuỗi K tiếp theo cho đến khi tìm đƣợc khóa hoặc tồn bộ chuỗi K đã đƣợc thử hết.
Phƣơng pháp này cũng có thể đƣợc áp dụng để bẻ khóa WPA do cùng chung phƣơng pháp xác thực PSK. Thời gian bẻ khóa trung bình tùy thuộc vào kích thƣớc từ điển, điều kiện bẻ khóa thành cơng là trong từ điển phải chứa khóa bí mật.
Pass-Phrase SSID
PSK/PMK ANounce SNounce
Hình 3.7 Dị khóa sử dụng từ điển
Phần tiếp theo của luận văn sẽ trình bày về thực nghiệm bẻ khóa mạng khơng dây sử dụng giao thức bảo mật WPA/WPA2 bằng phƣơng pháp sử dụng từ điển.
3.5. Thực nghiệm bẻ khóa WPA/WPA2
Thực nghiệm bẻ khóa WPA/WPA2 cũng sử dụng cơng cụ AirCrack trên hệ điều hành Kali Linux. Cơng cụ AirCrack thực hiện bẻ khóa WPA/WPA2 bằng phƣơng pháp sử dụng từ điển.
Bộ chia mạng đƣợc cấu hình sử dụng giao thức mã hóa WPA2-PSK với mật khẩu là “crackwpa2” để làm mục tiêu cho thử nghiệm.
Use next PassPhrase in dictionary Use “known” SSID Calculate PSK/PMK Use “known” ANounce Use “known” SNounce Calculate hash (PTK)
Does the hash match the hash captured during the WPA 4-way handshake?
We have found the WPA pas- phrase!! yes
Hình 3.8 Cấu hình AP sử dụng giao thức WPA2-PSK
Các bƣớc tiến hành bẻ khóa WPA/WPA2 đƣợc thực hiện nhƣ sau:
1. Chuyển card wifi sang chế độ theo dõi (monitor mode), chế độ này cho chúng ta khả năng nhìn thấy tất cả các giao thơng mạng không dây trong phạm vi.
2. Xác định các thông tin về mạng mục tiêu nhƣ: BSSID, kênh (channel), kiểu mã hóa,….
3. Tập trung vào mục tiêu đã chọn từ thông tin BSSID và trên một kênh, qua đó có thể bắt các dữ liệu quan trọng.
4. Bắt mật khẩu đã đƣợc mã hóa (PSK). Chúng ta cần có sự xác thực của máy khách đối với các AP, nếu một máy khách đã đƣợc xác thực chúng ta sẽ hủy xác thực đó (đá ra khỏi hệ thống) khi đó hệ thống sẽ tự động xác thực lại, nhờ đó chúng ta có thể lấy đƣợc mật khẩu đã mã hóa trong q trình xác thực lại.
5. Dò mật khẩu sử dụng từ điển. Từ mật khẩu đã lấy đƣợc trong quá trình bắt tay 4 bƣớc, so sánh các bản mã của các khóa trong từ điển với khóa chia sẻ PSK đã lấy đƣợc.
Để bẻ khóa thành cơng thì “khóa” cần có trong từ điển. Nếu khóa có trong từ điển thì khả năng thành công là chắc chắn, vấn đề còn lại là thời gian tìm khóa phụ thuộc vào kích thƣớc từ điển. Từ điển càng lớn càng có khả năng thành cơng nhƣng ngƣợc lại thời gian tìm khóa sẽ rất lâu. Nhìn chung phƣơng pháp này dễ thành cơng với các chuỗi khóa dễ, số lƣợng ký tự thấp, sử dụng các từ thƣờng dùng,… Để tăng tính bảo mật nên đặt mật khẩu với số lƣợng ký tự nhiều, kết hợp giữa chữ cái và chữ số,… để tránh rơi vào từ điển của kẻ tấn công.
3.6. Kết luận chƣơng
Một số phƣơng pháp bẻ khóa mạng khơng dây đã đƣợc trình bày trong chƣơng này. Phƣơng pháp bẻ khóa dựa vào sự trùng lặp IV có thể đƣợc thực
bƣớc xác thực để tham gia vào mạng, tuy nhiên phƣơng pháp này có thời gian thực hiện khoảng từ 8 đến 10 giờ để có thể bắt hết tất cả các gói tin IV trong mạng. Phƣơng pháp bẻ khóa WEP bằng thống kê đạt hiệu quả cao, thời gian thực hiện ngắn chỉ khoảng vài phút, nhƣ vậy giao thức bảo mật WEP thật sự khơng an tồn và cần đƣợc thay thế. Phƣơng pháp bẻ khóa WPA sử dụng cuộc tấn cơng kiểu Chopchop với mục đích giải mã một số gói tin trong mạng và truyền các gói tin giả mạo vào trong mạng, khi cài đặt giao thức bảo mật WPA nếu có thể ngƣời dùng nên tránh sử dụng TKIP. WPA2 đƣợc đƣa ra để thay thế WPA, cho đến nay WPA2 vẫn tỏ chƣa bộc lộ điểm yếu nào về thuật tốn, tuy nhiên một phƣơng pháp tấn cơng truyền thống là sử dụng từ điển có thể đƣợc dùng để bẻ khóa WPA2-PSK, ngƣời dùng mạng không dây khi thiết lập bảo mật WPA2 nên đặt mật khẩu “khó” để tránh bị tấn cơng bằng phƣơng pháp này. Một lƣu ý nữa là tính năng WPS trên các thiết bị mạng nên đƣợc tắt đi để tránh bị tấn công kiểu brute force.
KẾT LUẬN
Luận văn trình bày về mạng khơng dây với những kiến thức tổng quan về mạng không dây, một số kiến thức về mật mã sử dụng trong bảo mật của mạng không dây. Luận văn tập trung vào tìm hiểu các giao thức bảo mật của mạng không dây là giao thức WEP, WPA/WPA2, cùng với đó là một số phƣơng pháp bẻ khóa mạng khơng dây sử dụng các giao thức bảo mật trên.
Cơ chế hoạt động của WEP đã đƣợc phân tích và chỉ ra những điểm yếu, lỗ hổng bảo mật của WEP, nguyên nhân dẫn đến việc WEP khơng cịn đủ tin cậy để sử dụng. Điểm yếu nhất của WEP là việc sử dụng véc-tơ khởi tạo IV và việc sử dụng mã dịng RC4 để mã hóa. Hơn nữa WEP cũng gặp vấn đề về bảo mật trong cơ chế xác thực q lỏng lẻo, kẻ tấn cơng có thể giải mã các gói tin và xác định chuỗi khóa thơng sự va chạm IV (IV trùng lặp). Chỉ cần có chuỗi khóa cùng với IV kẻ tấn cơng có thể giải mã gói tin trong mạng và vƣợt qua cơ chế xác thực để tham gia vào mạng. Phƣơng pháp tấn công rất hiệu quả trên WEP là phƣơng pháp bẻ khóa sử dụng thống kê, với tỷ lệ thành cơng cao, thời gian rất ngắn (tính bằng phút). Từ những yếu điểm không thể sửa chữa này, WEP đã bị thay thế bởi giao thức bảo mật WPA.
WPA đƣợc đƣa ra để thay thế cho WEP bằng cách nâng cấp cơ chế xác thực, cơ chế bảo vệ gói tin bằng cách sử dụng TKIP, tuy nhiên TKIP vẫn sử dụng thuật tốn mã hóa dịng RC4 và sử dụng thuật tốn Michael sinh MIC có thể giải ngƣợc. Kẻ tấn cơng có thể lợi dụng điều này để thực hiện giải mã gói tin và thực hiện truyền các gói tin trong mạng. Nhƣ vậy WPA cũng chƣa thực sự an tồn và nó đã đƣợc thay thế bởi giao thức bảo mật tốt hơn là WPA2.
WPA2 đƣa thêm vào các cơ chế bảo mật và sử dụng phƣơng pháp mã hóa khối AES. Cho đến nay WPA2 chƣa bộc lộ điểm yếu về mặt thuật tốn và coi là an tồn cho đến thời điểm hiện tại. Tuy nhiên, một phƣơng pháp bẻ khóa đơn giản là sử dụng từ điển có thể bẻ khóa WPA2-PSK, nhƣng phƣơng pháp này khơng đảm bảo chắc chắn khả năng thành công và không xác định thời gian hồn thành.
Luận văn cũng đã trình bày về một số thực nghiệm bẻ khóa mạng khơng dây sử dụng công cụ Aircrack-ng. Từ thực nghiệm thấy rằng WEP thực sự khơng an tồn, có thể bẻ khóa WEP trong vài phút. Với WPA/WPA2 cần đặt mật khẩu với độ dài đủ lớn và tránh các chuỗi mật khẩu đơn giản dễ bị tấn công bằng phƣơng pháp sử dụng từ điển.
TÀI LIỆU THAM KHẢO
Tiếng Việt
[1] Nguyễn Bình, Ngơ Đức Thiện, Cơ sở mật mã học, NXB Học viện cơng nghệ Bƣu chính Viễn thơng, 2013.
[2] Nguyễn Hoàng Cƣơng, Lý thuyết mật mã, NXB Vietbook, 2007.
Tiếng Anh
[3] Adam Stubblefield, John Ioannidis, Aviel D. Rubin (2002), Using the
Fluhrer, Mantin, and Shamir Attack to Break WEP, NSSD.
[4] Adam Stubblefield, John Ioannidis, and Aviel D. Rubin (2004), A key
recovery attack on the 802.11b wired equivalent privacy
protocol (WEP), ACM Transactions on Information and System
Security.
[5] Andreas Klein (2006), Attacks on the RC4 stream cipher, submitted to Designs, Codes and Cryptograph.
[6] A.Roos (1995), A class of weak keys in the RC4 stream cipher,
September.
[7] Erik Tews, Ralf-Philipp Weinmann, Andrei Pyshkin (2007), Breaking
104 bit wep in less than 60 seconds, Cryptology ePrint Archive,
Report, Springer Berlin Heidelberg.
[8] Erik Tews, Martin Beck (2009), Practical attacks against WEP and WPA, In Proceedings of the second ACM conference on Wireless network security (WiSec ´09), ACM, New York, NY, USA, 79-86.
[9] Itsik Mantin (2005), A practical attack on the fixed rc4 in the wep mode, In Bimal K. Roy, editor, ASIACRYPT, volume 3788 of
[10] Martin Hell, Thomas Johansson, Willi Meier (2007), “Grain - a stream cipher for constrained environments”, International Journal of Wireless and MobileComputing.
[11] Matthieu Caneill, Jean-Loup Gilis (2010), Attacks against the WIFI
protocols WEP and WPA.
[12] Rafik Chaabouni (2006), “Break wep faster with statistical analysis”, Technical report, EPFL, LASEC.
[13] RL Rivest (1992), The RC4 Encryption Algorithm, RSA Data
Security.
[14] Scott R. Fluhrer, Itsik Mantin, Adi Shamir (2001), Weaknesses in the Key Scheduling Algorithm of RC4, Springer Berlin
Heidelberg.
[15] Thomas W.Cusick, Cunsheng Ding, Ari Renvall (2003), Stream Ciphers and Number Theory, North-Holland Mathematical Library.
[16] Toshihiro Ohigashi, Masakatu Morii (2009), A Practical Message Falsification Attack on WPA.
[17] TU Darmstadt (2007), “Attacks on the WEP protocol”, Diploma thesis Fachgebiet Theoretische Informatik.