EAP (Extensible Authentication Protocol) - Phương thức bảo mật cho mạng không dây
802.11 (Phần 1)
2:19, 30/10/2007
Do việc truyền dữ liệu trong mạng
không dây thực hiện trong môi
trường mở nên chúng ta cần có cơ
chế bảo mật khác với các mạng
truyền thống.Trong bài này chúng
ta sẽ nghiên cứu cách thức hoạt
động và cơ chế bảo mật trong các
mạng không dây từ đó tìm ra một
cơ chế thích hợp nhất. Tiếp theo
chúng ta sẽ xem xét một vài cơ chế xác thực trong mạng không dây như phương pháp mã
khoá công cộng, mã sử dụng mật khẩu thông thường và mã sử dụng mật khẩu phức tạp.
Một trong các loại mã sử dụng mật khẩu đặc biệt như SPEKE (Simple Password-
authenticated Exponential Key Exchange) sẽ được đề cập chi tiết hơn. Cuối cùng là các
bảng so sánh phương thức bảo mật cho mạng không dây.
Nguyễn Hữu Phát
1. Tổng quan
Do việc truyền dữ liệu trong mạng không dây thực hiện trong môi trường mở nên
chúng ta cần có cơ chế bảo mật khác với các mạng truyền thống.Trong bài này chúng ta sẽ
nghiên cứu cách thức hoạt động và cơ chế bảo mật trong các mạng không dây từ đó tìm ra
một cơ chế thích hợp nhất. Tiếp theo chúng ta sẽ xem xét một vài cơ chế xác thực trong
mạng không dây như phương pháp mã khoá công cộng, mã sử dụng mật khẩu thông
thường và mã sử dụng mật khẩu phức tạp. Một trong các loại mã sử dụng mật khẩu đặc
biệt như SPEKE (Simple Password-authenticated Exponential Key Exchange) sẽ được đề
cập chi tiết hơn. Cuối cùng là các bảng so sánh phương thức bảo mật cho mạng không dây.
Xác thực là một quá trình kiểm tra các yêu cầu đặt ra. Hình thức xác thực đơn giản nhất
là một người khi được yêu cầu xác thực sẽ đưa một mật khẩu tới hệ thống để kiểm tra. Nếu
mật khẩu đúng anh ta sẽ được quyền truy nhập và thực hiện các dịch vụ cho phép.Trong
một vài trường hợp yêu cầu tính xác thực cao tuy nhiên cũng có trường hợp chỉ mang tính
kiểm tra như:
- Người sử dụng được bảo đảm tính xác thực thông qua các câu hỏi.
- Kênh giao tiếp giữa người sử dụng và người xác thực phải được bảo vệ (người sử
dụng và người xác thực có thể đảm bảo chắc chắn rằng không bị nghe trộm). Để đảm bảo
an toàn cao hệ thống có thể giới hạn số lần nhập sai mật khẩu để tránh tình trạng người tấn
công có thể dò mật khẩu.
Chúng ta sẽ xem xét các vấn đề xảy ra khi một người truy cập vào mạng không dây chuẩn
802.11 thông qua một máy tính xách tay. Vấn đề thứ nhất đó là người sử dụng sẽ không
thể có cách nào biết điểm truy nhập là gì, điều này do người quản trị mạng qui định.Tuy
nhiên kẻ tấn công có thể giả danh một người khác để truy cập đến mạng. Nếu điều này xảy
ra người bị giả danh sẽ không thể biết chính xác dữ liệu đã bị lấy cắp như thế nào.
Vấn đề thứ là môi trường truyền thông trong trường hợp này là mạng vô tuyến có thể bị
kiểm soát với một thiết bị thu. Điều này được thực hiện dễ dàng bởi kẻ tấn công thông qua
việc sử dụng những mật khẩu chưa bị xoá. Vấn đề này có thể kiểm soát nhờ sử dụng cơ
chế xác thực thông qua một số chức năng phức tạp mà chỉ người dùng nắm được. Nhưng
có một vấn đề mới nảy sinh. Kẻ tấn công có thể tạo ra những mật khẩu giả trên một máy
tính riêng sau đó phân tích những kết quả trả về máy tính. So sánh những kết quả đó ghép
nối lại sẽ cho một mật khẩu. Những mật khẩu dự đoán này được tạo ra rất nhanh khiến cho
người sử dụng cũng như người quản trị mạng không thể phát hiện được. Hình thức tấn
công này được gọi là từ điển phá khoá “cracker’s dictionary” .
Cách thức tấn công offline này có thể loại trừ bằng cách đặt một số lớn ngẫu nhiên thay thế
cho những mật khẩu dễ nhớ. Nhưng điều này làm nảy sinh lỗi thứ tư đó là mật khẩu dễ
nhớ. Để khắc phục vấn đề này mật khẩu có thể được lưu trữ trên máy tính, điều này có
nghĩa là người sử dụng cần phải tự mình bảo vệ máy tính của mình khỏi sự truy cập trái
phép từ bên ngoài. Chính vì vậy mà yêu cầu xác thực cho mạng không dây nghiêm ngặt
hơn rất nhiều so với mạng cố định sử dụng hệ thống quay số. Trong bài này trước tiên
chúng ta thu thập các yêu cầu đó là các phương thức xác thực phù hợp cho mạng không
dây. Danh sách này bao gồm các đặc trưng thêm vào đó là các phương thức xác thực phải
có và danh sách các đặc tính của một số mạng không dây có thể hữu ích trong một vài môi
trường.
Tiếp đó chúng ta sẽ xem xét hai họ xác thực cơ bản cho mạng không dây. Họ thứ nhất
gồm các phương pháp xác thực sử dụng khoá công cộng. Họ thứ hai là các phương pháp
xác thực sử dụng mật khẩu. Chúng ta cũng xem xét các đặc tính cơ bản của phương pháp
mã khoá SPEKE phương pháp mã hoá rất thích hợp cho mạng không dây. Cuối cùng chúng
ta tóm tắt các phương pháp xác thực trong một bảng và so sánh khả năng kết hợp của nó
với các phương pháp đã có trước đó.
2. Các yêu cầu cho xác thực trong mạng không dây
Tiếp theo câu hỏi đặt ra là yêu cầu xác thực gì sẽ được sử dụng để truy cập mạng không
dây? Trong phần này sẽ liệt kê các yêu cầu cần có cho các phương pháp xác thực, các đặc
trưng thêm vào và các đặc tính có thể hữu ích trong môi trường cụ thể.
2.1. Các yêu cầu ( Bắt buộc )
Tính tương hỗ: Nó cung cấp tính xác thực lẫn nhau, đó là người chịu trách nhiệm xác thực
phải xác thực được người sử dụng và ngược lại người sử dụng cũng phải kiểm tra lại đối
tượng xác thực mình. Đây là yêu cầu quan trọng trong mạng không dây bởi vì những kẻ
tấn công rất dễ tạo ra những điểm truy cập giả. Có hai khả năng tấn công có thể xảy ra.
Thứ nhất kẻ giả mạo không được truy cập vào mạng và tấn công người sử dụng để lấy
thông tin xác thực. Thứ hai, khi kẻ giả mạo kết nối vào được mạng sẽ bỏ qua sự xác thực
của người sử dụng và quyền truy cập mạng. Khi đó người sử dụng có thể bị theo dõi thậm
chí có thể bị thay đổi dữ liệu do kẻ tấn công sẽ chèn dữ liệu của họ vào.
Cơ chế tự bảo vệ: Nó phải tự bảo vệ khỏi việc nghe trộm khi đường truyền vật lý không
đảm bảo an toàn. Cơ chế xác thực được thực hiện theo cách mà người nghe trộm không thể
học được được bất kỳ tính năng nào. Khả năng ngăn chặn cách thức tấn công kiểu từ điển
– Nó có khả năng ngăn chặn tấn công cả online hoặc offline. Với hình thức tấn công
online có thể ngăn chặn bằng cách hạn chế số lần xác thực. Với cách tấn công offline cách
thức phổ biến là sử dụng phương pháp hỏi đáp. Thủ tục tạo khoá – Thủ tục này tạo ra các
bản tin xác thực để thiết lập sự bảo vệ cho người dùng. Những khoá này sẽ được thông qua
các thiết bị người sử dụng như WEP hoặc TKIP.
2.2. Các đặc tính thêm vào ( Nên có)
Xác thực cho người dùng – Chúng ta nên xác thực người dùng hơn là thiết bị của người sử
dụng. Đây được gọi là bảo mật cứng. Nói cách khác đây là cách sử dụng smart card cung
cấp cho người dùng để truy cập vào mạng. Bảo mật phía trước – Chúng ta nên cung cấp
chế độ bảo mật phía trước. Bảo mật trước nghĩa là bảo mật tại phía người sử dụng hoặc
mật khẩu hoặc khoá tại bất kỳ điểm nào trong tương lai. Kẻ tấn công ghi lại phiên làm việc
của người dùng nhưng không thể biết được mật khẩu do phiên đó đã được mã hoá.
Điểm truy cập – Chúng nên làm việc với tất cả các điểm truy cập được hỗ trợ bởi chuẩn
802.1x với chế độ xác thực EAP. Nhanh chóng và hiệu quả – Tính xác thực nên được thực
hiện với số lượng giao thức nhỏ nhất và sử dụng tài nguyên ít nhất. Giá thành bảo trì
thấp – Chúng ta nên đơn giản hoá cho người quản trị. Một phương thức yêu cầu xác thực
cho người sử dụng thuờng không dễ cho người quản trị. Việc loại bỏ các chính sách bảo
trì có thể tạo gánh nặng cho việc quản trị hệ thống.
Dễ dàng cho người dùng – Các đặc tính nên thuận tiện cho người sử dụng. Ví dụ như việc
sử dụng các giấy chứng nhận để lưu trữ thiết bị gây phiền toái cho người quản trị lại là
điều thuận tiện cho người dùng. Smart cards, không thuận tiện cho người dùng nhưng dễ
dàng cho người quản trị. Người dùng không quan tâm tới việc gõ những mật khẩu ngắn, dễ
nhớ, nhưng lại phản đối việc sử dụng những chuỗi ký hiệu dài.
2.3. Các đặc trưng hữu ích khác (Tuỳ chọn)
Các phương thức tăng tính kế thừa – Việc này có thể ít bảo mật vì phương thức này kết
hợp phương thức xác thực của mạng không dây và các phương thức xác thực trên. Đặc tính
này sẽ hữu ích trong môi trường mà các hệ thống xác thực kế thừa không thể thay thế ngay
được.
Xác thực lại nhanh – Nó nên cung cấp có chế xác thực nhằm làm giảm thời gian cũng như
tính toán. Đặc biệt là việc thiết lập chuyển giao mềm cho người sử dụng di động. Khi bị bó
buộc về thời gian chuyển giao mềm phương thức này sẽ thực hiện quay vòng và có thể
hoàn thành việc cung cấp dịch vụ tên miền thông qua một số vòng lặp. Tuy nhiên việc này
đặt ra yêu cầu rất cao về tính bảo mật.
3. Các chứng nhận dựa trên phương thức xác thức
Ngày nay các mạng 802.11 xác thực theo chuẩn 802.1x . Chuẩn 802.1x xác định giao thức
xác thực mở rộng (EAP) trực tiếp qua lớp kết nối. EAP là giao thức truyền thông được sử
dụng thông qua các loại cơ chế xác thực khác nhau. EAP là chuẩn của IETF đưa ra vào
tháng 3/1998 cho kết nối điểm điểm.
Các phương pháp EAP phát triển cho mạng không dây được dựa trên việc kiểm tra thông
qua khoá công cộng và giao thức bảo mật tại lớp truyền tải (TLS). Các giao thức đó là
EAP-TLS, EAP-TTLS và PEAP. Chúng ta sẽ lần lượt xem xét các vấn đề này sau đó sẽ
tiến hành nghiên cứu cụ thể phương thức bảo mật cao hơn (còn gọi là Zero Knowledge
Password Proof – ZKPP).
3.1. EAP-TLS
EAP-TLS sử dụng khoá kiểm tra công khai TLS trong EAP để cung cấp việc xác thực lẫn
nhau giữa máy chủ và khách hàng. Với EAP-TLS, cả máy chủ và khách hàng đều phải
đăng ký chữ ký dạng số thông qua quyền chứng thực (CA) để kiểm tra.
Các đặc tính của EAP-TLS bao gồm:
• Xác thực lẫn nhau (giữa máy chủ và khách hàng)
• Trao đổi khoá (để thiết lập WEP động và khoá TKIP)
• Phân mảnh và nối lại (với bản tin EAP dài cần có phần kích thước kiểm tra nếu
cần)
• Kết nối nhanh (thông qua TLS)
3.2. EAP-TTLS
Phương thức TLS EAP đường hầm (EAP-TTLS) cung cấp một loạt các thuộc tính cho
một bản tin như là bản tin RADIUS EAP - dùng vận chuyển, EAP-TTLS có thể cung cấp
các chức năng như phương thức PEAP (sẽ thảo luận dưới đây). Tuy nhiên nếu mật khẩu
của RADIUS hoặc CHAP sẽ được mã hoá, thì TTLS có thể bảo vệ được các tính chất kế
thừa của RADIUS. Khi máy chủ TTLS gửi bản tin RADIUS tới máy chủ tại đích, nó sẽ
giải mã các thuộc tính bảo vệ của EAP-TTLS và chèn chúng trực tiếp vào bản tin chuyển
đi. Bởi vì phương thức này giống như PEAP, nên nó ít được sử dụng hơn.
Hình 1: Giao diện TTLS
3.3. PEAP
Giống như chuẩn TTLS, PEAP tạo khả năng xác thực cho mạng LAN không dây mà
không yêu cầu xác thực. Để bảo vệ EAP (PEAP) thêm lớp TLS lên trên cùng EAP giống
như EAP-TTLS, rồi sau đó sử dụng kết quả của phiên TLS như phương tiện vận chuyển để
bảo vệ phương thức EAP. PEAP sử dụng TLS để xác thực từ máy chủ tới máy trạm nhưng
không có chiều ngược lại. Theo phương thức này chỉ máy chủ yêu cầu khoá xác thực còn
khách hàng thì không. Máy chủ và máy trạm trao đổi chuỗi thông tin mã hoá trong TLS, và
bản tin TLS được xác thực và mã hoá sử dụng khoá đã được thông qua giữa hai bên.
PEAP cung cấp dịch vụ cho phương thức EAP như sau:
• Bản tin xác nhận (Những kẻ tấn công sẽ rất khó khăn trong việc chèn vào bản tin
EAP)
• Mã hoá bản tin (Những kẻ tấn công sẽ không thể đọc và giải mã bản tin EAP)
• Xác thực từ máy chủ đến khách hàng (vì thế phương thức này chỉ cần bảo vệ xác
thực từ khách hàng tới máy chủ)
• Trao đổi khoá (để thiết lập cho WEP động hoặc khoá TKIP)
• Phân mảnh và ghép lại (cần thiết nếu bản tin EAP dài)
• Thiết lập kết nối nhanh ( thông qua phiên TLS )
PEAP là cơ chế đặc biệt hữu ích để tăng tính bảo mật kế thừa từ phương thức EAP trên cơ
sở các đặc tính dưới đây.
Microsoft PEAP
Microsoft PEAP hỗ trợ quyền xác thực khách hàng thông qua MS-CHAP phiên bản 2, nó
giới hạn dữ liệu người dùng thông qua có chế chia miền Windows NT và hoạt động của
các thư mục.
Để sử dụng Microsoft’s PEAP, người dùng cần phải mua chứng thực riêng từ CA để thiết
lập IAS, và một chứng thực để lưu trữ tại máy tính cục bộ. Với khách hàng không dây để
xác nhận IAS, thì tại CA gốc phải thiết lập cho mỗi khách hàng này.
Tuy nhiên Windows XP bao gồm các chứng thực gốc của rất nhiều CA. Nếu chứng thực
IAS của máy chủ bao gồm gốc CA, thì không cần thêm cấu hình cho khách hàng. Nếu
người sử dụng mua chứng thực IAS cho Windows XP mà không có CA thì họ phải thiết
lập tên khách hàng không dây.
Cisco PEAP
Cisco PEAP hỗ trợ xác thực tại khách hàng thông qua mật khẩu một lần (OTP) và mật
khẩu truy cập. Điều này cho phép hỗ trợ cơ sở dữ liệu từ người quản lý như là bảo mật
RSA và cũng hỗ trợ cho cơ sở dữ liệu về mật khẩu truy nhập như LDAP, Novell NDS và
Microsoft . Thêm vào đó khách hàng Cisco PEAP có thể bảo vệ việc nhận dạng tin cho đến
khi mã hoá đường hầm TLS được thiết lập. Điều này cung cấp sự bảo đảm cho người sử
dụng trong quá trình dùng.
3.4. Các vấn đề với phương thức xác thực
Mặc dù có rất nhiều ưu điểm nhưng cũng có một số vấn đề với các phương thức chứng
thực dựa trên EAP.
3.4.1. Giá cho việc quản trị
Tất cả các phương thức đều yêu cầu phải có khoá xác thực được nhận dạng bởi khách
hàng. Điều này yêu cầu người quản trị mạng phải trả bản quyền cho CA hoặc các phần
mềm sử dụng. Tiếp theo mỗi thiết bị truy cập mạng phải được cấu hình để nhận được
quyền xác thực và CA. Phương thức EAP-TLS yêu cầu tất cả các thiết bị của người sử
dụng phải được chứng thực. Điều này kéo theo giá cả tăng. Ngoài ra còn chi phí bảo trì vận
hành,... danh sách các thiết bị huỷ bỏ trên mạng.
3.4.2. Giao thức trao đổi dài
Hạn chế thứ hai của các phương thức dựa trên EAP đó là số giao thức trao đổi yêu cầu cả
khách hàng và nhà quản lý. Ví dụ để xác thực người sử dụng thông qua giao thức EAP-
MD5 được bảo vệ bởi PEAP cần tới 6 thủ tục giữa khách hàng và nhà quản trị mạng. Yêu
cầu số lần trao đổi lớn dẫn đến trễ trên đường truyền. Bởi vì trễ trong việc xác thực là vấn
đề đặc biệt cho người sử dụng di động khi di chuyển từ vị trí này đến vị trí khác hoặc yêu
cầu chuyển giao.
3.4.3. Xác thực thiết bị người dùng yêu cầu Smart Card
Đây là vấn đề thứ ba cần quan tâm. Khi việc chứng thực được lưu trên thiết bị người sử
dụng thì thiết bị đó cần đảm bảo độ an toàn hơn thiết bị cá nhân thông thường. Trong môi
trường nơi mà thiết bị không đảm bảo độ an toàn hoặc có nhiều thiết bị cá nhân sử dụng
điều quan trọng là cần phải đảm bào quyền xác thực cho mỗi thiết bị. Smart card đó là cách
người dùng có thể mang theo mình nhưng chúng cũng không thuận tiện vì yêu cầu tất cả
các thiết bị ghép nối đi theo.