Các nguyên tắc cốt lõi trong thiết kế bảo mật cho hệ thống


Bài này sẽ bàn tới một số nguyên tắc cơ sở và quan trọng cần quan tâm và áp dụng khi thiết kế, triển khai và vận hành một hệ thống thông tin (có thể là ứng dụng, mạng, cơ sở dữ liệu, v.v..) sao cho đảm bảo an toàn trước nhiều mối đe dọa khác nhau.

1.     Defense-in-Depth: phòng thủ theo chiều sâu

Sử dụng nhiều lớp bảo vệ cho hệ thống để chống lại nhiều mối đe dọa khác nhau và gây thêm khó khăn cho kẻ tấn công khi muốn xâm nhập vào hệ thống.

     Ví dụ: thông thường có 7 lớp bảo vệ sau: data (password, encryption, access control list), application  (tùy ứng dụng mà có cách cấu hình đảm bảo an toàn riêng), host (anti-virus, update management, OS hardening), internal network (network-based IDS/IPS, VLAN-based network segmentation), perimeter network (firewall, router, VPN), physical (camera, lock, guard), policy/procedure/awareness (security policy, disaster recovery plan, security training)

(trong ngoặc đơn là một số biện pháp, kỹ thuật bảo vệ được triển khai tại từng lớp)

2.    Least Privilege: đặc quyền tối thiểu

Người dùng, máy tính hay ứng dụng chỉ được cấp các quyền hạn đủ để thực hiện yêu cầu, công việc của họ. Ngoài ra, kiểm soát chặt chẽ việc cấp thêm quyền hạn mới và thu hồi các quyền hạn không dùng tới.

     Ví dụ: nhân viên thông thường chỉ cần chạy email, web, VoIP, các ứng dụng nghiệp vụ như ERP, CRM thì chỉ cần cấp cho họ quyền hạn của một người dùng bình thường (không có quyền cài đặt phần mềm, cấu hình mạng, bật tắt dịch vụ của hệ điều hành, v.v..) là đủ. Khi nhân viên chuyển sang bộ phận khác hoặc nghỉ việc thì xem xét và thay đổi lại quyền hạn cho phù hợp.

3.    Keep It Simple: giữ cho hệ thống được tinh gọn

Loại bỏ các chức năng, tài khoản, chương trình không dùng đến, chỉ giữ lại những thứ đang thực sự cần thiết thôi. Điều này giúp giảm thiểu khả năng bị khai thác các lỗ hổng có thể có trong các thành phần dư thừa và giảm lượng tài nguyên tính toán bị tiêu tốn cũng như giúp cho việc quản lý và giám sát hệ thống được thuận tiện hơn.

         Ví dụ: loại bớt các services, startup apps có thể không cần đến như telnet, printing, remote access, v.v.. tắt các user account không cần dùng, v.v..

4.    Weakest Link: điểm yếu nhất

Một hệ thống có mức độ an toàn chỉ bằng độ an toàn của điểm yếu nhất của hệ thống đó. Vì vậy mà cần xác định đâu là điểm yếu nhất của hệ thống để tìm cách gia cố và bảo vệ nó.

         Ví dụ: con người thường là đối tượng để kẻ tấn công khai thác, đạt được quyền truy nhập vào hệ thống. Vì vậy, ngoài các biện pháp bảo vệ cho các thành tố thuần kỹ thuật như server, network thì cũng cần quan tâm tới việc đào tạo, giúp đỡ người dùng tiếp cận và sử dụng hệ thống sao cho đúng cách và đảm bảo an toàn.

5.      Fail-Safe Stance: trạng thái an toàn khi có lỗi

Hệ thống không tránh khỏi có lúc gặp sự cố. Lúc đó thì cần thiết phải đặt hệ thống ở chế độ từ chối các khả năng bị kẻ tấn công xâm nhập. Và đôi lúc có thể cấm truy cập với cả người dùng hợp lệ cho tới khi hệ thống được khôi phục nhưng điều này vẫn chấp nhận được (thay vì để lọt cho kẻ tấn công giả dạng đi vào)

         Ví dụ: nếu bộ lọc gói tin của router bị lỗi thì không một gói tin nào được phép đi qua nó.

6.       Segmentation: chia tách các thành phần

Mục đích của nguyên tắc này cũng giống với Least Privilege là cố gắng làm giảm tối đa mức độ thiệt hại do một cuộc tấn công gây ra. Thực vậy, nếu phân chia hệ thống thành các vùng được bảo vệ độc lập thì khi một vùng bị xâm hại sẽ giảm bớt khả năng ảnh hưởng tới các vùng khác. Ngoài ra, nguyên tắc này cũng giúp kiểm soát và giới hạn các quyền truy cập tốt hơn. Tuy nhiên, điều này lại sẽ làm tăng chi phí đầu tư và vận hành hệ thống.

          Ví dụ: mô hình thiết kế mạng điển hình ở các tổ chức là gồm 3 vùng internal, DMZ và external được chia tách bởi một firewall (kiến trúc three legged firewall) hoặc hai firewall (kiến trúc front end – back end). Xem thêm về DMZ ở bài này.

–manthang

3 comments

    1. à, cảm ơn bạn vì paper hay nhưng mình không tham khảo từ nó mà từ một vài bài viết khác và trong sách “Building Internet Firewalls”

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s