Tải bản đầy đủ (.doc) (13 trang)

Báo cáo tiểu luận môn an toàn mạng chủ đề cowpatty presentation

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (235.18 KB, 13 trang )

Đại Học Công Nghệ Thông Tin CowPatty
ĐẠI HỌC QUỐC GIA TP. HỒ CHÍ MINH
ĐẠI HỌC CÔNG NGHỆ THÔNG TIN
KHOA KỸ THUẬT MÁY TÍNH
PRESENTATION
CRACK WIFI VỚI
COWPATTY
GV: Phạm Xuân Khánh
SVTH: Lưu Quốc Minh Duy 07520054
Phạm Văn Hân 07520115
2010 - 2011
GV: Phạm Xuân Khánh 1
Đại Học Công Nghệ Thông Tin CowPatty
I. Giới Thiệu Wifi
Wi-Fi viết tắt từ Wireless Fidelity hay mạng 802.11 là hệ thống mạng
không dây sử dụng sóng vô tuyến, giống như điện thoại di động, truyền hình và
radio.
Các sóng vô tuyến sử dụng cho WiFi gần giống với các sóng vô tuyến sử
dụng cho thiết bị cầm tay, điện thoại di động và các thiết bị khác. Nó có thể
chuyển và nhận sóng vô tuyến, chuyển đổi các mã nhị phân 1 và 0 sang sóng vô
tuyến và ngược lại.
Tuy nhiên, sóng WiFi có một số khác biệt so với các sóng vô tuyến khác ở chỗ:
• Chúng truyền và phát tín hiệu ở tần số 2.5 GHz hoặc 5GHz. Tần số này cao
hơn so với các tần số sử dụng cho điện thoại di động, các thiết bị cầm tay
và truyền hình. Tần số cao hơn cho phép tín hiệu mang theo nhiều dữ liệu
hơn.
• Chúng dùng chuẩn 802.11:
o Chuẩn 802.11b là phiên bản đầu tiên trên thị trường. Đây là chuẩn
chậm nhất và rẻ tiền nhất, và nó trở nên ít phổ biến hơn so với các
chuẩn khác. 802.11b phát tín hiệu ở tần số 2.4 GHz, nó có thể xử lý
đến 11 megabit/giây, và nó sử dụng mã CCK (complimentary code


keying).
GV: Phạm Xuân Khánh 2
Đại Học Công Nghệ Thông Tin CowPatty
o Chuẩn 802.11g cũng phát ở tần số 2.4 GHz, nhưng nhanh hơn so với
chuẩn 802.11b, tốc độ xử lý đạt 54 megabit/giây. Chuẩn 802.11g
nhanh hơn vì nó sử dụng mã OFDM (orthogonal frequency-division
multiplexing), một công nghệ mã hóa hiệu quả hơn.
o Chuẩn 802.11a phát ở tần số 5 GHz và có thể đạt đến 54 megabit/
giây. Nó cũng sử dụng mã OFDM. Những chuẩn mới hơn sau này
như 802.11n còn nhanh hơn chuẩn 802.11a, nhưng 802.11n vẫn
chưa phải là chuẩn cuối cùng.
o Chuẩn 802.11n cũng phát ở tần số 2.4 GHz, nhưng nhanh hơn so với
chuẩn 802.11a, tốc độ xử lý đạt 300 megabit/giây.
• WiFi có thể hoạt động trên cả ba tần số và có thể nhảy qua lại giữa các tần
số khác nhau một cách nhanh chóng. Việc nhảy qua lại giữa các tần số giúp
giảm thiểu sự nhiễu sóng và cho phép nhiều thiết bị kết nối không dây cùng
một lúc.
II. Các Cơ Chế Bảo Mật WEP & WPA
1. WEP là gì?
WEP (Wired Equivalent Privacy) là một thuật toán nhằm bảo vệ sự trao
đổi thông tin chống lại sự nghe trộm, chống lại những kết nối mạng không được
cho phép cũng như chống lại việc thay đổi hoặc làm nhiễu thông tin truyền. WEP
GV: Phạm Xuân Khánh 3
Đại Học Công Nghệ Thông Tin CowPatty
sử dụng stream cipher RC4 cùng với một mã 40 bit và một số ngẫu nhiên 24 bit
(initialization vector - IV) để mã hóa thông tin. Thông tin mã hóa được tạo ra bằng
cách thực hiện phép toán XOR giữa keystream và plain text. Thông tin mã hóa và
IV sẽ được gửi đến người nhận. Người nhận sẽ giải mã thông tin dựa vào IV và
khóa WEP đã biết trước. Sơ đồ mã hóa được miêu tả bởi hình 1.
Hình 1: Sơ đồ mã hóa bằng WEP

