EAP-WPA
-
Upload
nguyen-thanh-tuan -
Category
Documents
-
view
238 -
download
1
description
Transcript of EAP-WPA
1
ĐỀ Tài Công Cụ Quản Trị
Mạng
CÔNG NGHỆ EAP/WPA
Nhóm thực hiện:
Vương Ngọc Linh mssv: 0951020135
Bùi Giang Nam mssv: 0951020160
Nguyễn Văn Mạnh mssv: 0951020149
2
GVHD : Thầy Nguyễn Đức Quang
MENU
Chương I : Giao thức xác thực mở rộng EAP ..................................................................... 5
1. Sơ lược về EAP: ...................................................................................................... 7
1.1. Bản tin EAP: .................................................................................................. 8
1.2. Các bản tin yêu cầu và trả lời EAP (EAP Requests and Responses) ....... 9
1.3. Các khung trong EAP: ................................................................................ 12
1.4. Chứng thực cổng: ........................................................................................ 12
1.5. Quá trình trao đổi thông tin trong chứng thực EAP ............................... 13
Chương 2: TỔNG QUAN VỀ WPA ................................................................................. 16
2. Sơ lược về WPA: .................................................................................................. 16
2.1 Các chế độ WPA dành cho người sử dụng ................................................... 17
2.2 Thuật toán mã hóa trong WPA ..................................................................... 17
A. TKIP ............................................................................................................. 17
1. Định nghĩa ................................................................................................ 17
2. Hàm băm Hash......................................................................................... 19
3. Véc tơ khởi tạo IV:................................................................................... 19
4. Quá trình trộn khóa ................................................................................. 20
5. Mã kiểm tra toàn vẹn Michael ................................................................ 20
B. RC4 ( Rivest Cipher 4 ) ............................................................................... 21
3
1. Thuật toán KSA : ..................................................................................... 22
2. Thuật toán giả ngẫu nhiên (PRGA): ...................................................... 22
3. Vectơ thử nghiệm ..................................................................................... 24
4. Security ..................................................................................................... 24
5. Biased kết quả của các RC4 .................................................................... 25
6. Fluhrer Mantin và Shamir tấn công ...................................................... 25
7. Tấn công của Klein .................................................................................. 26
8. Một số vấn đề............................................................................................ 26
9. RC4A ......................................................................................................... 27
10. VMPC .................................................................................................... 28
11. RC4 + ...................................................................................................... 29
CHƯƠNG 3: CÔNG NGHỆ EAP/WPA TRONG WIRELESS ....................................... 30
1. WPA-Enterprise Mode(EAP/RADIUS) ............................................................ 30
2. RADIUS Authentication Server ......................................................................... 32
2.1 Authentication và Accouting ......................................................................... 33
2.2 RADIUS Packet data format ......................................................................... 36
Chương IV: DEMO ........................................................................................................... 39
1. Mô hình Demo: .................................................................................................... 39
2. Các bước thực hiện:............................................................................................. 40
2.1 Cấu hình Access Point:................................................................................... 40
2.2 Cấu hình Domain & Radius Server: ............................................................. 40
2.3 Đăng ký Radius với Domain & Radius Server. ........................................... 55
2.4 Cấu hình trên máy Client: ............................................................................. 57
3. Kết quả: ................................................................................................................ 57
4
Hình 1. 1: Kiến trúc EAP cơ bản ......................................................................................... 8
Hình 1. 2: Bản tin EAP. ....................................................................................................... 8
Hình 1. 3: cấu trúc khung của bản tin yêu cầu và trả lời ..................................................... 9
Hình 1. 4: Cấu trúc các khung EAP thành công và không thành công ............................. 12
Hình 1. 5: Cấu trúc cổng .................................................................................................... 13
Hình 1. 6: Quá trình chứng thực EAP ............................................................................... 14
Hình 1. 7: Mô tả quá trình mã hóa khi truyền đi sau khi bổ xung..................................... 18
Hình 1. 8: Cấu trúc khung dữ liệu trước và sau khi bổ xung ............................................ 19
Hình 1. 9: Cấu trúc bên trong của trường MIC ........................................................... 19
Hình 1. 10: Thuật toán PRGA ........................................................................................... 23
Hình 1. 11: Enterprise Mode ............................................................................................. 31
Hình 1. 12: RADIUS Authentication Server ..................................................................... 33
Hình 1. 13: Authentication .............................................................................................. 35
Hình 1. 14: Accounting packet ....................................................................................... 36
Hình 1. 15: RADIUS Packet.............................................................................................. 37
Hình 1. 16: DEMO ............................................................................................................ 39
Hình 1. 17: Acess point ..................................................................................................... 40
Hình 1. 18: cấu hình IIS..................................................................................................... 41
5
PHẦN MỞ ĐẦU
CẤU TRÚC ĐỀ TÀI CHƯƠNG I : TỔNG QUAN VỀ GIAO THỨC XÁC THỰC EAP
- Giới thiệu về giao thức xác thực EAP cấu trúc của EAP cách thức hoạt động của
giao thức xác thực EAP. Nêu mô hình cách xác thực bằng EAP thông qua
RADIUS SERVER . Các bản tin liên quan đến xác thực EAP đưa ra các mô hình
truyền dữ liệu dựa vào xác thực EAP
CHƯƠNG II : TỔNG QUAN VỀ WPA
- Khái niệm về WEP và sự cải tiến từ chuẩn WEP được thay bằng chuẩn WPA .
Chương này nêu rõ thuật toán mã hóa RC4 được kế thừa từ những thuật toán cổ
điển trước đây là hoán vị và thuật toán thay thế . Ở chương này nêu về TKIP giao
thức toàn vẹn khóa nêu những công nghệ thuật toán sư dung trong TKIP ngoài ra
còn đi sâu về thuật toán liên quan như PRGA , KSA..
CHƯƠNG III: CÔNG NGHỆ EAP/WPA TRONG WIRELESS
- Chương này mô tả tổng quan về cách xác thực EAP/WPA. Nếu rõ sự kết hợp của
chúng với nhau tạo thành một khối bảo mật trong wireless. Ứng dụng của chúng
trong hiện tại
CHƯƠNG IV : DEMO
- Demo sơ lược về cách hoạt động của EAP/WPA xem xét cách thức hoạt động của
chúng. Demo chi tiết về cách cấu hình máy chủ phụ trợ chứng thực RADIUS
server và cấu hình Access Point
PHẦN CUỐI
HƯỚNG PHÁT TRIỂN ĐỒ ÁN
NGUỒN THAM KHẢO
6
Thuật Ngữ
EAP Extensible Authentication Protocal
RC4 Rivest Cipher 4
WPA Wifi Protected Access
OTP One Time Password
TKIP Temporal Key Integrity Protocol
MIC Message Integrity Check
AP Access Point
WPA-PSK WPA-Pre Share Key
AAA Authentication, Accounting,
Authorization
7
Chương I : Giao thức xác thực mở rộng EAP
1. Sơ lược về EAP:
Giao thức xác thực mở rộng EAP (Extensible Authentication Protocol) là một giao
thức xác thực hỗ trợ nhiều phương thức xác thực. EAP hoạt động ở tang data-link như
Point-to-Point Protocol (PPP) hay IEEE 802 mà không yêu cầu IP.
EAP có thể được dùng trên các liên kết chuyên dụng, cũng như các mạch chuyển đổi
có dây và không dây. Hiện nay thì EAP được triển khai thực hiện trên các máy chủ và các
thiết bị định tuyến (host and routes) thông qua chuyển mạch hay dial-up dùng PPP. EAP
cũng được thực hiện với các thiết bị chuyển mạch và điểm truy cập (access point) dùng
IEEE 802.
Giao thức chứng thực mở rộng EAP là giao thức hỗ trợ, bảo đảm an ninh trong khi
trao đổi các bản tin chứng thực giữa các bên bằng các phương thức mã hóa thông tin
chứng thực. EAP có thể hỗ trợ, kết hợp với nhiều phương thức chứng thực của các hang
8
khác nhau, các loại hình chứng thực khác nhau, ví dụ ngoài user/password như chúng
thực hiện bằng đặc điểm sinh học, bằng thẻ chip, thẻ từ, bằng khóa công khai…
Kiến trúc cơ bản của EAP được thể hiện rõ ở hình sau, nó được thiết kế để vận hành
trên bất kỳ lớp đường dẫn nào và dùng bất cứ phương thức xác thực nào.
Hình 1. 1: Kiến trúc EAP cơ bản
1.1. Bản tin EAP:
Hình 1. 2: Bản tin EAP.
Một bản tin EAP được thể hiện rõ ở hình trên, bao gồm các trường của bản tin
EAP:
9
- Code: là trường đầu tiên trong bản tin, là một byte dài dài và xác định loại bản tin
của EAP. Nó thường được dùng để thể hiện trường dữ liệu của bản tin.
- Identifyer: là một byte dài. Nó bao gồm một số nguyên không dấu được dùng để
xác định các bản tin yêu cầu và trả lời. Khi truyền lại bản tin thì vẫn là các số
identify đó, nhưng việc truyền mới thì dùng các số identify mới.
- Length: có giá trị là 2 byte dài. Nó chính là chiều dài của toàn bộ bản tin bao gồm
các trường Code, Identifier, Length và Data.
- Data: là trường cuối cùng có độ dài thay đổi. Phụ thuộc vào loại bản tin, trường dẽ
liệu có thể là các byte không. Cách thể hiện của trường dữ liệu được dựa trên giá
trị của trường Code.
1.2. Các bản tin yêu cầu và trả lời EAP (EAP Requests and Responses)
Trao đổi chứng thực mở rộng EAP bao gồm các bản tin yêu cầu và trả lời. Nơi tiếp
nhận chứng thực (Authenticator) gửi một yêu cầu tới hệ thống tìm kiếm truy cập, và dựa
trên các bản tin trả lời, truy cập có thể được chấp nhận hoặc từ chối. Bản tin yêu cầu và
trả lời được minh họa ở hình sau:
Hình 1. 3: cấu trúc khung của bản tin yêu cầu và trả lời
- Code: có giá trị là 1 nếu là bản tin yêu cầu, là 2 nếu là bản tin trả lời. Trường data
chứa dữ liệu được dùng trong các bản tin yêu cầu và trả lời. Mỗi trường data mang
10
một loại dữ liệu khác nhau, phân ra loại mã xác định và sự liên kết dữ liệu như
sau:
- Type: là một trường byte chỉ ra các loại bản tin yêu cầu hay trả lời. Chỉ có một
byte được dùng trong mỗi gói tin. Khi một bản tin yêu cầu không được chấp nhận,
nó có thể gửi một NAK để đề nghị thay đổi loại, có trên 4 loại chỉ ra các phương
pháp chứng thực.
- Type-data: là trường có thể thay đổi để làm rõ hơn nguyên lý của từng loại.
Loại code 1: Identity: Nơi tiếp nhận chứng thực thường dùng loại Identity như là
yêu cầu thiết lập. Sau đó, việc xác định người dùng là bước đầu tiên trong chứng
thực. Trường Type-Data có thể bao gồm chuỗi để nhắc người dùng, chiều dài của
chuỗi được tính từ trường Length trong chính gói EAP.
Loại 2-Notification (Thông báo): Nơi tiếp nhận chứng thực có thể dùng loại
thông báo để gửi một bản tin tới người dùng. Sau đó hệ thống của người dùng hiển
thị bản tin đó. Bản tin thông báo được dùng để cung cấp bản tin tới người dùng từ
hệ thống chứng thực, như là password về việc hết quyền sử dụng. Các bản tin đáp
ứng phải được gửi để trả lời các yêu cầu thông báo. Tuy nhiên, chúng thường là
các phản hồi đơn giản, và trường Type-Data có chiều dài là 0.
Loại 3-NAK: Các NAK được dùng để đưa ra một phương thức chứng thực mới.
Nơi tiếp nhận chưng thực đưa ra chuỗi mời kết nối, được mã hóa bởi một loại mã.
Các loại chứng thực được đánh số thứ tự trên 4. Nếu hệ thống người dùng không
phù hợp với loại chứng thực của chuỗi này, nó có thể đưa ra một NAK. Các bản
tin NAK của trường Type-Data bao gồm một byte đơn tương ứng với loại chứng
thực.
Loại code 4-Chuỗi MD5 (MD5 Challenge): MD5 Challengen thường được sử
dụng trong EAP tương tự của giao thức CHAP, được đưa ra trong rfc 1994. Đây là
yêu cầu bảo mật cơ bản mà EAP sử dụng gồm có tên đăng nhập và mật khẩu.
11
MD5 bảo vệ gói tin bằng cách tạo ra những dấu hiệu đặc trưng riêng (như chữ ký
điện tử) lưu trong gói tin đó. MD5 là giao thức còn đơn giản, chạy nhanh, dễ bổ
sung. Nó không sử dụng chứng thực TKIP, mức độ mã hóa của nó còn chưa cao,
có khả năng bị tấn công kiểu thu hút.
Loại code 5-One Time Password (OTP): Hệ thống one-time password dùng bởi
EAP được định nghĩa trong rfc 1938. Bản tin yêu cầu được đưa tới người dùng
bao gồm chuỗi mời kết nối OTP. Trong một bản tin đáp ứng OTP (loại 5), trường
Type-Data gồm có các từ trong từ điển OPT trong rfc 1938. Giống như tất cả các
loại chứng thực, các bản tin trả lời có thể là các NAK (loại 3).
Loại code 6 Đặc điểm thẻ Token (Generic Token Card): Các thẻ Token như là
SecureID của RSA và Safeword của Secure Computing là phổ biến với nhiều nơi
bởi vì chúng đưa ra sự bảo mật “ngẫu nhiên” các one-time password mà không có
một phức tạp nào của một OTP. Các bản tin yêu cầu chứa đựng thông tin đặc điểm
thẻ Token cần thiết cho chứng thực. Trường Type-Data của yêu cầu phải có chiều
dài lơn hơn 0 byte. Trong các bản tin đáp ứng, trường Type_Data được dùng để
mang thông tin được sao chép từ thẻ Token bởi người dùng. Trong cả bản tin yêu
cầu và trả lời, chiều dài của gói tin EAP được tính là chiều dài bản tin yêu cầu của
Type-Data.
Loại code 13 -TLS: RFC đưa ra việc dùng Transport Layer Security (TLS) trong
chứng thực TLS là phiên bản nâng cấp đã được triển khai một cách rộng rãi ở
Secure Socket Layer (SSL) và chứng thực TLS kế thừa một số đặc điểm từ SSL.
TLS là một phương thức mã hóa mạnh, nó chứng thực song phương có nghĩa là
không chỉ Server chứng thực Client mà Client cũng chứng thực ngược lại Server,
chống lại việc nghe trộm, bắt gói tin. Nhược điểm của nó là yêu cầu chứng thực
PKI ở cả 2 phía làm cho quá trình chứng thực phức tạp, nó phù hợp với hệ thống
nào đã tịch hợp sẵn chứng thực PKI.
12
Các loại mã hóa khác: Đáng chú ý nhất là 2 chứng thực Kerberos và chứng thực
Cell Phone (thẻ SIM dựa trên các mạng thế hệ thứ 2 và AKA dựa trên các mạng
thế hệ thứ 3).
1.3. Các khung trong EAP:
Khi các trao đổi EAP kết thúc, người dùng hoặc chứng thực thành công hoặc không
thành công. Khi nơi tiếp nhận chứng thực xác định việc trao đổi là hoàn tất nó đưa ra
khung thành công (Code 3) và không thành công (Code 4) để kết thúc trao đổi EAP. Nó
cho phép nhiều bản tin yêu cầu trước khi chứng thực không thành công để cho phép
người dùng nhận được thông tin chứng thực đúng.
Hình 1. 4: Cấu trúc các khung EAP thành công và không thành công
1.4. Chứng thực cổng:
Chứng thực tới các thiết bị mạng ở lớp đường dẫn là không mới, chứng thực cổng
mạng đã được biết từ trước. Hầu hết sự ra đời của nó đã có sự phát triển cơ sở hạ tầng
khá rộng để phù hợp chứng thực người dùng, như là nguyên lý Radius servers, và LDAP
directories.
13
Khái niệm port: để chỉ việc đóng mở cổng tương ứng với việc chấp nhận hay từ chối
kết nổi của Authenticator. Ngoài ra còn có một sô port cho các tuyến đi qua mà không
liên quan đến quá trình chứng thực.
Hình 1. 5: Cấu trúc cổng
1.5. Quá trình trao đổi thông tin trong chứng thực EAP
14
Hình 1. 6: Quá trình chứng thực EAP
Các bước trao đổi như sau:
1. Supplication gửi bản tin EAPOL-Start tới Authenticator
2. Authenticator gửi lại một dạng khung EAP-Request/Identity tới Supplicant
3. Supplicant trả lời bằng một khung EAP-Respose/Identity. Sau đó Authenticator
gửi đến Radius server một bản tin Radius-Access-Request.
4. Radius server trả lời bằng một bản tin Radius-Access-Challenge. Sau đó
Authenticator gửi đến Supplicant một bản tin EAP-Request cho sự chứng thực hợp
lệ chứa bất kỳ thông tin liên quan.
15
5. Supplicant tập hợp các thông tin trả lời từ người dùng và gửi một bản tin EAP
(Response tới Authenticator). Tại đây thông tin xử lý thành bản tin Radius Access
Request và được gởi tới Radius.
6. Radius server gửi một bản tin Radius Access Accept cho phép truy cập. Vì vậy,
Authenticator gửi một khung EAP Success tới Supplicant. Khi đó cổng được mở
và người dùng có thể bắt đầu truy cập vào mạng.
7. Khi supplicant hoàn tất việc truy cập mạng, nó gửi một bản tin EAPOL-Logoff để
đóng cổng.
16
Chương 2: TỔNG QUAN VỀ WPA
1. Sơ lược về chuẩn mã hóa WEP
Wired Equivalent Privacy (WEP) là một giải thuật mã hóa bảo vệ dữ liệu trong mạng
LAN không dây tránh bị nghe trộm. Khi dùng WEP, các mạng LAN không dây sinh và
phân phối những key chia sẻ giữa client và các điểm truy cập (access point – AP) sao cho
cả hai bên đều cùng biết. WEP dùng các key đó để authenticate, đồng thời để mã hóa dữ
liệu. Điều đầu tiên AP cần xác định khi một máy client được cấu hình WEP sẵn truy cập
vào mạng không dây, là key của client có phù hợp hay không.
Có hai loại WEP key – 64 bit và 128 bit. Mỗi loại đều dùng một vector khởi tạo dài 24
bit, theo sau đó là một khóa bí mật dài 40 bit hay 104 bit để tương ứng với hai loại độ dài
khác nhau.
2. Sơ lược về WPA:
Là một chuẩn bảo mật được thiết kế để tăng cường bảo vệ dữ liệu và điều khiển truy cập
cho các hệ thống mạng LAN không dây. WPA được thiết kế để lấp những lỗ hổng bảo
mật của WEP, đặc biệt là quá trình mã hóa dữ liệu và authenticate yếu.
WPA cung cấp hai yếu tố cải tiến về bảo mật như sau:
Cải tiến mã hóa dữ liệu thông qua TKIP. Temporal Key Integrity Protocol, cung cấp sự
cải tiến trong mã hóa dữ liệu bằng cách trộn lẫn key đựơc sinh theo từng packet với véc
tơ khởi tạo (IV) được mở rộng với những sequence counter để chống replay attack trên
WEP, sau đó mới chuyển đến quy trình khởi tạo mã hóa RC4. Ngoài ra, TKIP còn hiện
thực chức năng kiểm tra sự toàn vẹn thông điệp (Message Integrity Check – MIC) 64 bit
với giải thuật MICHAEL.
Authenticate người dùng ở mức độ doanh nghiệp thông qua 802.1x và EAP. Framework
802.1x và EAP dùng một máy chủ authenticate tập trung, chẳng hạn như RADIUS, để
authenticate mỗi người dùng trong mạng trước khi họ kết nối vào. Nó cũng sử dụng cơ
17
chế “nhận dạng lẫn nhau” để ngăn chặn người dùng truy cập vào một mạng giả mạo có
thể đánh cắp nhận dạng của họ.
2.1 Các chế độ WPA dành cho người sử dụng
WPA-Personal
Cũng được gọi là chế độ WPA-PSK (Pre-shared key), nó được thiết kế cho gia đình và
mạng văn phòng nhỏ và không yêu cầu một máy chủ xác thực. Mỗi thiết bị mạng không
dây xác thực với điểm truy cập bằng cách sử dụng phím 256-bit cùng được tạo ra từ mật
khẩu hoặc mật khẩu.
WPA-Enterprise
Cũng được gọi là chế độ WPA-802.1X , và đôi khi chỉ WPA (như trái ngược với WPA-
PSK). Nó được thiết kế cho các mạng doanh nghiệp và yêu cầu một máy chủ xác
thực RADIUS .Điều này đòi hỏi một thiết lập phức tạp hơn, nhưng cung cấp an ninh bổ
sung (ví dụ như bảo vệ chống lại các cuộc tấn công từ điển vào mật khẩu ngắn). Một
Extensible Authentication Protocol (EAP) được sử dụng để xác thực, mode khác nhau.
2.2 Thuật toán mã hóa trong WPA
A. TKIP
1. Định nghĩa
TKIP (Temporal Key Identity Protocol: Giao thức toàn vẹn khóa phiên): là giao thức mã
hóa tầng liên kết trong chuẩn 802.11i được thiết kế để nâng cấp khả năng bảo mật cho
WPA nhưng vẫn hoạt động được trên các thiết bị phần cứng hỗ trợ WPA. TKIP là giải
pháp nâng cấp phần mềm cho thiết bị sử dụng WPA, TKIP vẫn giữ nguyên kiến trúc
cũng như các thao tác trong WPA. Cây phân cấp khóa và quản lý khóa tự động. TKIP sử
dụng nhiều khóa chính. Khi cần mã hóa các khung tin, các khóa sẽ được sinh ra từ các
khóa chính này. Các khóa này được sinh và quản lý bởi kiến trúc Mạng an toàn ổn định
(RSN –Robust Security Netwwork). Khóa cho từng frame TKIP vẫn giữ cơ chế mã hóa
RC4, nó sinh ra các khóa RC4 duy nhất cho mỗi khung tin từ khóa chính. Quá trình này
được gọi là trộn khóa (key mixing).Vì việc dùng giá trị khóa dùng chung trong một
khoảng thời gian có thể bị kẻ tấn công dò ra trước khi kịp đổi nên người ta đưa ra một
phương pháp là thay đổi mã khóa này theo từng gói tin. Nguyên lý thực hiện đơn giản
bằng cách thay vì đưa giá trị Mã khóa tới đầu vào của RC4 process, người ta sẽ kết hợp
mã khóa này với IV bằng hàm băm Hash, rồi đưa kết quả này gọi là Mã khóa tổ hợp rồi
18
tới process RC4. Vì mã RC4 thay đổi liên tục (tăng tuần tự) theo mỗi gói tin nên Mã khóa
tổ hợp cũng thay đổi liên tục dù mã khóa chưa đổi.
Hình 1. 7: Mô tả quá trình mã hóa khi truyền đi sau khi bổ xung
Để đảm bảo hơn nữa, Cisco đưa ra quy ước là giá trị vector khởi tạo IV vẫn để tăng tuần
tự . nhưng AP dùng giá trị IV lẻ còn Client dùng giá trị IV chẵn như vậy giá trị IV của
AP và Client sẽ không bao giờ trùng nhau và Mã khóa tổ hợp của AP và Client cũng sẽ
không bao giờ trùng nhau. Thứ tự khung tin Mỗi khung tin trong TKIP được đánh số thứ
tự nhằm giảm thiểu loại hình tấn công replay. TKIP thay thế thuật toán băm tuyến tính
CRC bằng một thuật toán băm ổn định hơn gọi là Michael. Thuật toán này sinh ra mã
toàn vẹn thông điệp gọi là MIC (Message Intergrity Code). Thêm vào đó, địa chỉ nguồn
của khung tin cũng được bảo vệ bởi mã toàn vẹn nhằm phát hiện các khung tin bị giả
mạo địa chỉ nguồn.
MIC bổ xung thêm số thứ tự các trường trong khung dữ liệu (AP sẽ loại bỏ những khung
nào sai số thứ tự đó), để tránh trường hợp kẻ tấn công chèn các gói tin giả mạo sử dụng
lại giá trị IV cũ.
-MIC bổ xung thêm 1 trường tên là MIC vào trong khung dữ liệu để kiểm tra sự toàn vẹn
dữ liệu nhưng với thuật toán kiểm tra phức tạp, chặt chẽ hơn ICV.
19
Hình 1. 8: Cấu trúc khung dữ liệu trước và sau khi bổ xung
Trường MIC dài 4 byte được tổng hợp từ các thông số theo hàm HASH
Hình 1. 9: Cấu trúc bên trong của trường MIC
2. Hàm băm Hash Đây là một loại hàm mã hóa dữ liệu thỏa mãn các yêu cầu sau:
-Tóm lược mọi bản tin có độ dài bất kỳ thành một chuỗi nhị phân có độ dài xác định
-Từ chuỗi nhị phân này không thể tìm lại bản tin nguyên bản ban đầu (hàm tóm lược là
hàm một chiều)
-Bất kỳ một thay đổi dù rất nhỏ ở bản tin nguyên bản cũng dẫn đến sự thay đổi của chuỗi
tóm lược
Các hàm tóm lược này phải thỏa mãn tính chất “không va chạm” có nghĩa là với hai bản
tin bất kỳ khác nhau, cùng dùng một hàm tóm lược rất khó có thể cho ra hai chuỗi tóm
lược có nội dung giống nhau. Điều này rất có ích trong việc chống giả mạo nội dung bức
điện. Phản ứng khi mã MIC sai, Được thiết kế để hoạt động trên các thiết bị phần cứng đã
có, do đó TKIP cũng có những hạn chế của nó. Giống như mã CRC, mã MIC cũng có thể
bị sửa đổi khi bị tấn công chủ động. Do đó TKIP sử dụng cơ chế gọi là phản ứng
(countermeasure) để hạn chế rủi ro khi mạng bị tấn công một cách chủ động.
3. Véc tơ khởi tạo IV:
Để giảm thiểu nguy cơ tấn công vào véc tơ khởi tạo, TKIP tăng độ dài véc tơ khởi tạo từ
24 bit lên 48 bit. Với việc mở rộng này, không gian véc tơ khởi tạo tăng từ 16 triệu lên
280 nghìn tỷ vector và do đó loại bỏ khả năng không gian véc tơ bị sử dụng hết trong thời
20
gian sống của một khóa. Để chống lại hình thức tấn công replay, với mỗi trạm không dây,
TKIP lưu giá trị thứ tự khung tin gần nhất nhận được từ trạm đó. Mỗi khi nhận được một
khung tin, số thứ tự của khung tin đó được so sánh với giá trị đã lưu. Nếu giá trị này lớn
hơn hoặc bằng giá trị đã lưu thì khung tin được chấp nhận, ngược lại khung tin bị từ chối.
4. Quá trình trộn khóa Để đảm bảo mỗi khung tin được truyền đi được mã hóa bởi một khóa RC4 duy nhất,
TKIP thực hiện quá trình trộn khóa. Quá trình này sử dụng véc tơ khởi tạo của TKIP, địa
chỉ nguồn và khóa phiên theo thời gian. Địa chỉ nguồn của khung tin được đưa vào quá
trình trộn khóa nhằm mục đích đảm bảo rằng nếu có hai khung tin có cùng một véc tơ
khởi tạo của TKIP thì vẫn được mã hóa bởi hai RC4 khác nhau. TKIP chia quá trình trộn
khóa làm hai pha:
Pha thứ nhất lấy địa chỉ nguồn, 128 bit khóa phiên theo thời gian, và 32 bit đầu của véc tơ
khởi tạo của TKIP để sinh ra một giá trị 80 bit. Kết quả là giá trị sinh ra từ pha này là một
hằng số khi 32 bit đầu của véc tơ khởi tạo của TKIP là một hằng số. Do vậy sau 216 =
65536 khung tin pha thứ nhất mới cần phải thực hiện lại.
Pha thứ hai của quá trình trộn khóa thực hiện việc tính toán cho mỗi khung tin gửi đi. Pha
này lấy giá trị sinh ra từ pha một, khóa phiên theo thời gian và 16 bit cuối của véc tơ khởi
tạo của TKIP làm giá trị đầu vào. Sau quá trình tính toán, khóa RC4 được sinh ra có độ
dài 128 bit. Toàn bộ khóa RC4 này được chuyển xuống cho WEP thực hiện việc mã hóa
và gửi khung tin.
5. Mã kiểm tra toàn vẹn Michael Để thay thế cho mã kiểm tra toàn vẹn CRC vốn dễ bị tấn công, TKIP sử dụng thuật toán
Michael để tạo mã toàn vẹn cho thông điệp. Được phát triển bởi Neils Ferguson với mục
đích xây dựng một thuật toán tạo mã kiểm tra toàn vẹn phục vụ cho TKIP, thuật toán
Michael
chỉ sử dụng các phép toán bit trao đổi, dịch chuyển và loại trừ nên việc áp dụng không
gây ảnh hưởng tới năng lực xử lý thấp của các phần cứng trước đó. Thuật toán Michael
thực hiện việc tính toán ở tầng trên trước khi khung tin được chuyển cho tầng MAC.
Thuật toán sử dụng khóa có độ dài 64 bit, thực hiện tính toán trên các khối 32 bit của toàn
bộ nội dung thông điệp. Trước khi thực hiện, thuật toán sẽ nối một byte có giá trị 0x5a và
từ 4 đến 7 byte có giá trị 0 vào đuôi thông điệp để đảm bảo nội dung được tính toán là bội
số của 4. Sau khi tính toán, mã MIC có độ dài 8 byte, được nối vào đuôi gói tin MSDU
trước khi truyền dữ liệu đi. Dữ liệu này khi truyền đi có thể bị chia nhỏ, tuy nhiên tại phía
nhận, mã MIC chỉ được tính toán khi khung tin đã được tập hợp lại. Tuy nhiên nhận thấy
mã kiểm tra MIC là chưa đủ để chống chọi lại khả năng bị tấn công, chuẩn 802.11i còn
đưa thêm vào một bước gọi là
21
Michael Countermeasure (tạm dịch là Phản ứng khi mã MIC sai). Quy trình này thực
hiện như sau:
ỗi khi phát hiện ra mã MIC sai, giá trị này được đánh dấu và ghi lại. Tuy nhiên trước
khi được kiểm tra toàn vẹn, khung tin phải đi qua hai
quá trình kiểm tra toàn vẹn của WEP và kiểm tra chống tấn công replay của TKIP. Do đó,
bất kỳ một lỗi MIC nào cũng được coi là nghiêm trọng và cần được sự can thiệp của quản
trị viên hệ thống.
ếu trong 60 giây, hệ thống bắt gặp mã MIC sai lần thứ 2, countermeasure sẽ thực
hiện việc ngắt kết nối trong vòng 60 giây tiếp theo. Việc ngắt kết nối sẽ khiến cho kẻ tấn
công không thể thực hiện một cách nhanh chóng. Mặc dù 802.11 quy định thời gian phản
ứng khi mã MIC sai là 60 giây, một số nhà sản xuất vẫn cho phép cấu hình lại khoảng
thời gian này.
ạm sẽ xóa khóa chính trong bộ nhớ và yêu cầu khóa mới từ phía bộ phận xác
thực. Bộ phận xác thực sã thực hiện việc sinh lại và phân phối khóa cho các bên. Thuật
toán Michael cung cấp mức độ an ninh 20 bit. Theo đó, sau khoảng 219 lần, kẻ tấn công
có thể giả mạo được giá trị MIC . Với giá trị này trên một mạng 802.11b có khả năng
truyền 212 gói tin trong một giây, kẻ tấn công chỉ mất khoảng 2 phút để thu được giá trị
MIC giả mạo hợp lệ. Tuy nhiên, cơ chế phản ứng khi MIC sai chỉ cho phép tối đa 2 gói
tin giả mạo trong 1 phút, và do đó thời gian để kẻ tấn công có thể tạo được một gói tin giả
mạo có MIC hợp lệ là 218 phút (tương đương 6 tháng). Do đó cơ chế phản ứng khi MIC
sai được gọi là an toàn với kiểu tấn công giả mạo thông điệp.
B. RC4 ( Rivest Cipher 4 )
Các RC4 mật mã hóa luồng được sử dụng với một phím cho mỗi gói 128-bit, có nghĩa là
nó tự động tạo ra một khóa mới cho mỗi gói tin. Được sử dụng bởi WPA. RC4 được thiết
kế bởi Ron Rivest của RSA Security vào năm 1987. Trong khi nó được chính thức gọi là
" Rivest Cipher 4"
RC4 tạo ra một dòng giả ngẫu nhiên của các bit ( keystream ). Như với bất kỳ mật mã
dòng, nó có thể được sử dụng để mã hóa bằng cách kết hợp nó với bản rõ bằng cách sử
dụng bit-wise riêng hoặc giải mã được thực hiện theo cách tương tự (Điều này cũng
tương tự như các thuật toán mã hóa Vernam ngoại trừ bit giả ngẫu nhiên tạo ra , chứ
không phải là một chuẩn bị trước được sử dụng) tạo ra các keystream, kiểu mật mã làm
cho việc sử dụng nội bộ bí mật trong đó bao gồm hai phần:
* Hoán vị có thể của tất cả 256 byte (ký hiệu "S" dưới đây).
22
* Hai con trỏ chỉ số 8-bit (ký hiệu "i" và "j").
Hoán vị được khởi tạo với chiều dài biến , chiều dài từ 40 và 256 bit, bằng cách sử dụng
các thuật toán lập lịch trình key- (KSA). Một khi điều này đã được hoàn thành, dòng bit
được tạo ra bằng cách sử dụng thuật toán thế hệ giả ngẫu nhiên (PRGA).
1. Thuật toán KSA :
Thuật toán KSA được sử dụng để khởi tạo các hoán vị trong mảng "S". "Keylength" được
định nghĩa là số lượng các byte trong khoá và có thể là trong khoảng 1 ≤ keylength ≤ 256,
thông thường từ 5 đến 16, tương ứng với độ dài 40 - 128 bit. Đầu tiên, mảng "S" được
khởi tạo để nhận dạng hoán vị . S sau đó được xử lý cho 256 lặp đi lặp lại một cách tương
tự đến PRGA chính, nhưng cũng hỗn hợp bằng byte của khoá cùng một lúc.
i từ 0 đến 255
S [i]: = i
endfor
j: = 0
i từ 0 đến 255
j: = (j + S [i] + key [i mod keylength]) mod 256
trao đổi các giá trị của S [i] và S [j]
end for
2. Thuật toán giả ngẫu nhiên (PRGA):
Đối với nhiều lần lặp lại PRGA thay đổi trạng thái và kết quả đầu ra một byte của các
keystream. Trong mỗi lần lặp, tăng PRGA i , i là nguyên tố thứ của S, S [ i ], và j , trao
23
đổi các giá trị của S [ i ] và S [ j ], và sau đó sử dụng S tổng hợp S [ i ] + S [ j ] (modulo
256) như là một chỉ số để lấy một yếu tố thứ ba của S, (K giá trị keystream dưới đây)
được XOR với byte tiếp theo của tin nhắn để sản xuất các byte tiếp theo của một trong
hai bản mã hoặc bản rõ. Mỗi phần tử của S là đổi chỗ với một phần tử ít nhất một lần 256
lặp đi lặp lại.
i: = 0 j: = 0 ;
While Generating Output:
i: = (i + 1) mod 256
j: = (j + S [i]) mod 256
trao đổi các giá trị của S [i] và S [j]
K: = S (S [i] + S [j]) mod 256]
đầu ra K
end while
Hình 1. 10: Thuật toán PRGA
24
3. Vectơ thử nghiệm
Đây là những vectơ kiểm tra không chính thức, nhưng thuận tiện cho bất cứ ai thử
nghiệm chương trình riêng của RC4 của họ. Các phím và bản rõ là ASCII , keystream và
bản mã trong hệ thập lục phân .
Key Keystream Plaintext Bản mã
Key EB9F7781B734CA72A719 ... Plaintext BBF316E8D940AF0AD3
Wiki 6044DB6D41B7 ... Pedia 1021BF0420
Secret
04D46B053CA87B59 ...
Attack
at dawn
45A01F645FC35B383552544B9BF5
4. Security
Không giống như một dòng mật mã hiện đại (như những người trong eSTREAM ), RC4
không phải mất một nonce riêng biệt cùng với chìa khóa. Điều này có nghĩa là nếu một
phím dài hạn được sử dụng để bảo mật mã hóa nhiều dòng, hệ mật phải xác định làm thế
nào để kết hợp các nonce và phím dài hạn để tạo ra khóa dòng cho RC4. Một cách tiếp
cận để giải quyết vấn đề này là để tạo ra một chìa khóa RC4 " fresh " bằng cách băm một
25
khóa dài hạn với một nonce . Tuy nhiên, nhiều ứng dụng sử dụng RC4 chỉ đơn giản là nối
quan trọng và nonce, lịch trình chính yếu của RC4 của sau đó đưa đến một loạt các vấn
đề nghiêm trọng.
Bởi vì RC4 là một mật mã dòng , nó là dễ thay đổi những thuật toán mật mã khối . Nếu
không được sử dụng cùng với một mã xác thực đủ mạnh thông điệp (MAC), sau đó mã
hóa là dễ bị tổn thương đến một cuộc tấn công lật bit . Đáng chú ý, tuy nhiên, RC4, là
một mật mã dòng, là thuật toán mã hóa chung chỉ là để chống tấn công BEAST 2011
trên TLS 1.0 , trong đó khai thác một điểm yếu được biết đến trong cách chế độ thuật
toán mã hóa khối chaining được sử dụng với tất cả các của thuật toán mã hóa khác được
hỗ trợ bởi TLS 1.0, đó là tất cả các thuật toán mật mã khối.
5. Biased kết quả của các RC4
Keystream được tạo ra bởi các RC4 được ưu tiên trong các mức độ khác nhau đối với
trình tự nhất định. Tấn công như vậy tốt nhất là do Itsik Mantin và Adi Shamir đã cho
thấy rằng các byte đầu ra thứ hai của các thuật toán mã hóa được thiên về không với xác
suất 1/128 (thay vì 1/256). Điều này là do thực tế rằng nếu các byte thứ ba của tình trạng
ban đầu là số không, và byte thứ hai là không bằng 2, sau đó các byte đầu ra thứ hai là
luôn luôn bằng không. Ưu tiên này có thể được phát hiện bằng cách quan sát chỉ có 256
byte.
Souradyuti Paul và Bart Preneel của COSIC cho thấy các byte đầu tiên và lần thứ hai của
RC4 cũng thiên vị. Số lượng mẫu cần thiết để phát hiện này thiên vị là 2 25
byte.
Scott Fluhrer và David McGrew cũng cho thấy các cuộc tấn công như vậy mà phân biệt
các keystream của RC4 từ một dòng ngẫu nhiên cho một gigabyte đầu ra.
Đặc tính đầy đủ của một bước duy nhất của RC4 PRGA được thực hiện bởi Basu
Riddhipratim, Shirshendu Ganguly, Subhamoy Maitra, và Goutam Paul. Xem xét tất cả
các hoán vị, họ chứng minh rằng việc phân phối đầu ra là không thống nhất cho i và j, và
như một hệ quả, thông tin về j luôn luôn bị rò rỉ vào đầu ra.
6. Fluhrer Mantin và Shamir tấn công
26
Năm 2001, một khám phá mới và đáng ngạc nhiên đã được thực hiện
bởi Fluhrer , Mantin và Shamir : trên tất cả các phím có thể RC4, các số liệu thống kê cho
vài byte đầu tiên của keystream sản lượng mạnh mẽ không ngẫu nhiên, rò rỉ thông tin về
khoá. Nếu khóa dài hạn và nonce chỉ đơn giản là nối để tạo ra khóa RC4, phím dài hạn
này có thể được phát hiện bằng cách phân tích một số lượng lớn các tin nhắn được mã
hóa với khóa này. Điều này và các tác dụng sau đó được sử dụng để phá vỡ WEP (Wired
Equivalent Privacy) mã hóa được sử dụng với 802,11mạng không dây . Điều này gây ra
một cuộc tranh giành cho một sự thay thế dựa trên các tiêu chuẩn cho WEP trong thị
trường 802.11, và dẫn đến IEEE 802.11i nỗ lực và WPA .
Hệ bảo mật có thể bảo vệ chống lại cuộc tấn công này bằng cách loại bỏ phần ban đầu
của các keystream. Một thuật toán thay đổi được gọi là "RC4-Drop [n]", trong đó n là số
byte keystream ban đầu được giảm xuống. Mặc định Drop là n = 768 byte, nhưng một giá
trị bảo thủ sẽ là
n = 3072 byte. Cuộc tấn công Fluhrer, Mantin và Shamir không áp dụng dựa trên RC4-
SSL, kể từ khi SSL tạo ra các khóa mã hóa nó sử dụng cho RC4 băm, có nghĩa rằng
phiên SSL khác nhau có các phím không liên quan.
7. Tấn công của Klein
Trong năm 2005, Andreas Klein trình bày một phân tích về mật mã dòng RC4 cho thấy
mối tương quan giữa keystream RC4 và phím Erik Tews , Ralf-Philipp
Weinmann và Andrei Pychkinesử dụng phân tích này để tạo ra aircrack-ptw, một công cụ
mà vết nứt 104-bit RC4 được sử dụng 128-bit WEP dưới một phút. Trong khi cuộc tấn
công Fluhrer, Mantin, và Shamir sử dụng khoảng 10 triệu tin nhắn, aircrack-ptw có thể
phá vỡ 104-bit chìa khóa trong 40.000 khung với xác suất 50% , hoặc 85.000 khung hình
với xác suất 95%.
8. Một số vấn đề
Một vấn đề tổ hợp liên quan đến số lượng các yếu tố đầu vào và đầu ra của thuật toán mã
hóa RC4 lần đầu tiên được đặt ra bởi Itsik Mantin và Adi Shamir vào năm 2001, theo đó,
của 256 yếu tố trong tổng số trạng thái điển hình của RC4, nếu x số phần tử ( x ≤ 256 )
là chỉ được biết đến (tất cả các yếu tố khác có thể được giả định trống), sau đó số lượng
tối đa các yếu tố có thể được sản xuất deterministically cũng là x trong 256 vòng tiếp
theo. Phỏng đoán này được đưa vào phần còn lại vào năm 2004 với một bằng chứng
27
chính thức được đưa ra bởi Souradyuti Paulvà Bart Preneel . Như đã đề cập ở trên, điểm
yếu quan trọng nhất của RC4 đến từ lịch trình quan trọng không đủ, các byte đầu của kết
quả tiết lộ thông tin về khoá. Điều này có thể được sửa chữa bằng cách đơn giản loại bỏ
một số phần ban đầu của dòng đầu ra. Điều này được biết đến như RC4-thả N , N thường
là một bội số của 256, chẳng hạn như 768 hoặc 1024. Một số nỗ lực đã được thực hiện để
tăng cường RC4, đáng chú ý là RC4A, VMPC , và RC4
9. RC4A
Souradyuti Paul và Bart Preneel đã đề xuất một phiên bản RC4, mà họ gọi là RC4A.
RC4A sử dụng hai mảng trạng thái S1 và S2, hai chỉ số j1 và j2 . Mỗi lần tôi được tăng
lên, hai byte được tạo ra:
1. Đầu tiên, các thuật toán RC4 cơ bản được thực hiện bằng cách sử dụng S1 và j1 ,
nhưng ở bước cuối cùng, S1 [ i ] + S1 [ j1 ] nhìn lên trong S2.
2. Thứ hai, hoạt động được lặp đi lặp lại (mà không incrementing tôi một lần nữa)
trên S2 và j2 , và S1 [S2 [ i ] + S2 [ j2 ]] là đầu ra.
Như vậy, thuật toán là:
Số học tất cả được thực hiện modulo 256
i: = 0
j1: = 0
j2: = 0
trong khi GeneratingOutput:
28
i: = i + 1
j1: = j1 + S1 [i]
trao đổi giá trị của S1 [i] và S1 [j1]
đầu ra S2 [S1 [i] + S1 [j1]]
j2 = j2 + S2 [i]
trao đổi các giá trị của S2 [i] và S2 [j2]
sản lượng S1 [S2 [i] + S2 [j2]]
endwhile
Mặc dù các thuật toán cần thiết cùng một số hoạt động cho mỗi byte đầu ra, có lớn song
song hơn RC4, cung cấp một cải tiến tốc độ có thể.
Mặc dù mạnh hơn RC4, thuật toán này cũng đã bị tấn công, với Alexander Maximov và
một nhóm nghiên cứu từ NEC phát triển các cách để phân biệt sản lượng của nó từ một
chuỗi thực sự ngẫu nhiên.
10. VMPC
"Variably thay đổi Thành phần hoán vị" là một biến thể RC4. Nó sử dụng cùng một lịch
trình chính như RC4, nhưng lặp lại 768 lần hơn là 256 (nó không phải là giống như RC4-
drop512 bởi vì tất cả lặp đi lặp lại kết hợp các tài liệu quan trọng), và với một tùy chọn
bổ sung 768 lặp đi lặp lại để kết hợp một vector ban đầu. Bài viết hay để làm nổi bật sự
tương tự RC4 càng nhiều càng tốt, chức năng thế hệ đầu ra hoạt động như sau:
Số học tất cả được thực hiện modulo 256.
i: = 0
trong khi GeneratingOutput:
a: = S [i]
j: = S [j + a]
b: = S [j]
đầu ra S [S [b] + 1]
S [i]: = b (Swap S [i] và S [j])
S [j]: = a
i: = i + 1
endwhile Điều này bị tấn công trong các giấy tờ tương tự như RC4A.
29
11. RC4 +
RC4 + là một phiên bản sửa đổi của RC4 với một lịch trình khóa phức tạp hơn ba pha
(khoảng chừng 3 × miễn là RC4, hoặc giống như RC4-drop512), và đầu ra là một chức
năng phức tạp hơn, thực hiện bốn tra cứu bổ sung trong S mảng cho mỗi đầu ra byte,
khoảng 1,7 × miễn như là cơ bản RC4.
Tất cả số học modulo 256. << Và >> là sự thay đổi trái và phải, ⊕ là exclusive OR
trong khi GeneratingOutput:
i: = i + 1
a: = S [i]
j: = j + a
b: = S [j]
S [i]: = b (Swap S [i] và S [j])
S [j]: = a
c: = S [i << 5 ⊕ j >> 3] + S [j << 5 ⊕ i >> 3]
đầu ra (S [a + b] + S [c ⊕ 0xAA) ⊕ S [j + b]
endwhile
Thuật toán này đã không được phân tích chuyên sâu .
30
CHƯƠNG 3: CÔNG NGHỆ EAP/WPA TRONG
WIRELESS
1. WPA-Enterprise Mode(EAP/RADIUS)
31
Hình 1. 11: Enterprise Mode
*Cách WPA-Enterprise làm việc.
WPA-Enterprise có khả năng đáp ứng được nhu cầu an ninh mạng không
dây ở cấp độ cao. Sau khi đăng nhập một cách an toàn vào mạng với user
và password, mọi client sẽ tự động nhận được 1 key mã hóa duy nhất, nó
dài và được update thường xuyên, vì vậy có khả năng tránh được sự tấn
công của các snooper. Thậm chí, nếu 1 khóa bị giải mã bằng cách nào đó
32
bới 1 hacker cực kì thông minh thì ngay khi hacker này sử dụng khóa đó, ổ
khóa đã bị thay đổi.
Về mặt kĩ thuật, WPA-PSK làm việc trên từng client và giao cho mỗi client
1 khóa mã hóa duy nhất. Nhưng các khóa này có nguồn gốc giữa client và
AP nên sẽ dễ bị giải mã hơn bởi những Sniffer.
Trong WPA-Enterprise mode, người sử dụng không hề biết Passphrase, do
đó họ không thể share nó ra ngoài, hay sử dụng nó khi đã nghỉ việc.
Các keys client không tự thay đổi hàng loạt, nếu sử dụng WPA-PSA(WPA
Personal mode) và bạn muốn thay đổi Passphrase, bạn phải tới từng máy.
Điều này giúp tiết kiệm nhiều thời gian.
Ở Mode này, điều cần thiết đó là bạn phải có 1 RADIUS Server chứng thực
hỗ trợ WPA và EAP.
2. RADIUS Authentication Server
Giữ nhiệm vụ chứng thực thồng tin người dùng, cách làm chủ yếu đó là
user + Password. Phẩn mềm RAS này sử dụng giao thức RADIUS, Bởi vì
sự hỗ trợ rộng rãi và tính chất phổ biến của giao thức RADIUS, nó thường
được sử dụng bởi các nhà cung cấp dịch vụ Internet và các doanh nghiệp để
quản lý truy cập vào mạng Internet hoặc mạng nội bộ, mạng không dây, và
các dịch vụ e-mail tích hợp. Những mạng lưới này có thể kết hợp modem,
DSL, điểm truy cập, mạng riêng ảo, cổng mạng, máy chủ web, vv.
RADIUS cung cấp phương pháp xác thực tập trung AAA(Authentication,
Accounting, Authorization) nhưng RAS thì lại không có chức năng phân
quyền.
33
Hình 1. 12: RADIUS Authentication Server
2.1 Authentication và Accouting
Authentication
Người dùng hoặc máy sẽ gửi một yêu cầu đến một máy chủ truy cập từ xa
(RAS) để đạt được quyền truy cập vào tài nguyên mạng bằng các thông tin
truy cập cụ thể. Các thông tin được truyền cho các thiết bị RAS thông qua
giao thức link-layer, ví dụ, Point-to-Point Protocol (PPP) trong trường hợp
của nhiều dialup hoặc nhà cung cấp dịch vụ DSL hoặc đăng trong một hình
thức HTTPS web an toàn.
Đổi lại, RAS gửi một thông điệp yêu cầu truy cập RADIUS đến máy chủ
RADIUS, yêu cầu ủy quyền để cấp quyền truy cập thông qua giao thức
RADIUS .
Yêu cầu này bao gồm các thông tin truy cập, thông thường trong các hình
thức của tên người dùng và mật khẩu hoặc chứng chỉ bảo mật được cung
cấp bởi người sử dụng. Ngoài ra, yêu cầu có thể chứa các thông tin khác mà
RAS biết về người dùng, chẳng hạn như địa chỉ mạng của mình hoặc số
điện thoại, và thông tin liên quan đến điểm vật lý của người sử dụng tập tin
đính kèm RAS.
34
Các máy chủ RADIUS kiểm tra thông tin đó là chính xác bằng cách sử
dụng hệ thống xác thực như PAP, CHAP hoặc EAP. Bằng chứng về nhận
dạng của người dùng được xác minh, cùng với, tùy chọn, các thông tin khác
liên quan đến yêu cầu, chẳng hạn như địa chỉ mạng của người dùng hoặc số
điện thoại, tình trạng tài khoản và phân quyền truy cập dịch vụ cụ thể.
Trong lịch sử, các máy chủ RADIUS kiểm tra thông tin của người sử dụng
chống lại một tập tin cơ sở dữ liệu được lưu trữ tại địa phương phẳng. Các
máy chủ RADIUS hiện đại có thể làm được điều này, hoặc có thể tham
khảo các nguồn bên ngoài - thường là SQL, Kerberos, LDAP, hoặc các máy
chủ Active Directory - để xác minh các thông tin của người sử dụng.
Các máy chủ RADIUS sau đó trả về một trong ba câu trả lời RAS: 1)
Access Reject , 2) Access Challenge, hoặc 3) Access Accept.
Truy cập Từ chối người sử dụng được một cách vô điều kiện từ chối truy
cập vào tất cả các tài nguyên mạng. Lý do có thể bao gồm không cung cấp
bằng chứng xác định hoặc một tài khoản người dùng không biết hoặc
không hoạt động.
Truy cập Challenge - Yêu cầu thêm thông tin từ người sử dụng như một
mật khẩu thứ cấp, PIN, mã thông báo, hoặc thẻ. Challenge truy cập cũng
được sử dụng trong các hộp thoại xác thực phức tạp hơn một đường hầm an
toàn được thiết lập giữa máy tính người dùng và các máy chủ Radius trong
một cách mà các thông tin truy cập được ẩn từ RAS.
Truy cập Chấp nhận - người dùng là cấp quyền truy cập. Một khi người
dùng được xác thực, máy chủ RADIUS sẽ thường xuyên kiểm tra mà người
dùng được phép sử dụng các dịch vụ mạng được yêu cầu. Một người sử
dụng nhất định có thể được phép sử dụng mạng không dây của công ty,
nhưng không phải dịch vụ VPN của nó, ví dụ. Một lần nữa, thông tin này
có thể được lưu trữ cục bộ trên máy chủ RADIUS, hoặc có thể được nhìn
lên trong một nguồn bên ngoài như LDAP hoặc đăng nhập.
Mỗi của ba những phản ứng RADIUS có thể bao gồm một thuộc tính Trả
lời tin nhắn mà có thể cung cấp cho một lý do để từ chối, nhắc nhở cho
những thách thức, hoặc một tin nhắn chào mừng cho sự chấp nhận. Các văn
35
bản trong thuộc tính có thể được chuyển cho người sử dụng trong một trang
web trở lại.
Hình 1. 13: Authentication
Accounting
Khi quyền truy cập mạng được cấp cho người dùng bằng cách NAS, một
Accounting Start (Accounting RADIUS yêu cầu gói tin có chứa một thuộc
tính Acct-Status-Type với tín hiệu "bắt đầu") được gửi bởi NAS máy chủ
RADIUS để báo hiệu sự bắt đầu củacủa người sử dụng truy cập mạng. "Bắt
đầu" hồ sơ thường có nhận dạng của người dùng, địa chỉ mạng, điểm tập tin
đính kèm và thời gian tự động thoát một định danh duy nhất .
Nó cập nhật hồ sơ tạm thời một cách định kì (Accounting RADIUS yêu cầu
gói tin có chứa một thuộc tính Acct-Status-Type với giá trị tạm thời được
cập nhật ") có thể được gửi bởi NAS đến các máy chủ RADIUS, để cập
nhật tình trạng của một phiên hoạt động. Hồ sơ tạm thời này thường được
truyền tải trong thời gian phiên làm việc hiện tại và mang thông tin về cách
sử dụng dữ liệu hiện tại.
Cuối cùng, khi truy cập mạng của người sử dụng được đóng lại, NAS sẽ
đưa ra lệnh cuối cùng là Accounting Stop (an Accounting RADIUS yêu
cầu gói có chứa một thuộc tính Acct-Status-Types với các tín hiệu "dừng
lại") đến máy chủ RADIUS, cung cấp thông tin về việc sử dụng thức về
36
thời gian, các gói tin chuyển giao, chuyển dữ liệu, lý do để ngắt kết nối và
các thông tin khác liên quan đến truy cập mạng của người dùng.
Thông thường, khách hàng sẽ gửi các gói tin Accounting-Request cho đến
khi nó nhận được một sự thừa nhận Acounting-Accept, bằng cách sử dụng
một số thử lại khoảng thời gian.
Mục đích chính của dữ liệu này là người dùng có thể được lập hoá đơn cho
phù hợp, dữ liệu cũng thường được sử dụng cho mục đích thống kê và giám
sát mạng nói chung.
Hình 1. 14: Accounting packet
2.2 RADIUS Packet data format
37
Hình 1. 15: RADIUS Packet
Code Assignment
38
1 Access-Request
2 Access-Accept
3 Access-Reject
4 Accounting-Request
5 Accounting-Response
11 Access-Challenge
12 Status-Server (experimental)
13 Status-Client (experimental)
255 Reserved
Trường Identifier hỗ trợ cầu nối giữa yêu cầu và trả lời.
Trường length cho biết tổng chiều dài tổng cộng của gói tin.
Trường Authenticator được sử dụng để chứng thực gói tin trả lời từ server
RADIUS và được sử dụng để mã hóa password, chiều dài của nó là 16 bits.
39
Chương IV: DEMO
1. Mô hình Demo:
Hình 1. 16: DEMO
Access Point: 192.168.1.1
Máy Domain & Radius Server: 192.168.1.2
40
Máy Client: 192.168.1.3
2. Các bước thực hiện:
2.1 Cấu hình Access Point:
Mở trình duyệt truy cập vào địa chỉ http://192.168.1.1
Chọn tab Wireless ->Wireless Security chọn Radius, nhập Radius Server và Share Key.
Hình 1. 17: Acess point
2.2 Cấu hình Domain & Radius Server:
- Nâng cấp Domain và cài đặt IIS trên máy Domain & Radius Server.
- Cài đặt CA: Vào Start-> Setting-> Control Panel -> Add or Remove Program ->
Windows Component Wizad -> Check vào Certificate Services.
41
Hình 1. 18: cấu hình IIS
- Cài Radius: Start ->Settings -> Control Panel -> Add or Remove Programs ->
Windows Component Winzard -> Networking Service -> check vào Internet
Auhtentication Service.
42
43
- Xin CA: vào Start->run: mmc. Cửa sổ Console hiện ra, vào File->Add/Remove
Snap-in->click vào biểu tượng Add chọn Certificates->Computer Account->Local
Computer->Finsh. Tiếp tục vào Console Root->Certificates-<Personal-
>Certificates click chuột phải chọn All Tasks-> Request New Certificate-> Chọn
Domain Controller->Finsh.
44
45
46
47
48
- Vào Radius tạo Radius Client.
49
50
51
- Vào Remote Access Policies, click chuột phải chọn New Remote Access Policy
nhập tên policy vào (wireless). Ở cửa sổ New Remote Access Policy Wizard chọn
Wireless ->Next. Ở cửa sổ Select Group ta chọn group Wireless của Domain &
Radius Server->Next->Finish.
52
53
54
55
2.3 Đăng ký Radius với Domain & Radius Server.
56
57
2.4 Cấu hình trên máy Client:
Cấu hình IP (192.168.1.3) cho card mạng của máy Client.
3. Kết quả:
Client kết nối vào Access Point:
58
59
60
61
HƯỚNG PHÁT TRIỂN CỦA ĐỀ TÀI
Hiện nay, người dùng đã chuyển hướng sử dụng sang WPA2, một phiên bản phát triển từ
WPA, có khả năng bảo mật mạnh mẽ hơn. Với sự phát triển tốc độ cao của công nghệ
thông tin, trong 1 tương lai gần, WPA2 sẽ tiếp tục update, cải tiến lên 1 phiên bản cao
hơn, hiệu quả hơn, bảo mật hơn, song WPA vẫn là một xương sống quan trong trong bảo
mật không dây.
TÀI LIỆU THAM KHẢO:
http://etutorials.org/Networking/802.11+security.+wi-
fi+protected+access+and+802.11i/Part+II+The+Design+of+Wi-
Fi+Security/Chapter+7.+WPA+RSN+and+IEEE+802.11i/Relationship+of+the+Standard
s/
http://core.kmi.open.ac.uk/download/pdf/1082120
http://etutorials.org/Networking/802.11+security.+wi-
fi+protected+access+and+802.11i/Part+II+The+Design+of+Wi-
Fi+Security/Chapter+11.+TKIP/Message+Integrity+Michael/
http://tools.ietf.org/html/rfc5247
http://tailieu.vn/xem-tai-lieu/wep-la-gi-wpa-la-gi-3.617692.html
http://en.wikipedia.org/wiki/Extensible_Authentication_Protocol
http://www.ciscopress.com/articles/article.asp?p=1576225
http://www.webopedia.com/TERM/W/wpa_enterprise.html
http://www.webopedia.com/TERM/W/wpa_enterprise.html