Giới thiệu khái niệm
Hiện nay có khá nhiều phương thức truyền tải thông tin qua mạng phổ biến nhất là mạng WLAN Vậy WLAN là gì ?
WLAN, hay mạng không dây, là một loại mạng máy tính mà không cần sử dụng cáp để kết nối các thành phần, thay vào đó, thông tin được truyền qua không khí.
Mạng cục bộ không dây (WLAN) đã cách mạng hóa việc sử dụng Internet toàn cầu, với sự hiện diện của công nghệ không dây tại nhiều địa điểm như sân bay, công viên, khách sạn, quán cà phê, trường học và văn phòng Tuy nhiên, điều này cũng tạo ra nguy cơ cho người dùng, khi kẻ tấn công có thể dễ dàng thực hiện các cuộc tấn công vào những thiết bị khách hàng không cảnh giác.
Tấn công Denial-of-Service (DoS) là gì?
Cuộc tấn công từ chối dịch vụ (DoS) là một hình thức tấn công nhằm làm gián đoạn hoặc ngắt kết nối người dùng khỏi dịch vụ, khiến họ không thể truy cập Các cuộc tấn công DoS thường diễn ra bằng cách gửi một lượng lớn yêu cầu tới mục tiêu, làm cho hệ thống không thể xử lý và dẫn đến việc từ chối dịch vụ cho người dùng hợp pháp Đặc điểm của một cuộc tấn công DoS là việc sử dụng một máy tính duy nhất để thực hiện cuộc tấn công này.
Các nạn nhân của cuộc tấn công từ chối dịch vụ (DoS) thường bao gồm email, website, tài khoản trực tuyến, cũng như mạng, máy tính và các chương trình Mặc dù DoS không dễ dàng để đánh cắp thông tin quan trọng, nhưng chúng có thể gây ra tổn thất lớn về thời gian và chi phí cho nạn nhân để khắc phục hậu quả Việc thực hiện một cuộc tấn công DoS tương đối đơn giản và có thể đến từ bất kỳ ai, do đó việc xác định thủ phạm rất khó khăn.
Có hai phương pháp tấn công DoS: Flooding attack hoặc crashing attack.
Tấn công flooding xảy ra khi hệ thống bị quá tải bởi lưu lượng truy cập, dẫn đến tình trạng chậm chạp và cuối cùng là ngừng hoạt động Hai dạng tấn công DoS wifi phổ biến là Authentication DoS và Deauthentication DoS, cả hai đều gây ra ảnh hưởng nghiêm trọng đến hiệu suất của hệ thống.
Tấn công crashing khai thác các lỗ hổng trong hệ thống hoặc dịch vụ, nhằm gây ra sự cố nghiêm trọng Qua việc tận dụng các lỗi trong mục tiêu, những cuộc tấn công này có thể làm cho hệ thống bị sập hoặc không thể truy cập, dẫn đến việc tạm ngừng sử dụng dịch vụ.
Cách DoS attack hoạt động?
Cuộc tấn công DoS chủ yếu nhằm mục đích làm quá tải hệ thống của máy chủ mục tiêu, gây ra tình trạng từ chối dịch vụ cho các yêu cầu khác.
Cuộc tấn công DoS và các lỗi kết nối mạng không độc hại như sự cố kỹ thuật hay hệ thống bảo trì có nhiều điểm tương đồng Tuy nhiên, một số triệu chứng sau đây có thể cho thấy đang xảy ra một cuộc tấn công DoS.
Hiệu suất mạng chậm một cách bất thường như tải tệp hoặc website chậm
Không thể tải bất kỳ website nào
Mất kết nối đột ngột giữa các thiết bị trên cùng một mạng
Cách hiệu quả nhất để phát hiện và xác định cuộc tấn công DoS là thông qua việc giám sát và phân tích lưu lượng mạng Việc này có thể được thực hiện thông qua tường lửa hoặc hệ thống phát hiện xâm nhập, giúp nhận diện các dấu hiệu bất thường trong lưu lượng.
Cuộc tấn công từ chối dịch vụ (DoS) làm gián đoạn truy cập của người dùng vào dịch vụ bằng cách làm quá tải tài nguyên vật lý hoặc kết nối mạng Tấn công này gây ngập dịch vụ với lượng lưu lượng hoặc dữ liệu lớn, khiến cho người dùng không thể sử dụng dịch vụ cho đến khi các luồng độc hại được xử lý.
Một phương pháp để làm quá tải tài nguyên vật lý của dịch vụ là gửi một lượng lớn yêu cầu trong thời gian ngắn, khiến cho không gian ổ cứng, bộ nhớ hoặc thời gian CPU bị chiếm dụng hoàn toàn Trong những trường hợp nghiêm trọng, điều này có thể dẫn đến hư hại các thành phần vật lý của những tài nguyên này.
Cuộc tấn công DoS có thể làm gián đoạn dịch vụ bằng cách gửi dữ liệu không hợp lệ hoặc một lượng lớn yêu cầu kết nối, khiến cho các yêu cầu từ người dùng hợp pháp không được xử lý Ngoài ra, một số cuộc tấn công DoS còn khai thác lỗ hổng trong chương trình hoặc website, dẫn đến việc sử dụng tài nguyên hoặc kết nối mạng không đúng cách, từ đó gây ra tình trạng từ chối dịch vụ.
Một số phần mềm độc hại có khả năng khởi chạy các cuộc tấn công từ chối dịch vụ (DoS) bằng cách lây nhiễm vào máy tính hoặc thiết bị Những mối đe dọa này lợi dụng tài nguyên của các máy bị nhiễm để thực hiện cuộc tấn công Khi nhiều máy bị nhiễm cùng tấn công vào một mục tiêu, cuộc tấn công này được gọi là tấn công từ chối dịch vụ phân tán (DDoS).
Trong các cuộc tấn công DoS hoặc DDoS, khối lượng dữ liệu có thể đạt tốc độ lên tới vài gigabit mỗi giây Botnet thường được sử dụng để thực hiện các cuộc tấn công DDoS, vì nhiều dịch vụ không đủ tài nguyên để chống lại những cuộc tấn công từ hàng ngàn, thậm chí hàng trăm ngàn thiết bị bị nhiễm.
Cuộc tấn công DoS khác với virus hay malware vì nó không cần một chương trình để hoạt động Thay vào đó, nó khai thác lỗ hổng vốn có trong cách thức giao tiếp của các mạng máy tính.
Lab và kịch bản demo
- Trước tiên khởi động máy ảo Kali (sử dụng card wifi usb rời) hoặc boot kali trên USB Và kiểm tra card mạng đã kết nối
- Mở cửa số Terminal và chuyển đổi card mạng thành chế độ Monitor bằng lệnh airmon-ng start
- Sau đó kiểm tra các wifi đang tồn tại xung quanh bằng lệnh: airodump-ng
- Chọn mục tiêu muốn tấn công sau đó dùng lệnh mdk3 a -a < địa chỉ mac> mdk3 wlan0 a -a 00:1C:E0:38:4B:3F (ở đây chọn tấn công dos vào Access ChungCuMini)
Kết quả là dù cho ping đến mạng được nhưng vẫn không lên mạng được
Tấn công Deauthentication là một phương thức tấn công từ chối dịch vụ nhằm vào kết nối giữa người dùng và điểm truy cập Wi-Fi Tấn công này thực hiện việc ngắt kết nối các thiết bị không dây gần đó khỏi điểm truy cập bằng cách gửi khung xác nhận từ các địa chỉ MAC giả mạo.
Tấn công không qua chứng thực khai thác lỗi nhận dạng trong mạng 802.11, cho phép các nút mới gia nhập mạng mà không cần xác thực Khi một nút gia nhập, nó phải trải qua quá trình xác nhận và các bước liên quan để truy cập vào mạng Tuy nhiên, bất kỳ nút nào cũng có thể sử dụng khóa chia sẻ tại vị trí của nó để biết mật khẩu mạng Trong quá trình chứng thực, chỉ một số bản tin dữ liệu và điều khiển được chấp nhận, trong đó có bản tin cho phép yêu cầu không qua chứng thực từ các nút khác Bản tin này hữu ích khi một nút muốn chuyển giữa các mạng không dây khác nhau Khi nhận được bản tin "không qua chứng thực", nút sẽ tự động rời khỏi mạng và trở về trạng thái ban đầu.
Trong tấn công không qua chứng thực, tin tặc giả mạo một nút để xác định địa chỉ của AP trong mạng, điều này dễ dàng do địa chỉ AP không được bảo vệ bởi mã hóa Khi đã có địa chỉ AP, tin tặc phát tán các bản tin không chứng thực, khiến các nút trong mạng ngừng trao đổi thông tin Các nút sẽ cố gắng kết nối lại với AP, nhưng việc phát tán liên tục các bản tin không chứng thực làm cho mạng bị ngừng hoạt động Mdk3 sẽ nhảy giữa các kênh 1, 6 và 11, ngắt kết nối mọi station, khiến cho chúng gần như không thể kết nối lại do bị ngắt kết nối ngay sau khi yêu cầu địa chỉ IP từ DHCP và ARP Điều này dẫn đến một chu kỳ deauthentication khác Để bảo vệ mạng của bạn, hãy sử dụng 802.11w nếu có hoặc triển khai các hệ thống phát hiện xâm nhập (IDS) để phát hiện các cuộc tấn công như vậy.
Để kiểm tra xem mạng của bạn có dễ bị tấn công từ chối dịch vụ hay không, hãy thực hiện một cuộc tấn công đơn giản nhằm xem cách điểm truy cập (AP) xử lý khi có quá nhiều client kết nối Thông thường, khi đạt đến giới hạn nhất định (128 hoặc 256 client), AP sẽ từ chối thêm kết nối mới Các AP giá rẻ có thể gặp phải tình trạng treo máy và cần được reset, vì vậy bạn cần lưu ý điều này Giả sử AP của bạn có địa chỉ MAC 00: 00: 11: 22: 33: 44, bước kiểm tra đầu tiên là kích hoạt chế độ Auth DoS.
-a chọn AP mục tiêu của bạn
-m mdk3 chỉ sử dụng những địa chỉ hợp lệ để việc lọc trở nên khó hơn Sau một vài giây, mdk3 hiển thị một trong những thông báo sau:
AP 00:00:11:22:33:44 is responding: AP của bạn đang phản hồi các client giả mạo của mdk3 Điều này chỉ cho bạn biết rằng thử nghiệm của bạn đang hoạt động.
The AP 00:00:11:22:33:44 has become unresponsive and appears to be frozen after serving 157 clients It's crucial to check whether your access point (AP) is still operational, as a non-functioning AP is vulnerable to Auth DoS attacks If this issue occurs, a reset is necessary We recommend contacting your service provider for repairs.
AP 00:00:11:22:33:44is reporting ERRORs and denies connections after
AP của bạn đã ngừng chấp nhận các client mới do mạng đã đạt giới hạn 251 client, mặc dù không gặp sự cố nào Mạng hiện tại hoạt động kém, và bạn không thể kết nối với AP cho đến khi các client giả mạo từ mdk3 hết thời gian sử dụng Sau đó, AP sẽ chấp nhận lại các client mới, điều này hoàn toàn phù hợp với tiêu chuẩn IEEE 802.11 về điều kiện DoS.
Bạn có thể kiểm tra khả năng phân biệt giữa client giả và client thật của AP, điều này dẫn đến tình trạng Từ chối Dịch vụ liên tục cho các client mới trong quá trình tấn công Ngay khi một client hợp pháp bị ngắt kết nối, nó sẽ không thể kết nối lại với mạng Mdk3 sẽ cung cấp thống kê mỗi giây để theo dõi tình hình.
Created: Số lượng client giả mạo mdk3 hiện đang xử lý và cố gắng kết nối và giữ kết nối với mạng
Authenticated: Số chu kỳ xác thực thành công
Associated: Số chu kỳ Assocation thành công
Denied: Số chu kỳ không thành công (vì AP đã full)
Got kicked: Số lượng client giả mạo đã từng được kết nối nhưng AP đã gửi các gói Deauthentication đến
Captured: Số lượng gói dữ liệu VALID đã được chụp
Sent: Số gói dữ liệu đã được gửi đến mạng với danh tính client giả mạo
Responses: Số phản hồi mà client giả nhận được sau khi gửi dữ liệu
Relayed: Số lượng gói dữ liệu mà AP đã chấp nhận từ các client giả mạo
(nếu chúng ta chặn gói được chuyển tiếp, AP chuyển tiếp các gói đến để chúng ta biết khi nào nó chấp nhận một gói)
Trong bài demo này, cuộc tấn công thông minh bắt đầu khoảng 10 phút sau cuộc tấn công tiêu chuẩn Điều đáng chú ý là AP VẪN tiếp tục từ chối mọi kết nối của client mới Do đó, cần thận trọng khi kiểm tra mạng mà không có đủ thời gian ngừng hoạt động.
Nếu bạn sở hữu một mạng quan trọng với bảo mật tốt và chỉ sử dụng vài giờ mỗi tháng, có thể kẻ tấn công sẽ không kịp xác thực client Để tăng cường bảo mật cho mạng, bạn quyết định tắt tính năng phát SSID Nhờ đó, kẻ tấn công sẽ không biết SSID và không thể kết nối hay thực hiện các cuộc tấn công vào mạng của bạn.
Từ chối dịch vụ xác thực, bạn có thể chọn một SSID ngắn gọn nhưng thêm một ký tự đặc biệt để tăng tính bảo mật, ví dụ như "aa1*".
Hãy kiểm tra xem SSID này có thể được giải mã bởi một cuộc tấn công Wordlist hay không:
Rất tiếc, AP của bạn chỉ ghi đè SSID bằng các ký tự ZEROS mà không phải là độ dài thực của nó, dẫn đến việc mdk3 nhận biết rằng SSID của bạn chỉ có độ dài 4 ký tự.
Kẻ tấn công chỉ thử các từ có độ dài 4 ký tự trong tệp đã chỉ định May mắn thay, mã aa1* không có trong danh sách và mdk3 cũng không tìm thấy SSID ẩn Do đó, kẻ tấn công có thể bắt đầu sử dụng phương pháp Bruteforce vì SSID rất ngắn Giả sử kẻ tấn công đã thử một số bộ ký tự và giờ muốn kiểm tra tất cả các ký tự khả thi.
MDK3 đã thành công trong việc tìm ra SSID sau khoảng 2500 lần thử Quy tắc đặt tên SSID là bắt đầu bằng chữ thường, tiếp theo là số, sau đó là chữ hoa và kết thúc bằng các ký hiệu Để đảm bảo tính bảo mật, nên sử dụng một SSID dài hơn.
Một chút tìm hiểu về aireplay-ng
Giống như mdk3 sau khi thực hiện 2 lệnh airmon-ng và airodump-ng như hướng dẫn phía trên ta bắt đầu sử dụng aireplay-ng
- Mở một cửa sổ Terminal khác, gõ lệnh sau (chú ý vẫn phải quyền root): aireplay-ng deauth [10] -a [mã_bssid] [interface]
Sau khi thực hiện lệnh, quay lại cửa sổ trước đó và chờ xuất hiện thông báo “WPA handshake” Trong thư mục bạn đã chỉ định (ví dụ: Desktop), sẽ có 4 file, trong đó có file có đuôi cap Khi nhận được WPA handshake, file cap này chứa mật khẩu đã được mã hóa mà bạn đã lấy cắp từ người dùng đang kết nối với wifi Bước tiếp theo là giải mã file để lấy mật khẩu, và để làm điều này, chúng ta sẽ sử dụng aircrack-ng với hai phương pháp là brute force và dictionary force.
Dùng từ điển: aircrack-ng -w [đường_dẫn_tới_file_từ_điển] -b [mã_bssid]
Ví dụ aircrack-ng -w /root/Downloads/tudien.txt -b 90:8D:78:75:6D:4C
Hoặc gieo tuần tự với lệnh crunch: crunch [độ_dài_min] [độ_dài_max]
[liệt_kê_kí_tự] [tuỳ_chọn_thêm] | aircrack-ng -b [mã_bssid] -w-
Nếu tìm được sẽ có hiện kết quả như thế này: “KEY FOUND!”
Sau khi hoàn tất quá trình phá mật khẩu, dù thành công hay không, cần khôi phục trạng thái ban đầu của card wifi Để thực hiện điều này, hãy tắt phiên làm việc của wlp6s0mon bằng lệnh "airmon-ng stop wlp6s0mon" và khởi động lại chương trình quản lý kết nối mạng bằng lệnh "service network-manager restart".
- Tấn công deauthentication sử dụng aireplay-ng aireplay-ng -0 0 -a [MAC address] [interface]
So sánh MDK3 và Aireplay-ng
Aireplay-ng hoạt động hiệu quả hơn với quá trình khử xác thực diễn ra nhanh chóng, cho phép người dùng tùy chọn thời gian khử xác thực (0 cho vô hạn) Tuy nhiên, việc gửi gói khử xác thực không thường xuyên thành công, và Aireplay có thể không hoạt động với một số AP và Client do chỉ gửi gói khử xác thực Ngược lại, MDK3, sử dụng thư viện OSDEP từ dự án aircrack-ng, thực hiện tương tự nhưng đáng tin cậy hơn, vì nó gửi cả gói khử xác thực và gói loại bỏ liên kết, giúp nâng cao hiệu quả trong công việc.
Và MDK3 cũng cung cấp các tùy chọn phù hợp người dùng nâng cao.
MDK3 nổi bật hơn so với aireplay-ng, mặc dù quá trình khử xác thực của nó thực hiện chậm hơn Tuy nhiên, MDK3 đã được thử nghiệm trên nhiều mạng khác nhau, giúp việc kết nối và trao đổi thông tin trở nên dễ dàng hơn.