2. WPA là gì?
WPA (Wifi Protected Access ) là một giải pháp bảo mật được đề xuất bởi
liên minh WiFi (WiFi Alliance) nhằm khắc phục những hạn chế của WEP. WPA
được nâng cấp bằng việc cập nhật phần mềm SP2 của Microsoft.
WPA cải tiến 3 điểm yếu nổi bật của WEP :
 WPA cũng mã hóa thông tin bằng RC4 nhưng chiều dài của khóa
là 128 bit và IV có chiều dài là 48 bit. Một cải tiến của WPA đối với WEP là
WPA sử dụng giao thức TKIP (Temporal Key Integrity Protocol) nhằm thay
đổi khóa dùng AP và user một cách tự động trong quá trình trao đổi thông tin.
GV: Phạm Xuân Khánh 4
Đại Học Công Nghệ Thông Tin CowPatty
Cụ thể là TKIP dùng một khóa nhất thời 128 bit kết hợp với địa chỉ MAC của
user host và IV để tạo ra mã khóa. Mã khóa này sẽ được thay đổi sau khi
10.000 gói thông tin được trao đổi.
 WPA sử dụng 802.1x/EAP để đảm bảo tính nhận thực lẫn nhau
nhằm chống lại kiểu tấn công xen vào giữa (man-in-middle attack). Quá trình
nhận thực của WPA dựa trên một server nhận thực, còn được biết đến với tên
gọi RADIUS/ DIAMETER. Server RADIUS cho phép xác thực user trong
mạng cũng như định nghĩa những quyền kết nối của user. Tuy nhiên trong một
mạngWiFi nhỏ (của công ty hoặc trường học), đôi khi không cần thiết phải cài
đặt một server mà có thể dùng một phiên bản WPA- PSK (pre-shared key). Ý
tưởng của WPA-PSK là sẽ dùng một password giống như một chìa khóa vạn
năng (Master Key) chung cho AP và các máy trạm (client devices). Thông tin
nhận thực giữa user và server sẽ được trao đổi thông qua giao thức nhận thực
mở rộng EAP (Extensible Authentication Protocol). Phiên EAP sẽ được tạo ra
giữa user và server để chuyển đổi thông tin liên quan đến việc nhận dang của
user cũng như của mạng. Trong quá trình này AP đóng vai trò là một EAP
proxy, làm nhiệm vụ chuyển giao thông tin giữa server và user.
 WPA sử dụng thuật toán kiểm tra tính toàn vẹn của bản tin MIC
(Michael Message Integrity Check ) để tăng cường tính toàn vẹn của thông tin

truyền. MIC là một bản tin 64 bit được tính dựa trên thuật toán Michael. MIC
sẽ được gửi trong gói TKIP và giúp người nhận kiểm tra xem thông tin nhận
được có bị lỗi trên đường truyền hoặc bị thay đổi bởi kẻ phá hoại hay không.
GV: Phạm Xuân Khánh 5
Đại Học Công Nghệ Thông Tin CowPatty
Tóm lại, WPA được xây dựng nhằm cải thiện những hạn chế của WEP nên
nó chứa đựng những đặc điểm vượt trội so với WEP. Đầu tiên, nó sử dụng một
khóa động mà được thay đổi một cách tự động nhờ vào giao thức TKIP. Khóa sẽ
thay đổi dựa trên người dùng, phiên trao đổi nhất thời và số lượng gói thông tin đã
truyền. Đặc điểm thứ 2 là WPA cho phép kiểm tra xem thông tin có bị thay đổi
trên đường truyền hay không nhờ vào bản tin MIC. Và đăc điểm nối bật thứ cuối
là nó cho phép nhận thực lẫn nhau bằng cách sử dụng giao thức802.1x.
III. Crack Wifi
1. Điểm yếu của WEP
Những điểm yếu về bảo mật của WEP
 WEP sử dụng khóa cố định được chia sẻ giữa một Access Point
