Vấn đề an ninh - bảo mật trong Nukeviet Portal
Chủ Nhật, 20.05.2007, 03:25pm (GMT+7)
Nukeviet là một hệ thống portal quản lý nội dung (CMS) khá thân thiện. Việc xây dựng website bằng Nukeviet tiến hành nhanh chóng và thuận tiện với một vài cú click chuột. Cũng quan trọng giống như các hệ thống portal chuyên nghiệp khác, Nukeviet đánh giá rất cao vấn đề an ninh và bảo mật khi vận hành website trên môi trường Internet.
Vấn đề an ninh hệ thống Nukeviet được bàn tới ở đây giới hạn ở những giàng buộc sau: - Vận hành site trên môi trường Internet (không tính việc thử nghiệm trên localhost). - Máy chủ web là apache trên hệ điều hành Linux (không tính đến những lỗi security của hệ điều hành và web server). - Nukeviet có thể chạy trên máy chủ Windows có hỗ trợ PHP, nhưng sẽ không đánh giá tính năng an ninh của Nukeviet vận hành trong trường hợp này.
Xâm nhập và phá hoại vào hệ thống portal chủ yếu qua các con đường sau: - Chiếm đoạt quyền quản trị file của server, có khả năng kiểm soát việc upload và download lên khu vực lưu trữ các file php của portal. - Chiếm đoạt quyền quản trị hệ quản trị CSDL MySQL của portal, có khả năng thêm, xóa, sửa nội dung trong các trường của CSDL. - Chiếm đoạt quyền quản trị của khu vực admin để thực hiện các tác động thay đổi nội dung hoặc cấu hình lại các tham số ngoài mong muốn của chủ thể sở hữu site. - Sử dụng các lỗi phát sinh trong cú pháp gọi hàm của ngôn ngữ lập trình ví dụ như các SQL Injection để chạy các câu lệnh nhằm phá hoại hoặc kiểm soát hệ thống.
Có thể nhận thấy rằng nếu ta triển khai site trên server an ninh kém, không vá lỗi kịp thời các lỗ hổng an ninh của hệ điều hành, các cơ chế phân quyền truy nhập hệ thống hạn chế thì chắc chắn hệ thống sẽ không ổn định, vấn đề này là trách nhiệm của chuyên viên quản trị mạng. Thật may mắn là các host thương mại đều đảm bảo cho người dùng nhưng vấn đề cơ bản này của an ninh hệ thống. Nguy cơ này được liệt kê để kiểm tra các site vận hành tại chỗ cuả các tổ chức đơn vị có server riêng, kết nối trực tiếp với Internet. Mô hình này rất thông dụng với các đơn vị, tổ chức có kênh truyền riêng (leased line) với các nhà cung cấp dịch vụ (ISP). Đây là nguyên nhân khách quan, phụ thuộc vào hạ tầng an ninh mạng của nhà cung cấp.
Phân tích các nguy cơ được liệt kê ở trên, chủ yếu an ninh của hệ thống bị sơ hở vì lý do chủ quan, phụ thuộc vào kỹ năng quản trị hệ thống của chủ thể sở hữu site. Lấy ví dụ như người quản trị hệ thống này sử dụng tài khoản quản trị sử dụng trên nhiều máy khác nhau mà không logout sau mỗi phiên làm việc.
Lưu ý việc cài đặt phân quyền truy nhập, đọc ghi nội dung các file trên server, hãy kiểm tra các file trên host bằng lệnh CHMOD.
Việc thực thi an ninh – bảo mật đối với hệ thống Nukeviet dựa trên nguyên tắc phân quyền truy nhập và các ràng buộc bảo vệ khu vực quản trị hệ thống.
Người sử dụng đăng nhập vào khu vực quản trị bao giờ cũng yêu cầu phải có tên và mật khẩu. Tên và mật khẩu được lưu trữ trong CSDL của portal và mật khẩu được mã hóa MD5, với độ phức tạp nhất định của mỗi mật khẩu (thường bao gồm chữ hoa, chữ thường và số lẫn lộn) thì việc lộ mật khẩu dưới khuôn dạng mã hóa trên thì gần như không giải mã được với các hệ thống tính toán thông thường.
Đối với các form nhập tên và mật khẩu trên trình duyệt, hệ thống Nukeviet cho phép hiển thị mã kiểm tra là một chuỗi ngẫu nhiên chữ và số. Việc này đảm bảo hạn chế việc chèn liên tục các chuỗi ký tự do thám vào form bằng các công cụ chuyên dụng của kẻ phá hoại. Người quản trị có thể kích hoạt chức năng này trong khu vực quản trị hệ thống, mục “Cấu hình Site”.
Một sự khác biệt được coi như cải tiến nâng cao so với portal PHP-Nuke là toàn bộ khu vực admin được phân tách vào một vùng làm việc riêng được tối ưu và viết lại hoàn toàn từng dòng lệnh với sự kết hợp hài hoà giữa các file cấu hình điều khiển và dữ liệu lưu trữ trong CSDL. Nukeviet portal gỡ bỏ các trường dữ liệu không cần thiết từ kiến trúc của PHP-Nuke, tham khảo và làm tối ưu hoá các quan hệ nôi dung làm kiến trúc Nukeviet nhỏ, gọn nhưng vẫn hiệu quả và đảm bảo an ninh. Để tăng cường an ninh của hệ thống, Nukeviet cho phép cấu hình các ràng buộc khi truy nhập vào khu vực quản trị. Công việc này được hình dung như thiết lập một rào cản an ninh (firewall) cho khu vực quản trị. Các ràng buộc có thể thiết lập, đó là: - Giới hạn các tên truy nhập và mật khẩu được phép truy nhập vào khu vực quản trị - Giới hạn thời gian truy nhập khu vực quản trị hệ thống (loại bỏ trường hợp không logout ra khỏi khu vực quản trị được kể đến ở trên) - Giới hạn các địa chỉ IP (trong trường hợp IP của người quản trị là tĩnh) truy nhập vào khu vực quản trị
Lưu ý, đối với việc thiết lập các tham số theo IP chỉ triển khai trong trường hợp IP của máy tính truy nhập khu vực quản trị là tĩnh. Địa chỉ IP 127.0.0.1 là địa chỉ nội tại của máy tính, trường hợp xảy ra khi cài đặt thử nghiệm portal trên localhost hoặc truy nhập trực tiếp vào site từ server cài đặt portal. Các địa chỉ IP có khuôn dạng như 192.168.X.Y; 172.X.Y.Z; 10.X.Y.Z là các IP của mạng nội LAN, có thể định danh và xác minh các IP này rõ ràng khi mô hình site vận hành trên mạng nội bộ của đơn vị hoặc tổ chức.
Trong quá trình vận hành site, nhất là đối với module Files (quản lý download tài nguyên), để đảm bảo an ninh, hãy hạn chế upload lên site những file thực thi (ví dụ nhưng file có phần mở rộng là htm, php), có thể chứa những đoạn mã script nguy hiểm, có nguy cơ tạo ra các lỗ hổng để kẻ xấu lợi dụng phá hoại; chỉ cho phép upload các file với phần mở rộng xác định, tốt nhất chỉ cho phép các file nén như RAR và ZIP.
Đối với hệ thống với đa người quản trị, hãy tạo ra một quy chế an toàn khi vận hành site, sử dụng phương thức hành chính để quy định những điều được làm và không được làm trên site. Có một quy chế mạng tốt, sẽ hạn chế tối đa vấn đề nguy cơ không an toàn cho hệ thống.
Vấn đề an ninh hệ thống luôn là vẫn đề nóng bỏng và được quan tâm. Những gì được đề cập chỉ là cái nhìn chủ quan về an ninh, bảo mật của hệ thống Nukeviet. Hãy đóng góp ý kiến và cùng thảo luận với nhóm phát triển Nukeviet về vấn đề này. Mọi ý kiến đóng góp đều được trân trọng.
|