Xác thực trong VPN

Một phần của tài liệu Công nghệ mạng riêng ảo SSL VPN và ứng dụng trong xây dựng hệ thống truyền tệp (Trang 30)

Một trong những vấn đề cơ bản của an ninh mạng nói chung và an ninh mạng riêng ảo nói riêng là việc xác thực người dùng để đảm bảo chỉ có những người được phép mới có thể sử dụng hệ thống mạng. Xác thực người dùng được chia làm hai mức: mức máy tính và mức người sử dụng. Sau đây là một số phương pháp xác thực phổ biến hiện nay.

1.5.1.1 Xác thực dựa trên User Name và Password

Sự kết hợp của một tên người dùng (user name) và mật khẩu (password) là cách xác thực cơ bản nhất. Với kiểu xác thực này, tên người dùng và mật khẩu đăng nhập được đối chiếu với tên và người dùng được lưu trữ trên cơ sở dữ liệu hệ thống, nếu trùng khớp thì người dùng được xác thực và ngược lại người dùng bị cấm truy cập. Phương thức này không bảo mật lắm vì tài liệu xác nhận User được gửi đi ở dạng bản rõ không được mã hóa. Do đó, nó có thể bị lấy cắp trên đường truyền và sử dụng lại.

1.5.1.2 Xác thực sử dụng mật khẩu một lần

Xác thực mật khẩu một lần ngăn chặn việc sử dụng lại các mật khẩu khi bị lấy cắp trên đường truyền, phương pháp này yêu cầu mỗi phiên làm việc phải sử dụng một mật khẩu mới, không sử dụng lại mật khẩu của phiên làm việc trước. Do đó nếu mật khẩu bị lấy cắp trên đường truyền cũng không thể sử dụng được. Phương pháp dùng một nhóm thông qua bí mật (secret pass-phrase) được tạo ra bởi người dùng để tạo ra một dãy tuần tự các mật khẩu một lần OTP (One-Time Password). Nhóm thông qua bí mật của người dùng không bao giờ được chuyển ra kh i máy tính cục bộ và truyền trên mạng, do vậy sẽ không bị tấn công.

Một chuỗi tuần tự các OTP được sinh ra bởi việc áp dụng một hàm băm bảo mật (secret hash function) đa thời gian đến các bản tin được tạo ra trong bước khởi tạo. OTP đầu tiên được sinh ra bằng cách chuyển bản tóm lược thông điệp qua hàm băm N lần, trong đó N được chỉ định bởi người dùng. OTP kế tiếp được sinh ra bằng cách chuyển bản tóm lược thông điệp qua hàm băm N-1 lần và cứ như thế cho đến khi OTP thứ N được sinh ra.

Khi người sử dụng đăng nhập vào mạng, máy chủ phục vụ đưa ra yêu cầu thách thức gồm một số và một chuỗi các ký tự, gọi là seed. Để đáp ứng yêu cầu, người dùng nhập vào con số thách thức và seed kèm theo nhóm thông qua bí mật. Danh sách các OTP được sinh ra tại máy của người dùng được tới máy chủ phục vụ mạng. Máy này cũng lặp lại hàm băm và so sánh kết quả với mật khẩu tức thời được lưu trữ trong máy (mật khẩu này được sử dụng cho lần đăng nhập vào mạng gần đây nhất). Nếu chúng phù hợp thì người dùng sẽ được đăng nhập vào mạng. Số yêu cầu được giảm đi và mật khẩu tức thời lần cuối cùng sẽ được lưu lại cho lần đăng nhập tiếp theo.

1.5.1.3 Xác thực theo giao thức PAP

PAP được thiết kế để hai máy tính tham gia giao tiếp thông qua giao thức PPP xác thực lẫn nhau. PAP là một giao thức bắt tay hai bước. Máy tính tạo kết nối sẽ gửi một cặp nhận dạng người dùng và mật khẩu tới hệ thống đích để thiết lập kết nối, hệ thống đích sẽ xác nhận máy tính đó và chập nhận kết nối.

Xác thực PPP có thể được sử dụng khi khởi tạo kết nối cũng như trong một phiên làm việc PPP để xác thực lại. Khi kết nối PPP được thiết lập, xác thực PPP có thể được chuyển qua đường kết nối đó. PAP không bảo mật vì thông tin được truyền đi ở dạng bản rõ và không có cơ chế bảo vệ việc tấn công lại ([19]).

CHAP cũng là mô hình xác thực dựa trên user name/password được thiết kế gần giống với PAP nhưng bảo mật hơn và được sử dụng khi khởi tạo kết nối PPP, cũng như sau khi kết nối được thiết lập. Khi người dùng đăng nhập vào hệ thống, máy chủ đảm nhiệm vai trò xác thực sẽ gửi một thông điệp thách thức (challenge message) trở lại máy tính người dùng. Máy tính người dùng sẽ phản hồi lại user name và password được mã hóa. Máy chủ xác thực sẽ so sánh phiên bản xác thực người dùng được lưu giữ với phiên bản mã hóa vừa nhận, nếu trùng khớp người dùng sẽ được xác thực. Bản thân Password không bao giờ được gửi qua mạng. Phương thức CHAP thường được sử dụng khi người dùng đăng nhập vào xác máy chủ từ xa của công ty chẳng hạn như RAS server và dữ liệu chứa password được mã hóa gọi là password băm (hash password) ([19]).

1.5.1.5 Xác thực theo phương pháp Kerberos

Xác thực Kerberos dùng một máy chủ trung tâm để kiểm tra việc xác thực người dùng và cấp phát thẻ thông hành (service tickets) để người dùng có thể truy cập vào tài nguyên. Kerberos là một phương thức rất an toàn trong xác thực bởi vì dùng cấp độ mã hóa rất mạnh. Kerberos cũng dựa trên độ chính xác của thời gian xác thực giữa máy chủ và máy khách, do đó cần đảm bảo tính đồng bộ về mặt thời gian. Kerberos là nền tảng xác thực chính của nhiều OS như Unix, Windows

1.5.1.6 Xác thực theo phương pháp Tokens

Tokens là phương tiện vật lý như các thẻ thông minh (smart cards) hoặc thẻ đeo của nhân viên (ID badges) chứa thông tin xác thực. Tokens có thể lưu trữ số nhận dạng cá nhân (PIN), thông tin về user hoặc password. Các thông tin trên token chỉ có thể đọc và xử lý bởi các thiết bị đặc dụng, ví dụ như thẻ thông minh được đọc bởi đầu đọc thông minh gắn trên máy tính, sau đó thông tin này được gửi đến máy chủ xác thực. Tokens chứa chuỗi text hoặc giá trị số duy nhất, thông thường mỗi giá trị này chỉ sử dụng một lần ([1]).

1.5.1.7 Xác thực dựa trên Biometrics

Biometrics (phương pháp nhận dạng sinh trắc học) là mô hình xác thực dựa trên đặc điểm sinh học của từng cá nhân như quét dấu vân tay (fingerprint scanner), quét võng mạc mắt (retinal scanner), nhận dạng giọng nói (voice-recognition), nhận dạng khuôn mặt (facerecognition).Vì nhận dạng sinh trắc học hiện rất tốn kém chi phí khi triển khai nên không được chấp nhận rộng rãi như các phương thức xác thực khác ([1]).

Một phần của tài liệu Công nghệ mạng riêng ảo SSL VPN và ứng dụng trong xây dựng hệ thống truyền tệp (Trang 30)