(AP) và nhiều người dùng (users) cùng với một IV ngẫu nhiên 24 bit. Do đó,
cùng một IV sẽ được sử dụng lại nhiều lần. Bằng cách thu thập thông tin
truyền đi, kẻ tấn công có thể có đủ thông tin cần thiết để có thể bẻ khóa WEP
đang dùng.
 Một khi khóa WEP đã được biết, kẻ tấn công có thể giải mã thông
tin truyền đi và có thể thay đổi nội dung của thông tin truyền. Do vậy WEP
không đảm bảo được sự cẩn mật (confidentiality) và toàn vẹn (integrity) của
thông tin.
GV: Phạm Xuân Khánh 6
Đại Học Công Nghệ Thông Tin CowPatty
 Việc sử dụng một khóa cố định được chọn bởi người sử dụng và ít
khi được thay đổi (có nghĩa là khóa WEP không được tự động thay đổi) làm
cho WEP rất dễ bị tấn công.
 WEP cho phép người dùng (supplicant) xác minh (authenticate)

AP trong khi AP không thể xác minh tính xác thực của người dùng. Nói một
cách khác, WEP không cung ứng khả năng nhận thực lẫn nhau (mutual
authentication).
2. Điểm yếu của WPA
Những điểm yếu của WPA.
 Điểm yếu đầu tiên của WPA là nó vẫn không giải quyết được kiểu
tấn công từ chối dịch vụ (denial-of-service (DoS) attack). Kẻ phá hoại có thể
làm nhiễu mạng WPA WiFi bằng cách gửi ít nhất 2 gói thông tin với một khóa
sai (wrong encryption key) mỗi giây. Trong trường hợp đó, AP sẽ cho rằng
một kẻ phá hoại đang tấn công mạng và AP sẽ cắt tất cả các kết nối trong vòng
một phút để trách hao tổn tài nguyên mạng. Do đó, sự tiếp diễn của thông tin
không được phép sẽ làm xáo trộn hoạt động của mạng và ngăn cản sự kết nối
của những người dùng được cho phép (authorized users).
 Ngoài ra WPA vẫn sử dụng thuật tóan RC4 mà có thể dễ dàng bị
bẻ vỡ bởi tấn công FMS đã được đề xuất bởi những nhà nghiên cứu ở trường
đại học Berkeley. Hệ thống mã hóa RC4 chứa đựng những khóa yếu (weak
keys). Những khóa yếu này cho phép truy ra khóa mã. Để có thể tìm ra khóa
GV: Phạm Xuân Khánh 7
Đại Học Công Nghệ Thông Tin CowPatty
yếu của RC4, chỉ cần thu thập một số lượng đủ thông tin truyền trên kênh
truyền không dây.
 WPA-PSK là một biên bản yếu của WPA mà ở đó nó gặp vấn đề
về quản lý password hoặc chia sẻ bí mật giữa nhiều người dùng. Khi một
người trong nhóm (trong công ty) rời nhóm, một password/secret mới cần phải
được thiết lập.
3. Crack WPA – TKIP
a. Giới thiệu TKIP
TKIP (Temporal Key Integrity Protocol) thực tế là phiên bản được định
dạng phát triển từ WEP. Nó hoạt động bằng cách tạo ra một key phức tạp hơn và
key này thực tế là sự trộn lẫn giữa session key và initialization vector (IVs) trong

