Chương 1 giới thiệu về đề tài luận văn, nêu lên động lực và phạm vi thực hiện của đề tài. Chương 2 trình bày các khác niệm cơ bản, kiến thức nền tảng liên quan đến những vấn đề bảo mật cho hệ thống công nghệ thông tin nói chung và trong ứng dụng trên thiết bị di động nói riêng. Chương 3 phân tích, đánh giá các giải pháp, công trình nghiên cứu liên quan phổ biến hiện nay, từ đó áp dụng vào việc thiết kế, xây dựng và thực hiện đề tài này. Chương 4 phân tích một số rủi ro xảy ra trong thực tế liên quan đến vấn đề bảo mật và xác thực người dùng trên ứng dụng di động, từ đó đề các giải pháp để khắc phục.
Chương 5 đưa ra giải pháp thí điểm cho việc xác thực người dùng cho một bài toán cụ thể trong thực tế. Đồng thời áp dụng những phân tích, đánh giá ở Chương 3, 4 để xây dựng các mục tiêu và tiêu chí trong mô hình bảo mật của giải pháp. Chương 6 đánh giá và phân tích giải pháp thí điểm trên các khía cạnh bảo mật cũng như đề ra hướng giải quyết cho các vấn đề tồn đọng mà mô hình gặp phải. Chương 7 xây dựng và triển khai thử nghiệm giải pháp đã đề xuất trong điều kiện thực tế dựa trên những kịch bản được thiết kế nhằm đánh giá mức độ thỏa mãn các mục tiêu đề ra ở Chương 5.
Chương 8 tổng kết lại những kết quả đã đạt được trong quá trình nghiên cứu, phân tích, đánh giá và đề ra giải pháp. Nêu lên những mặt hạn chế, đồng thời đề ra hướng phát triển cho đề tài trong tương lai. 2 KIẾN THỨC NỀN TẢNG 2. CÁC NGUYÊN TẮC TRONG BẢO MẬT THÔNG TIN Mô hình tam giác bảo mật CIA [5] hiện nay vẫn được đánh giá cao bởi cách tiếp cận đơn giản phù hợp với việc tìm hiểu, hình dung, và giải quyết các vấn đề trong lĩnh vực bảo mật thông tin ở mức ý niệm.
Tam giác CIA được hình thành từ ba khái niệm cơ bản gồm: • Confidentiality: Tính bí mật dữ liệu. • Integrity: Tính toàn vẹn dữ liệu. • Availability: Tính sẵn sàng dữ liệu. Ba yếu tố C-I-A trong mô hình này thể hiện sự cân bằng của 3 đặc tính cần phải có khi xây dựng những hệ thống tương tác đến dữ liệu của người dùng.
Ngoài ra, khi cần mở rộng phạm vi tác động của việc bảo mật thông tin, còn có 2 khái niệm khác được bổ sung bao gồm: Tính xác thực (Authentication), và Chống thoái thác (Non-repudiation) [5]. TÍNH BÍ MẬT DỮ LIỆU Dữ liệu phải được bảo đảm an toàn để bảo vệ sự riêng tư của người sở hữu dữ liệu đó. Điều này đồng nghĩa với việc ngăn chặn dữ liệu bị tiết lộ trong suốt quá trình truyền tải giữa các bên liên quan. Tính bí mật có thể đạt được nhờ vào cơ chế mã hóa thông tin, đảm bảo dữ liệu chỉ có thể được truy xuất bởi người gửi và người nhận.
Một khi nguyên tắc này bị phá hủy, các thông tin nhạy cảm của người dùng 4 2. CÁC NGUYÊN TẮC TRONG BẢO MẬT THÔNG TIN 5 như mật khẩu, mã xác thực, chứng chỉ, số thẻ tín dụng,. có thể bị đánh cắp và sử dụng bất hợp pháp bởi những kẻ tấn công. TÍNH TOÀN VẸN DỮ LIỆU Tính toàn vẹn dữ liệu đảm bảo rằng thông tin trong quá trình truyền tải, lưu trữ không bị thay đổi so với dữ liệu gốc ban đầu.
Khi yếu tố này bị vi phạm, dữ liệu gốc và dữ liệu truy xuất không còn nhất quán. Sự sai lệch thông tin này có thể xuất phát từ những vấn đề kỹ thuật trong quá trình truyền tải và lưu trữ (như lỗi đường truyền, lỗi phần cứng,.), hoặc nghiêm trọng hơn là do yếu tố con người, khi mà kẻ tấn công sửa đổi dữ lệu có chủ ý nhằm một đích nào đó. Để ngăn ngừa việc này,hàm băm (hash function) thường được sử dụng bởi tính chất một chiều của nó, đó là ứng với một dữ liệu đầu vào bất kỳ là a và hàm băm h(), giá trị đầu ra luôn có chiều dài cố định, và một sự biến đổi nhỏ của giá trị đầu vào cũng làm giá trị đầu ra thay đổi rất khác biệt (không thể đoán trước được). Do đó, khi có một giá trị của hàm băm, gần như không thể xác định được giá trị đầu vào của hàm.
TÍNH SẴN SÀNG DỮ LIỆU Tính chất này đảm bảo rằng người dùng hợp lệ có thể truy cập và sử dụng dữ liệu của họ bất kỳ lúc nào. Yếu tố này nghe qua có vẻ mâu thuẩn với tiêu chí bí mật của dữ liệu, đó là một yếu tố đòi hỏi dữ liệu phải được lưu trữ và bảo vệ nghiêm ngặt, một yếu tố đòi hỏi dữ liệu phải luôn sẵn sàng để được truy xuất. Đây chính là lý do đòi hỏi tam giác CIA phải cân bằng. Tính sẵn sàng của dữ liệu có thể bị ảnh hưởng bởi những tác nhân bên trong hệ thống như phần mềm bị gián đoạn ngoài ý muốn, phần cứng ngưng hoạt động do hỏng hóc, hoặc đến từ bên ngoài như việc hệ thống đối mặt với các cuộc tấn công từ chối dịch vụ.
Một ví dụ minh họa cho thấy 3 yếu tố C-I-A luôn cần phải được bảo đảm trong tất cả những giải pháp liên quan đến bảo mật, điển hình là trong một hệ thống e-Commerce. Trong hệ thống này, 3 yếu tố C-I-A bộc lộ vai trò của nó như sau: • Tính bí mật: thông tin thẻ tín dụng (credit card) phải được bảo vệ để chống lại việc bị đánh cắp để thực hiện những giao dịch gian dối. • Tính toàn vẹn: khi khách hàng mua món hàng A như mô tả trên hệ thống, họ cần phải nhận được đúng món hàng họ đã đặt. Không thể để xảy ra trường hợp mô tả về món hàng A đã bị thay đổi so với mô tả ban đầu.
• Tính sẵn sàng: hệ thống vận hành liên tục 24 giờ/ngày, 7 ngày/tuần và khách hàng hợp lệ có thể mua hàng bất kỳ khi nào họ muốn. XÁC THỰC NGƯỜI DÙNG 6 2. TÍNH XÁC THỰC Tính xác thực [6] được thực hiện thông qua quy trình xác minh người dùng bằng nhiều hình thức khác nhau nhằm ngăn chặn việc giả mạo danh tính trong quá trình tiếp cận, trao đổi thông tin với hệ thống. Việc này đòi hỏi người dùng hợp lệ phải cung cấp những minh chứng để chứng nhận rằng anh ta đúng là anh ta và là một người dùng hợp lệ.
TÍNH CHỐNG THOÁI THÁC Chống thoái thác dữ liệu là một cơ chế loại trừ việc một người đã gửi thông điệp hợp lệ nhưng sau đó lại chối bỏ chúng. Trong ví dụ trên, một người chủ sở hữu thẻ tín dụng, thực hiện việc mua sắm trên hệ thống e-Commerce, giao dịch thực hiện thành công nhưng lại từ chối thanh toán và cho là giao dịch đó không phải do anh ta thực hiện. Điều này được thực hiện thông qua chữ ký số, trong đó hệ thống sử dụng cơ chế khóa riêng tư - khóa công khai. Người gửi "ký" vào thông điệp cần gửi bằng khóa riêng tư và người nhận có thể kiểm chứng thông điệp có phải đúng là của người gửi hay không thông qua khóa công khai của người đó.
X ÁC THỰC NGƯỜI DÙNG 2. AUTHENTICATION Xác thực [7] là quá trình xác minh danh tính của người dùng là chính xác so với những gì họ đang tuyên bố. Mục đích của việc này nhằm ngăn chặn những truy cập bất hợp lệ vào hệ thống. Điển hình là việc cố tình sử dụng sai danh tính hay dùng thông tin đăng nhập của người khác để thực hiện những truy cập trái phép.
Thông thường ba yếu tố sau được sử dụng nhằm xác định người dùng có phải chính là người mà họ đang tuyên bố hay không: • Dựa trên những gì người dùng biết. • Dựa trên những gì người dùng sở hữu. • Dựa trên đặc trưng duy nhất của người dùng. Yếu tố thứ nhất rất dễ dàng để áp dụng cho các hệ thống bảo mật bởi sự thuận tiện trong việc hiện thực và triển khai nên nó được sử dụng trong hầu hết các hệ thống thông dụng.
Thông thường, yếu tố này được hiện thực dưới hình thức tên đăng nhập / mật khẩu (username / password). Tuy nhiên khuyết điểm của nó là sự phụ thuộc vào khả năng ghi nhớ của người dùng. Thay vì nhớ nhiều mật khẩu phức tạp thỏa mãn các tiêu chuẩn mật khẩu mạnh, người dùng lại chọn những 2. XÁC THỰC NGƯỜI DÙNG 7 mật khẩu đơn giản và sử dụng đồng thời cho nhiều hệ thống khác nhau.
Theo số liệu của NordPass vào năm 2020 [8], có tới 2, 543, 285 người sử dụng mật khẩu phổ biến và vô cùng đơn giản là "123456". Điểm yếu này tạo sự thuận lợi cho các loại hình tấn công như tấn công vét cạn hoặc tấn công thông qua từ điển bằng việc khai thác tính đơn giản và phổ biến của chúng. Yếu tố thứ hai đã khắc phục được hạn chế của yếu tố thứ nhất, đó là người dùng hệ thống hỗ trợ xác thực người dùng bằng những gì người dùng có không phải nhớ gì về thông tin dùng để xác thực, ví dụ không cần phải nhớ tên đăng nhập, không cần phải nhớ mật khẩu. Tuy nhiên, hạn chế của mô hình này là để bảo đảm tính sẵn sàng thì người dùng phải luôn mang theo bên mình các thiết bị vật lý để hỗ trợ xác thực như các loại thẻ từ, thẻ thông minh, thiết bị di động.
Ngoài ra, trong trường hợp các thiết bị hỗ trợ xác thực bị thất lạc, nếu hệ thống không được cập nhật kịp thời để hủy tính hợp lệ của thiết bị thì nó không thể nào xác định được người đang thực hiện hành vi xác thực có đúng là chủ sở hữu của thiết bị đó hay không. Bên cạnh đó, chi phí triển khai cũng là một vấn đề cần cân nhắc khi áp dụng yếu tố xác thực này do phải sử dụng thêm phần cứng hỗ trợ làm chi phí đầu tư cao hơn so với yếu tố đầu tiên. Cuối cùng, yếu tố dựa vào đặc trưng duy nhất tận dụng những thuộc tính riêng mà chỉ người dùng mới có để khắc phục nhược điểm của 2 yếu tố trên, đó là người dùng không phải nhớ và cũng không phải bảo quản thiết bị hỗ trợ đăng nhập. Tuy nhiên phương án này cũng tồn tại nhiều mặt hạn chế.
Đầu tiên chính là sự ảnh hưởng của yếu tố môi trường trong quá trình xác thực như ánh sáng, độ chói,. làm giảm độ chính xác.