Tìm hiểu và sử dụng phần mềm ( phần cứng ) Hack pass bảo mật wireless
Trang 1TRƯỜNG CAO ĐẲNG KINH TẾ KỸ THUẬT
THIỆN TRỤ
-oOo -BÁO CÁO ĐỒ ÁN MÔN HỌC
Ngành : Quản trị mạng Hệ : Chính Quy
Niên khóa :2008-2011
Tên đề tài :
Tìm hiểu và sử dụng phần mềm ( phần cứng ) Hack pass bảo mật wireless
……….………
Sinh viên thực hiện : Phạm Thanh Long Người hướng dẫn: ………
Năm 2011.
Trang 2Môn học:Công Nghệ Mạng Không Dây
1)Tìm hiểu và sử dụng phần mềm ( phần cứng ) Hack pass bảo mật wireless
I.Giới thiệu về công nghệ bảo mật WEP:
WEP là từ viết tắt của Wired Equipvalent Privacy, nghĩa là bảo mật tương đương với mạng có dây (Wired LAN) Khái niệm này là một phần trong chuẩn IEEE 802.11 Theo Định nghĩa, WEP được thiết kế để đảm bảo tính bảo mật cho mạng không dây đạt mức độ như là mạng nối cáp truyền thống Đối với mạng LAN (định nghĩa theo chuẩn IEEE 802.3), bảo mật cho dữ liệu trên đường truyền đối với các tấn công bên ngoài được đảm bảo qua biện pháp giới hạn vật lý, tức là hacker không thể truy xuất trực tiếp đến hệ thống đường truyền cáp Do đó chuẩn 802.3 không đặt ra vấn đề mã hóa dữ liệu để chống lại các truy cập trái phép Đối với chuẩn 802.11, vấn đề mã hóa
dữ liệu được đặt lên ưu tiên hàng đầu do đặc tính của mạng không dây là không thể giới hạn về mặt vật lý truy cập đến đường truyền, bất cứ ai trong vùng phủ sóng ñều
có thể truy cập dữ liệu nếu không được bảo vệ
Nói một cách tóm gọn, WEP cung cấp bảo mật cho dữ liệu trên mạng không dây qua phương thức mã hóa sử dụng thuật toán đối xứng RC4, được phát minh bởi Ron Rivest, nhân viên của hãng nổi tiếng RSA Security Inc Thuật toán RC4 cho phép chiều dài của khóa thay đổi và có thể lên đến 256 bytes Chuẩn 802.11 đòi hỏi bắt buộc các thiết bị WEP phải hỗ trợ chiều dài khóa tối thiểu là 40 bit, đồng thời đảm bảo tùy chọn hỗ trợ cho các khóa dài hơn Hiện nay, đa số các thiết bị không dây hỗ trợ WEP với ba chiều dài khóa, 40 bit, 64 bit, và 128 bit Với phương thức mã hóa RC4, WEP cung cấp tính bảo mật và toàn vẹn của thông tin trên mạng không dây, đồng thời có thể được xem như là một phương thức kiểm soát truy cập Một máy nối mạng không dây không có khóa WEP chính xác sẽ không thể truy cập ñến Access Point (AP) và cũng không thể giải mã cũng như thay đổi dữ liệu trên đường truyền Tuy nhiên, gần đây đã có những phát hiện của giới phân tích an ninh cho thấy nếu bắt được một số lượng lớn nhất định của dữ liệu đã mã hóa sử dụng WEP và sử dụng công cụ thích hợp, có thể dò tìm được chính xác khóa WEP trong thời gian ngắn Điểm yếu này là do lỗ hổng trong cách thức WEP sử dụng phương pháp mã hóa RC4 II.Các bước hack WEP:
Tiến trình crack WEP đòi hỏi phải có ít nhất 01 máy tính đang kết nối với AP hoặc router Bạn sẽ không làm được gì nếu không có máy (nạn nhân) nào đang nối mạng
Bộ công cụ crack WEP tốt nhất được phát triển bởi nhóm Aircrack-ng, đây cũng chính là bộ công cụ mà ta sẽ dùng Aircrack-ng là bộ chương trình được viết với mục đích công phá khóa mạng WEP và WPA-PSK Trong khi bộ chương trình này gồm tổng công 07 chương trình độc lập và một vài công cụ nhỏ khác, ta chỉ sử dụng 04 trong số chúng, đó là:
Trang 31 airmon-ng – dùng để chuyển card wireless sang dạng monitor (chế độ nghe
ngóng và ghi nhận tín hiệu)
2 airodump-ng – dùng để phát hiện ra WLAN và bắt các gói dữ liệu (packet
capture)
3 aireplay-ng – tạo ra dòng tín hiệu.
4 aircrack-ng – tìm ra mã khóa WEP.
Mặc dù có các phiên bản của bộ Aircrack-ng chạy trên hệ điều hành Windows, và thậm chí là cả Zaurus Oses, ta vẫn sử dụng Linux do đặc điểm dễ tương thích với các card wireless của nó Đừng lo lắng khi bạn không phải là một chuyên gia về Linux, bởi vì ta sẽ sử dụng BackTrack 3 (beta version) live Do đây là hệ điều hành chạy trực tiếp trên đĩa
CD hoặc USB (chúng tôi dùng USB) nên bạn không cần phải có động tác cài đặt phiền phức và BackTrack 3 (BT3)cũng không hề để lại dấu vết gì trên ổ đĩa cứng cài Windows của bạn (trừ khi bạn cố ý) BT3 là bản Linux được điều chế để chuyên dùng cho crack WEP, trên đó đã có bộ Aircrack-ng cài đặt sẵn cho bạn sử dụng
Bạn có thể tìm thấy nhiều thông tin hơn về BT3 cùng với link download tại đây
Lựa chọn quan trọng nhất mà bạn cần làm là loại card wireless bạn sẽ sử dụng Do bạn sẽ cần dùng đến một bộ các công cụ để crack, bạn cần lựa chọn ra được một danh sách các loại card wireless có khả năng tương thích với tất cả các chương trình trong gói Kết quả cho thấy bạn có khả năng lựa chọn rộng rãi đối với card wireless để thực hiện mục tiêu crack mạng WEP
Một điều may mắn là trang web Aircrack-ng có rất nhiều phần hỗ trợ việc lựa chọn card wireless thích hợp Khuyến cáo của họ là dùng card Atheros chipset Vì không chịu nghe theo lời khuyên này của họ nên chúng tôi đã gặp phải một số hậu quả trong quá trình crack tuy nhiên hình ảnh sử dụng để minh họa trong toàn bộ serie bài viết này là của máy dùng card Atheros
Khi đã lựa chọn được phần cứng, bạn cần lựa chọn cho mình một số chương trình phần mềm Như đã nói ở trên, chúng tôi sẽ sử dụng BackTrack 3 (bản beta) chạy trên USB Nếu máy tính của bạn không có khả năng boot từ đĩa flash USB thì có thể dùng BT3 chạy trực tiếp trên đĩa CD Hệ điều hành BT3 có tất cả những gì cần thiết để thực hiện các công việc về bảo mật và đặc biệt là nó không hề ghi lại bất cứ thứ gì trên ổ cứng của bạn Sau khi download file ISO, bạn có hai lựa chọn
- Cách thứ nhất, giải nén (bằng Winrar) những gì có bên trong file ISO ra ổ đĩa USB của bạn sau đó kích hoạt chạy \boot\bootinst.bat để làm cho đĩa USB (dung lượng tối thiểu 1GB) có khả năng boot được Nếu dùng BT3 trên USB thì mọi việc sẽ nhanh chóng và êm ái hơn so với dùng trên CD Đương nhiên, trước khi muốn boot được từ USB thì bạn cần thiết lập thứ tự boot ưu tiên từ BIOS cho USB của bạn
- -Cách thứ hai, chỉ thực hiện khi bạn không có khả năng boot từ USB, là dùng chương trình ghi đĩa để burn file ISO vào đĩa CD và sử dụng nó để boot chiếc máy tính của bạn
Trang 4Công việc tạo USB/CD khởi động bạn có thể làm với Windows vì như thế sẽ quen thuộc hơn nhiều cho những ai chưa tiếp xúc với Linux
Sau khi boot lại máy tính của bạn để vào BT3, bạn cần kiểm tra rằng WLAN adapter đã được nhận ra và khởi động Click vào biểu tượng chiếc máy tính có màn hình màu đen (bên cạnh nút start) để mở Shell – Konsole (tương tự cmd trong Windows) Gõ vào dòng
lệnh iwconfig để kiểm tra WLAN card của bạn Kết quả của dòng lệnh có dạng dưới đây:
Hình 1: màn hình kết quả lệnh iwconfig
Như đã nói ở trên, card WLAN phải có khả năng hoạt động ở chế độ
“monitor mode” Điều này nghĩa là card WLAN có thể bắt được tất cả những gói dữ liệu mà nó phát hiện ra mà không chỉ giới hạn ở những gói
dữ liệu được gửi đến địa chỉ MAC của nó
Chúng ta sử dụng lệnh airmon-ng để đưa card WLAN vào chế độ
monitor Chỉ cần gõ:
airmon-ng
để kiểm tra trạng thái của adapter Sau đó:
airmon-ng stop ath0
để dừng chế độ interface thông thường của card Tiếp tục với lệnh:
airmon-ng start wifi0
Chú ý rằng tôi sử dụng wifi0, chứ không phải ath0 ở lệnh ở trên Điều
này có tác dụng để cho Atheros madwifi driver hoạt động
Trang 5Cửa sổ kết quả xuất hiện ở từng dòng lệnh tương tự như ở hình sau:
Hình 2: kết quả lệnh airmon-ng
Bạn có thể kiểm tra rằng chế độ monitor mode đang được kích hoạt bằng cách gõ lệnh iwconfig Hình 3 dưới đây cho thấy kết quả khẳng định rằng adapter đang chế độ monitor và sẵn sàng cho bạn thực hiện bước
kế tiếp
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”
Trang 6Chú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
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
Trang 7Hì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:D4: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:B2:D4: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
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
Trang 8Thườ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.
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!
Đâ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 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:D4: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ó.
Trang 9Hì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:D4: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
Trang 10Chỉ 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:
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
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