từng packet. Điều này sẽ giúp cho ta chống lại việc nếu như có một ai đó biết được
key tạm thời và dùng nó để attack. Bởi vì mỗi byte của packet điều phụ thuộc vào
các byte của session key và initialization vector. Thêm vào đó có 64 bit Message
Integrity Check (MIC) được gọi là MICHAEL trong mỗi gói tin để chống lại
phương pháp tấn công vào cơ chế bảo vệ tính toàn vẹn CRC32 của WEP. Để
chống lại relay attack, một sequence counter được dùng để chỉ cho phép những gói
tin đến người nhận hợp lệ.
TKIP được thiết kế ra để có thể dùng cho những thiết bị phần cứng tương
thích với WEP bằng cách upgrade firmware hoặc driver. Bởi vậy thuật toán stream
cipher RC4 vẫn được sử dụng và ICV vẫn có trong mỗi packet.
GV: Phạm Xuân Khánh 8
Đại Học Công Nghệ Thông Tin CowPatty
b. Breaking TKIP
 Lý thuyết của TKIP là như vậy nhưng ta vẫn có thể giải mã (decrypt) các
gói tin (traffic) của nó bằng cách giống như dạng ChopChop attack và gửi các
packet với các thành phần đã được thay đổi. Giả sử ta hội đủ các điều kiện sau:
 Mạng đang dùng IPv4 và được gán dãy địa chỉ thông dụng mà
attacker có thể đoán được (192.168.0.X)
 Khoảng thời gian giữa hai session key khá dài. Ví dụ như Access
Point cấu hình 3600 seconds.
 Trong mạng hỗ trợ IEEE 802.11e Quality of Service với 8 channel
khác nhau cho các luồng data khác nhau.
 Có một máy tính đang hiện thời kết nối vào mạng wireless này.
Với những giả định trên thì một network như vậy khá là hiện thực. Để tấn
công vào một network như vậy thì attacker sẽ làm những bước sau:
 Thứ nhất, attacker capture traffic cho đến khi anh ta có được gói
tin ARP request hoặc response đã được mã hóa. Những gói tin như vậy dễ
dàng phát hiện ra được do packet này có độ dài rất đặc trưng.
 Ta biết được Mac source và Mac destination. Nó không có được
bảo vệ trong WEP và cả trong TKIP. Quá trình request luôn gửi ra địa chỉ.

Như vậy ta có thể thấy rằng attacker đã biết được khá nhiều thông tin ngoại
trừ một số thông tin sau:
o Địa chỉ IP Source và IP Destination của byte cuối cùng
o 8 Byte MICHAEL MIC
GV: Phạm Xuân Khánh 9
Đại Học Công Nghệ Thông Tin CowPatty
o 4 Byte checksum của ICV
 Giả sử attacker thực hiện chopchop attack giống như tấn công WEP để
decrypt các unknown plaintext bytes. Thì TKIP cũng có hai phương án để có thể
chống lại chopchop attack như sau:
o Nếu như Client nhận được packet với ICV sai, thì coi như là quá
trình truyền bị fail và gói tin này được discard đi. Nếu như giá trị ICV
đúng nhưng mà quá trình thẩm định MIC fail thì một cuộc tấn công
được giả định đã được xảy ra và Access Point cảnh báo bằng cách gửi ra
các gói tin MIC failure report frame. Và nếu như có nhiều hơn 2 lần
thẩm định sai MIC thì kết nối bị shutdown và tất cả các key có lại bằng
cách thực hiện lại quá trình đàm phán sau thời gian 60 giây.
o Nếu như packet được nhận đúng thì TSC counter ở channel mà nó
nhận được update. Nếu như một gói tin có giá trị thấp hơn bộ đếm hiện
thời thì packet đó được discard.
 Tuy rằng nói như vậy nhưng ta vẫn có thể thực hiện được chopchop attack.
Hacker cần phải thực hiện cuộc tấn công ở một channel khác của QoS mà user
không có dùng. Thông thường thì sẽ có một số channel QoS không có traffic hoặc
traffic thấp mà ở đó TSC counter vẫn còn đang ở trạng thái thấp hơn.
 Nếu như quá trình đoán byte cuối cùng trong ChopChop Attack không
