Các phương pháp chứng thực (Authentication)

Một phần của tài liệu Mật mã và An toàn thông tin trên mạng máy tính (Trang 116)

I. Kiểm soát truy nhập mạng

2.Các phương pháp chứng thực (Authentication)

Chứng thực là một hành động nhằm thiết lập hoặc xác thực một cái gì đó (hoặc một người nào đó) đáng tin cậy, có nghĩa là, những lời khai báo do người đó đưa ra hoặc về vật đó là sự thật.

Trong an ninh máy tính (computer security), chứng thực là một quy trình nhằm cố gắng xác minh nhận dạng số (digital identity) của phần truyền gửi thông tin (sender) trong giao thông liên lạc chẳng hạn như một yêu cầu đăng nhập. Phần gửi cần phải xác thực có thể là một người dùng sử dụng một máy tính, bản thân một máy tính hoặc một chương trình ứng dụng máy tính (computer program).

Những nhân tố chứng thực (authentication factors) dành cho con người nói chung được phân loại theo ba trường hợp sau:

- Cái bạn biết (what you know?): là những gì người dùng biết, như: mật khẩu, số PIN, …

- Cái bạn có (what you have?): là những gì người dùng có, chẳng hạn như: smart card, security token, …

- Bạn là ai? (who you are?): là những cái mà người dùng sở hữu bẩm sinh ví dụ như: vân tay, võng mạc, …

Có một số hình thức chứng thực sau:

- Chứng thực một chiều: máy chủ chứng thực được cho client, còn client thì không chứng thực được máy chủ.

- Chứng thực hai chiều: cả hai đầu đều chứng thực cho nhau.

a. Chứng thực bằng Username/Password

Sự kết hợp của Username và Password là cách xác thực cơ bản nhất. Thông tin về username/password do người dùng cung cấp sẽ được đối chiếu với dữ liệu được lưu trữ trên hệ thống, nếu trùng khớp thì quá trình xác thực thành công, còn ngược lại thì bị chặn truy nhập.

Một số nguy cơ bị lộ username/password:

- Người dùng để lộ mật khẩu

- Bị Hacker tấn công: vét cạn, ăn cắp, … Một số giải pháp khắc phục:

- Đặt mật khẩu dài, bao gồm cả chữ cái, số, ký tự đặc biệt

- Không nên đặt cùng một password ở nhiều nơi, nhiều ứng dụng

- Người quản trị nên xem xét cẩn thận việc cung cấp tài khoản cho từng đối tượng người dùng, không cấp mới nếu không thực sự cần thiết.

b. Chứng thực bằng giao thức CHAP (Challenge Hanshake Authentication Protocol)

CHAP là một giao thức dùng để mã hoá Password trước khi gửi lên đường truyền, sử dụng nghi thức bắt tay ba bước (Three-Way-Hanshake) nhằm phòng chống Hacker ăn cắp Password, giả mạo người dùng.

Nguyên lý hoạt động của CHAP:

 Bước 1 : Router 1 gửi yêu cầu kết nối tới Router 2

 Bước 2 : Router 2 gửi lại Router 1 gói tin với các trường sau:

- 01: xác định loại bản tin là challenge

- ID: xác định phiên

- Random: số ngẫu nhiên sinh ra bởi Router 2

- Tên xác thực của Router 2

 Bước 3 : Router 1 nhận được bản tin với code = 1 sẽ xử lý như sau :

- Tìm password xác thực lưu trên CSDL của mình dựa vào tên của Router2

- Tính giá trị băm Hash = ID + Random + Password

- Gửi gói tin với code = 2, Random, Hash và tên Router 1 sang Router 2

 Bước 4 : Router 2 nhận được gói tin với code = 2, thực hiện tương tự như Router 1 và so sánh giá trị Hash tạo ra với giá trị Hash nhận được (adsbygoogle = window.adsbygoogle || []).push({});

 Bước 5 :

- Nếu giống nhau thì gửi bản tin có code =3, thành công (success)

 Bước 6 :

- Router 1 nhận được gói tin có code = 3 thì quá trình xác thực kết thúc

- Còn không thì xác thực không thành công và kết nối bị thất bại.

c. Chứng thực bằng Kerberos

Kerberos là một giao thức mật mã dùng để xác thực trong các mạng máy tính hoạt động trên những đường truyền không an toàn. Giao thức Kerberos có khả năng chống lại việc nghe lén hay gửi lại các gói tin cũ và đảm bảo tính toàn vẹn của dữ liệu. Mục tiêu khi thiết kế giao thức này là nhằm vào mô hình máy chủ-máy khách (client- server) và đảm bảo chứng thực cho cả hai chiều. Tên của giao thức Kerberos được lấy từ tên của con chó ba đầu Cerberus canh gác cổng địa ngục trong thần thoại Hy Lạp.

Kerberos được bắt đầu phát triển tại MIT (học viên kỹ thuật Masschusetts) vào cuối năm 1980 và được Microsoft đưa vào các phiên bản hệ điều hành từ Windows 2000 trở về sau.

Giao thức được xây dựng dựa trên mã hóa đối xứng (Symmetric) và cần đến một bên thứ ba mà cả hai phía tham gia giao dịch tin tưởng.

 Các thành phần của hệ thống chứng thực Kerberos

- Ticket: vé (sự cấp phép cụ thể)

- Ticket Granting Ticket (TGT): đưa ra bởi trung tâm cấp quyền (Central Authozity) cho phép người dùng yêu cầu một dịch vụ nào đó.

- Key Distribution Central (KDC): trung tâm phân phối khoá, cung cấp cho Client TGT, chứng thực và cho phép User yêu cầu một dịch vụ nào đó.

