Con ngựa thành Troy - Chắc hẳn hầu hết những người đang đọc bài viết này của mình đều đã nghe về câu chuyện này rồi. Đó là câu chuyện trong Thần thoại Hy Lạp, kể về cuộc chiến tại thành Troy. Cuộc chiến đã diễn ra trong hơn 10 năm, nhưng phe tiến công vẫn không thể đánh chiếm được thành Troy. Dù tấn công bao nhiêu lần đi nữa thì bức tường thành Troy vẫn vững vàng đứng đó, ngăn chặn mọi cố gắng xâm nhập của phía tiến công.
Cuộc chiến chỉ kết thúc khi Odysseus đưa ra mưu kế để lừa nhân dân thành Troy kéo một con ngựa gỗ khổng lồ - thứ mà chứa Odysseus và các binh sĩ ở bên trong, vào toà thành kiên cố của mình. Để rồi khi màn đêm buông xuống thì thành Troy "không thể công phá" đã bị đánh chiếm từ ngay bên trong.
Điều mình ấn tượng nhất trong câu chuyện này là sự vững chãi của bức tường thành Troy. Nhờ bức tường thành này mà nhân dân thành Troy đã được bảo vệ trước cuộc đại chiến trong những hơn 10 năm. Giống như một căn nhà cần được làm tốt phần móng mới có thể xây lên cao, khi có một nền tảng được xây vững chãi thì hệ thống bảo vệ mới có thể phát huy tác dụng trước các cuộc tấn công từ bên ngoài.
Đó là ý nghĩa chính của nội dung chúng ta sẽ cùng tìm hiểu hôm nay.
1. Mô hình bảo mật là gì?
Mô hình bảo mật xác định cụ thể các khía cạnh thiết yếu của bảo mật và mối quan hệ của chúng với hiệu suất của hệ điều hành. Không một tổ chức nào có thể bảo vệ các dữ liệu nhạy cảm của mình một cách hiệu quả nếu không có một mô hình bảo mật tốt. Chúng ta có thể nói rằng mục đích chính của các mô hình bảo mật là cung cấp mức độ hiểu biết cần thiết để thực hiện thành công và hiệu quả các yêu cầu bảo vệ.
Các mô hình bảo mật thông tin là những thủ tục được sử dụng để xác nhận các chính sách bảo mật, mô hình sẽ cung cấp một tập hợp các chỉ thị chính xác mà máy tính có thể tuân theo để thực hiện các quy trình, thủ tục và khái niệm bảo mật quan trọng có trong một chương trình bảo mật.
Các mô hình bảo mật tập trung vào việc đảm bảo cho ba yếu tố chính trong bảo mật dữ liệu. Ba yếu tố đó chính là tam giác CIA.
2. Tam giác CIA
CIA là viết tắt của Central Intelligence Agency....
CIA là ba từ viết tắt, đại diện cho ba yếu tố quan trọng khi bảo vệ cho dữ liệu, đó là:
- Tính bí mật (Confidentiality)
- Tính toàn vẹn (Integrity)
- Tính sẵn dùng (Availability)
Ba yếu tố trên được đưa ra nhằm ngăn chặn ba mối nguy lớn khi dữ liệu là mục tiêu bị tấn công. Ba mối nguy này được gọi là tam giác 3D:
- Tiết lộ (Disclosure)
- Phá huỷ, sửa đổi (Destruction)
- Ngăn chặn truy cập (Denial)
2.1. Tính bí mật
Tính bí mật thể hiện nỗ lực để đảm bảo dữ liệu được giữ bí mật hoặc riêng tư. Để thực hiện được điều này, quyền truy cập thông tin phải được kiểm soát để ngăn chặn việc chia sẻ dữ liệu trái phép - dù là cố ý hay vô tình. Một nội dung quan trọng của việc duy trì tính bí mật là đảm bảo những người không đủ quyền hạn sẽ không thể truy cập các thông tin trong hệ thống.
Ví dụ như trong một công ty về công nghệ gồm các nhân viên kỹ thuật, nhân viên khối tài chính, nhân viên khối lập trình,... Vậy thì nhân viên các bộ phận khác không thể được truy cập vào các danh sách thu chi của công ty, không thể xem các tệp tin báo cáo tài chính, dữ liệu lương của nhân viên,... mà vốn chỉ bộ phận tài chính kế toán được phép truy cập.
Tính bí mật có thể bị xâm phạm bằng nhiều cách. Kẻ tấn công có thể thực hiện Kỹ nghệ xã hội nhắm tới các nhân viên thuộc tổ chức, tấn công vào một ứng dụng hoặc cố gắng xâm nhập cơ sở dữ liệu của tổ chức,... Và hậu quả khi tính bí mật của dữ liệu bị xâm phạm thì quá rõ ràng rồi (GHTK bị hacker đánh cắp mã nguồn)
2.2. Tính toàn vẹn
Tính toàn vẹn được thể hiện qua việc đảm bảo dữ liệu được lưu trữ là đáng tin cậy và không bị làm giả hay sửa đổi trái phép. Điều này chỉ được duy trì khi dữ liệu xác thực, chính xác và đáng tin cậy.
Lấy ví dụ với hệ thống quản lý đào tạo của một trường đại học, trong hệ thống này có lưu trữ đầy đủ thông tin về sinh viên (đã tốt nghiệp và đang theo học), thời khoá biểu của mỗi sinh viên cùng với điểm số của họ. Nếu vì bất cứ lý do nào, kể cả do nhân viên nhập sai dữ liệu hay hệ thống đã tải thiếu một dòng điểm của sinh viên X do lỗi kỹ thuật,... thì lúc này tính toàn vẹn của dữ liệu đã bị xâm phạm (40 giáo viên sửa điểm cho học sinh).
Việc bảo đảm tính toàn vẹn dữ liệu không hề dễ dàng. Bởi dữ liệu có thể bị ảnh hưởng do một sự cố bất ngờ nào đó. Để giảm các khả năng bị ảnh hưởng tính toàn vẹn thì có thể sử dụng một số biện pháp như băm dữ liệu, sao lưu,... kết hợp mới một mô hình bảo mật thích hợp.
2.3. Tính sẵn dùng
Kể cả khi đảm bảo được tính bí mật và tính toàn vẹn thì dữ liệu vẫn có thể trở nên vô giá trị nếu tại thời điểm cần sử dụng thì lại không truy cập được. Tính sẵn dùng được duy trì bởi việc vận hành hệ thống ứng dụng, máy chủ, đường truyền mạng,... sao cho mọi thứ hoạt động bình thường, đảm bảo các cá nhân có quyền truy cập vào thông tin cụ thể phải có khả năng sử dụng thông tin đó khi họ cần và việc truy cập dữ liệu sẽ không mất nhiều thời gian.
Với những tổ chức, công ty, tập đoàn lớn thì tính sẵn dùng có mức độ quan trọng cực kỳ cao. Thử nghĩ mà xem, với những nền tảng mua sắm trực tuyến lớn như Amazon, Shopee, Tiki, Lazada thì chỉ cần vài phút hệ thống ngưng hoạt động, khách hàng không để đặt hàng thôi là họ đã lỗ hàng trăm triệu đồng rồi. Nếu hệ thống ngưng hoạt động vài giờ, vài ngày thì tổng thiệt hại khó mà đếm được.
Phương pháp tấn công thường thấy của các hacker là thực hiện cuộc tấn công DDoS làm nghẽn máy chủ, khiến những khách hàng bình thường không thể sử dụng dịch vụ.
Để phòng chống bị tấn công DDoS thì chúng ta có thể thường xuyên theo dõi tin tức về các lỗ hổng có thể kiến máy chủ bị DoS bởi chính nó, đây là phòng thủ từ phía trong. Kết hợp thêm với các biện pháp phòng thủ từ bên ngoài như: triển khai hệ thống cân bằng tải, sử dụng Cloudflare,...
3. Một số mô hình bảo mật
3.1. Mô hình Bell LaPadula
Mục tiêu của mô hình Bell LaPadula là duy trì tính bí mật của dữ liệu. Nguyên lý của mô hình này là:
No read up - No write down
- No read up: một chủ thể chỉ có thể đọc các dữ liệu có mức độ truy cập thấp hơn hoặc bằng với mức độ truy cập của bản thân.
- No write down: một chủ thể chỉ có thể ghi các dữ liệu có mức độ truy cập cao hơn hoặc bằng với mức độ truy cập của bản thân.
Mô hình này được sử dụng trong các tổ chức có thông tin cần đảm bảo tính bí mật cao. VD như với môi trường quân đội, chúng ta có thể giải thích hai nguyên lý trên như sau:
- No read up: rõ ràng, chúng ta không được phép đọc các dữ liệu cao hơn cấp của bản thân. Một binh sĩ quèn làm sao được phép tiếp cận các thông tin tình báo, kế hoạch chiến tranh do các quân nhân cấp tướng quyết định được.
- No write down: điều này có thể lí giải là báo cáo. Chúng ta chỉ cần thiết báo cáo cho cấp trên và trao đổi cũng những người ngang cấp. Không cần thiết phải thông báo cho cấp dưới về tình hình và kế hoạch đang triển khai.
3.2. Mô hình BIBA
Mục tiêu của mô hình BIBA là duy trì tính toàn vẹn của dữ liệu. Nguyên lý của mô hình này là:
No read down - No write up
- No read down: một chủ thể chỉ có thể đọc các dữ liệu có mức độ truy cập cao hơn hoặc bằng với mức độ truy cập của bản thân.
- No write up: một chủ thể chỉ có thể ghi các dữ liệu có mức độ truy cập thấp hơn hoặc bằng với mức độ truy cập của bản thân.
Mô hình này có nguyên lý ngược hẳn với mô hình Bell LaPadula. Các tổ chức, dịch vụ không muốn giữ bí mật thông tin, nhưng lại cần đảm bảo thông in có độ chính xác cao sẽ thích hợp với mô hình BIBA này. VD như các tổ chức tiếp nhận, xác thực, đánh mã và công bố CVE như Mitre, Vulmon, NVD,... Các tổ chức này sẽ tiếp nhận thông tin về các lỗ hổng bảo mật mới được phát hiện bởi các kỹ sư bảo mật, hacker mũ trắng, thợ săn tiền thưởng,... gửi về. Sau đó họ tiến hành xác minh. Cuối cùng sẽ đánh mã CVE cho các lỗ hổng bảo mật và công bố chúng công khai trên trang web của mình.
Các trang web công bố lỗ hổng bảo mật như này hầu như chẳng cần giữ bí mật thông tin gì, ngược lại họ còn muốn càng nhiều người biết đến càng tốt. Với trường hợp như này, chúng ta có thể lí giải hai nguyên tắc trên như sau:
- No read down: chúng ta chỉ có nhu cầu được biết các thông tin ở mức cao hơn, có độ chính xác đáng tin cậy hơn.
- No write up: để tránh việc những người không đủ quyền hạn tiến hành sửa đổi và làm sai lệch dữ liệu.
3.3. Mô hình Clark Wilson
Cuối cùng là mô hình Clark Wilson, mô hình này cũng nhắm đến việc duy trì tính toàn vẹn của dữ liệu. Trong mô hình này, dữ liệu được chia thành 2 loại:
- Có ràng buộc: chủ thể cần đáp ứng đủ điều kiện mới có thể truy cập.
- Không ràng buộc: mọi chủ thể có thể truy cập mà không cần điều kiện gì.
Ngoài ra, dữ liệu có ràng buộc không thể truy cập một cách trực tiếp, việc này phải thực hiện gián tiếp qua một chương trình/dịch vụ nào đó. Các chương trình/dịch vụ này gồm hai bộ phận:
- Quy trình chuyển đổi (Transformation Process): tiếp nhận yêu cầu truy cập dữ liệu có ràng buộc của chủ thể, chuyển đổi định danh chủ thể và định danh dữ liệu thành các mô tả quyền hạn. Sau đó chuyển thông tin này sang Quy trình xác thực toàn vẹn.
- Quy trình xác thực toàn vẹn (Integration Verification Process): thực hiện xác thực và trao quyền. Nếu quy trình này thực hiện thành công, chủ thể sẽ được chấp nhận truy cập tài liệu thông qua chương trình/dịch vụ xác định.
Qua bài viết này, chắc hẳn các bạn đã hiểu biết thêm về những nền tảng chống đỡ và bảo vệ cho cả hệ thống thông tin. Nội dung trong bài viết này khá gần và có chút liên quan tới bài viết của mình về Kiểm soát truy cập an toàn, các bạn có thể đọc thêm để hiểu sâu hơn nhé.