đúng thì packet vẫn bị dropped một cách âm thầm lặng lẽ. Mà nếu như quá trình
này ta đoán đúng thì Client gửi MIC failure report frame nhưng TSC counuter vẫn
không có tăng.
GV: Phạm Xuân Khánh 10
Đại Học Công Nghệ Thông Tin CowPatty

 Attacker cần phải đợi 60s sau khi trigger của cơ chế của MIC failure report
frame hết thời gian hiệu lực.
 Như vậy sau khoảng thời gian 12 phút thì attacker có thể decrypt 12 byte
cuối cùng của plaintext đó chính là MIC và ICV. Để xác định những byte còn lại
mà ta không biết (IP sender và IP receiver), attacker đoán các giá trị và thẩm định
chúng ngược lại bằng các giá trị ICV đã được giải mã ra.
 Sau khi biết được các giá trị MIC và các giá trị plaintext khác, attacker tiếp
tục đi ngược thuật toán MICHAEL và phục hồi được MIC key (Key này được
dùng để bảo vệ gói tin từ đang được gửi từ Access Point đến Client). Thực chất thì
thuật toán MICHAEL không được thiết không giống như những thuật toán hash
thông thường. Nó không có tính chất là One – way. Như vậy việc đi ngược giải
thuật là hoàn toàn cho phép.
 Đến lúc này thì attacker đã phục hồi được MIC key và biết được một key
stream của một kết nối giữa access point và client. Sau khi hoàn thành bước này
thì anh ta có thể gửi những custom packet đến client trên tất cả các channel mà ở
đó TSC counter vẫn còn giá trị thấp hơn so với giá trị thực chất của các packet đã
được capture.
 Thông thường thì tất cả các traffic đều được truyền trên channel 0 vì vậy
attacker vẫn còn có thể gửi các packet đã được định dạng trên 7 channel còn lại.
 Sau khi tấn công xong thì attacker sẽ mất khoảng 4 đến 5 phút để phục hồi
keystream. Anh ta chỉ cần decrypt 4 byte ICV bằng cách dùng kiểu tấn công theo
GV: Phạm Xuân Khánh 11
Đại Học Công Nghệ Thông Tin CowPatty
dạng chopchop. IP address ta có thể đoán được, MIC có thể tính toán sau đó bằng
cách dùng MIC key (đã biết) và thẩm định bằng cách đối chiếu vào trong ICV
 Nếu như Access Point không hỗ trợ IEEE 802.11e, thì kiểu tấn công này
dường như vẫn có thể thực hiện được. Để làm được việc này, attacker cần phải
làm sao ngăn chặn client nhận data packet của cuộc chopchop attack. Phải ngắt kết
nối giữa client và access point trong khoảng thời gian tấn công. Làm như vậy thì
bộ đếm TSC sẽ không tăng.

IV. Giới Thiệu Tools Crack
1. CowPatty
CowPatty được sử dụng như một công cụ đầy sức mạnh cho việc crack
WPA-PSK, WPA-PSK được xem như là một WEP mới cho bảo mật mạng wifi tại
nhà.
Chương trình này đơn giản là cố gắng bó lại các lựa chọn khác nhau từ một
thư viện file để phát hiện nếu có một kết thúc phù hợp thì nó được xác định như
một PSK (Pre-Shared Key).
GV: Phạm Xuân Khánh 12
Đại Học Công Nghệ Thông Tin CowPatty
2. Các công cụ để crack WEP
 AirCrack
- Là một công cụ crack WEP (802.11)
- Tìm lại 40 bit hoặc 104 bit mã WEP
- Sử dụng kiểu tấn công FMS và một số kiểu mới
- Hỗ trợ cho window, linux và mac os
 AirSnort
- Là một công cụ wireless lan (WLAN) để tìm lại key mã hóa ở mạng
802.11b WEP
- Hoạt động một các thụ động việc kiểm tra truyền và tính toán key mã
hóa, đến khi các gói tin được bắt đủ.
- Hoạt động trên linux
GV: Phạm Xuân Khánh 13

×