- Ticket Granting Server (TGS): thành phần kiểm tra Client có được phép nhận một ticket hay không.

Sơ đồ hoạt động của hệ thống Kerberos

- B1: Client liên lạc với KDC yêu cầu xác thực

- B2: KDC trả về cho Client vé để yêu cầu TGS

- B3: Client chuyển cho TGS vé nhận được từ KDC và yêu cầu vé để sử dụng một dịch vụ cụ thể nào đó.

- B4: TGS trả về cho Client một vé (ticket) để truy cập vào máy chủ chứa ứng dụng mà người dùng yêu cầu.

- B5: Người dùng sử dụng vé nhận được để truy cập vào Server ứng dụng.  Ưu điểm:

- Mật khẩu không được truyền trực tiếp trên mạng, hạn chế tối đa các tấn công

- Giao thức được mã hoá theo các chuẩn mã hóa cao cấp như Trip DES, RC4, AES nên khá an toàn

- Thực hiện cơ chế Single-sign-on: đăng nhập một lần, hạn chế tấn công đánh cắp và dùng lại vé

- Thay vì gởi các thông tin gốc và mật khẩu trên mạng, Kerberos sử dụng vé đã mã hóa để chứng minh danh tính của cả nguời sử dụng và máy chủ.

- Giao thức Kerberos được cung cấp bởi nhiều hệ điều hành hiện nay như: Windows, Mac OS, Unix, …

 Nhược điểm :

- Nếu máy chủ trung tâm ngừng hoạt động thì mọi hoạt động của hệ thống sẽ bị ngừng lại. Điểm yếu này có thể được hạn chế bằng cách sử dụng nhiều máy chủ Kerberos.

- Giao thức đòi hỏi đồng hồ của tất cả những máy tính liên quan phải được đồng bộ. Nếu không đảm bảo điều này, cơ chế nhận thực giữa trên thời hạn sử dụng sẽ không hoạt động. Thiết lập mặc định đòi hỏi các đồng hồ không được sai lệch quá 5 phút.

- Cơ chế thay đổi mật khẩu không được tiêu chuẩn hóa

- Với cơ chế đăng nhập một lần trên một máy tính, nếu máy tính đó rơi vào tay attacker thì toàn bộ dữ liệu người dùng bị đánh cắp. (adsbygoogle = window.adsbygoogle || []).push({});

d. Chứng thực sử dụng thẻ bài (Token)

Token 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 - Personal Identification Numbers (PINs), thông tin về user, hoặc password. Các thông tin trên token chỉ có thể được đọc và xử lý bởi các thiết bị đặc dụng, ví dụ như thẻ smart card được đọc bởi đầu đọc smart card gắn trên Computer, sau đó thông tin này được gửi đến authenticating server.

 Ưu điểm:

- Được coi là phương pháp an toàn nhất.

- Thẻ thông minh và thẻ tín dụng về cơ bản là tương tự nhau. Rất nhiều công ty sử dụng thẻ thông minh cho việc truy cập vật lý tại văn phòng, thanh toán tiền dịch vụ, …

- Nó cũng thích hợp khi mang trong ví, điều đó cũng giúp nó có thể được bảo vệ một cách tốt hơn.

 Nhược điểm:

- Chi phí ban đầu triển khai cơ sở hạ tầng cộng với chi phí trang bị thiết bị đọc thẻ là khá tốn kém

- Phải có nhiều điểm chứng thực kết nối với nhau.

e. Phương pháp chứng thực bằng Certificates

Hệ thống chứng thực có một server Certification Authority (CA) để tạo ra các chứng chỉ (Certificates) như: smart card, chữ kí điện tử…

Sử dụng cơ sở hạ tầng khoá công khai (PKI) để chứng thực

 Ưu điểm:

- Ứng dụng được trong thương mại điện tử  Nhược điểm:

- Việc triển khai PKI kéo dài và tốn kém (từ 8 đến 14 tháng)

- SmartCard làm tăng giá thành triển khai và bảo trì

- Dịch vụ cung cấp CA tốn kém.

f. Phương pháp chứng thực bằng sinh trắc học (biommetrics)

Biometrics (phương pháp nhận dạng sinh trắc học) mô hình xác thực dựa trên đặc điểm sinh học của từng cá nhân. 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 (face recognition), ...

 Ưu điểm:

- Có thể rất chính xác

- Xác thực nhanh chóng (nhỏ hơn 1 giây)

- Sự tác động từ phía người dùng thấp

- Có thể áp dụng đồng thời nhiều biện pháp: vân tay, võng mạc, giọng noi, khuôn mặt, …

 Nhược điểm:

- Giá thành cao: triển khai hệ thống xác thực bằng sinh trắc học đòi hỏi chi phí cho cả phần cứng và phần mềm

- Trong thực tế, vẫn có khả năng hệ thống nhận diện sai.

g. Chứng thực sử dụng kết hợp nhiều phương pháp (MultiFactor)

Là kiểu chứng thực sử dụng nhiều hơn một phương pháp, tạo ra nhiều tầng bảo vệ khác nhau

 Ưu điểm: (adsbygoogle = window.adsbygoogle || []).push({});

- Giảm sự phụ thuộc vào password

- Có hệ thống xác thực mạng

- Cung cấp khả năng cho hệ thống PKI (Public Key Infractructure)  Nhược điểm: Tăng chi phí

- Triển khai: đầu tư thiết bị, đào tạo người dùng và quản trị

- Duy trì: không phải lúc nào cũng tương thích giữa các nhà sản xuất

- Nâng cấp: sự không ổn định của nhà sản xuất, công nghệ mới xuất hiện.

Một phần của tài liệu Mật mã và An toàn thông tin trên mạng máy tính (Trang 116)