Mã hóa và quản lý khóa trong mạng SAN (Phần 1)
Phần I của bài viết dưới đây sẽ giới thiệu cách thức sử dụng HSA trong môi trường lưu trữ có bảo mật; cách xây dựng mô hình bảo mật SAN với các điểm kiểm soát mã hóa trên cơ sở xây dựng các bộ điều hợp bus máy chủ có bảo mật và dịch vụ quản lý khóa trên nền HSA.
GIỚI THIỆU
SAN là một mạng lưu trữ tốc độ cao dùng cho việc truyền dữ liệu giữa các máy chủ tham gia vào hệ thống lưu trữ cũng như giữa các hệ thống lưu trữ với nhau. Với công nghệ cáp quang SAN cung cấp khả năng mở rộng, hiệu năng và tính sẵn sàng cao. Đối với vấn đề bảo mật SAN đòi hỏi các yêu cầu khắt khe trong việc thực thi cả về nền tảng công nghệ ứng dụng lẫn giải pháp mã hóa, trao đổi khóa. Xu hướng kết hợp việc sử dụng các hệ thống quản lý thuê ngoài và lưu trữ dữ liệu trong các trung tâm lưu trữ của bên thứ ba làm gia tăng nhu cầu bảo vệ dữ liệu chống lại các cuộc tấn công cũng như rò rỉ dữ liệu thông tin cả ở bên trong và bên ngoài trong các mạng lưu trữ SAN.
Mới đây, nhóm nghiên cứu gồm Adrian Baldwin và Simon Shiu từ phòng thí nghiệm Hewlett Packard, tại Bristol, Vương quốc Anh đã công bố giải pháp mã hóa và trao đổi khóa trong hệ thống mạng lưu trữ SAN.
Thông thường bảo mật mức cấu trúc [3, 11] được sử dụng để phân chia đĩa thành các vùng (Zone) và sau đó dựa vào cấu trúc chuyển mạch SAN để phân tách các vùng này. Điều này có thể được thực hiện bằng cách sử dụng phân vùng mềm (dựa trên tên máy chủ) hoặc phân vùng cứng trong các thiết bị chuyển mạch.
Các kỹ thuật bảo mật dựa trên sự phân tách dữ liệu ở cấp thiết bị có khả năng ngăn chặn truy cập trái phép vào dữ liệu. Ba vấn đề chính còn tồn tại trong hệ thống là: Thứ nhất, các quản trị viên có thể cấu hình lại hệ thống SAN để kẻ nội gián nguy hiểm có thể thêm một máy phụ có quyền truy cập dữ liệu trái phép. Thứ hai, dữ liệu không được mã qua đường truyền cáp quang giữa các hệ thống lưu trữ và máy chủ, điều này mở ra khả năng thất thoát hoặc làm sai lệch dữ liệu. Cuối cùng hệ thống lưu trữ trong trung tâm dữ liệu và trên các bản sao lưu có liên quan không được mã hóa. Do đó không kiểm soát được khả năng rò rỉ.
Bài viết này tìm hiểu giải pháp để thắt chặt bảo mật trong hệ thống SAN trên cơ sở xây dựng cách thức mã hóa và sơ đồ quản lý khóa hiệu quả. Đồng thời sử dụng HSA nhằm bảo vệ khóa và lưu các quy trình kiểm soát việc sử dụng khóa trên cơ sở thực thi các chính sách tương ứng [8]. Đảm bảo các dịch vụ chính thực thi trong phần cứng an toàn.
MÃ HÓA DỮ LIỆU
Một trong những vấn đề quan trọng nhất trong bảo mật cho mạng SAN là việc tách quyền truy cập vào đĩa hoặc đơn vị logic và do đó tách biệt quyền truy cập vào dữ liệu. Các giải pháp sử dụng mặt nạ phân vùng hoặc mặt nạ LUN có thể ngăn chặn rò rỉ dữ liệu giữa các máy nhưng điều này không ngăn các quản trị viên cấu hình lại các hệ thống để có quyền truy cập vào dữ liệu cũng như không cung cấp khả năng bảo mật khi dữ liệu được truyền qua cơ sở hạ tầng SAN. Do đó cần mã hóa dữ liệu tại bộ điều hợp bus chủ (HBA), trên toàn bộ kết nối của mạng SAN và trên các thiết bị lưu trữ. Mã hóa có thể giúp ngăn chặn việc việc rò rỉ ngẫu nhiên hoặc cố ý tại nơi có được quyền truy cập dữ liệu và trên đường truyền.
Sẽ là chưa đủ cơ sở để nói rằng dữ liệu được bảo mật bởi vì khi nó được mã hóa cần đảm bảo rằng các byte được mã hóa không thể đọc được và quan trọng hơn là việc các khóa để giải mã chỉ có thể truy cập được trong một bối cảnh được ủy quyền. Do đó, bài viết này chủ yếu tập trung vào việc quản lý an toàn việc phân phối và sử dụng các khóa mã hóa cho HBA. Phần sau đây mô tả cách tiếp cận chung về sử dụng HSA để bảo đảm quyền truy cập vào các phần dữ liệu.
THIẾT BỊ BẢO MẬT PHẦN CỨNG
Bảo mật SAN bị ảnh hưởng bởi hệ thống quản lý, hệ thống chuyển mạch (bao gồm phần mềm chuyển đổi) và phần mềm cấu hình để tạo các mặt nạ phân vùng hoặc mặt nạ LUN. Phần dễ bị tổn thương nhất có lẽ là hệ thống quản lý và các hệ thống cho phép truy cập vào các cổng quản lý của thiết bị chuyển mạch. Nội dung dưới đây chỉ đề cập tới việc sử dụng các HSA như một cơ sở tính toán đáng tin cậy, tức là nó cung cấp một môi trường an toàn để chạy các phần chính của ứng dụng quản lý - trong trường hợp này là quản lý khóa và thực thi chính sách.
HSM có thể được sử dụng để bảo vệ các khóa khỏi tiếp xúc với hệ thống bên ngoài, bảo vệ việc tạo, lưu trữ và sử dụng của chúng - tuy nhiên HSM thường thực hiện các hoạt động mã hóa [7] thay vì bảo đảm việc sử dụng các khóa. Việc sử dụng bổ sung hệ thống HSA có thể đảm bảo việc quản lý các khóa và mã hóa trong một số ứng dụng liên quan đến lưu trữ và quản lý được kiểm soát chặt chẽ hơn.
HSA có thể được coi là một bộ đồng xử lý an toàn có chứa bộ xử lý chung, bộ nhớ và đồng hồ clock; với chức năng mã hóa. Khóa, các tham số bí mật và vai trò của chúng trong ứng dụng được bảo vệ một cách chủ động bằng giải pháp vật lý. Smith và cộng sự [9] đã mô tả một số công trình [6, 10] liên quan đến việc sử dụng bộ đồng xử lý bảo mật để chạy các ứng dụng.
Hình 1. HSA bảo mật cho ứng dụng điển hình
HSA cung cấp một nền tảng platform mà trên đó có thể chạy một dịch vụ (hoặc thành phần ứng dụng. Nền tảng lý tưởng nhất phải đơn giản nhất có thể để giảm khả năng xảy ra lỗi và rò rỉ cấu hình; thiết kế phần cứng sẽ sử dụng các bộ xử lý mật mã giải mã các khóa trong các thanh ghi. Các dịch vụ (hoặc các thành phần) sau đó có thể được tải dựa vào các platform.
Một cách khái quát cách HSA có thể được sử dụng để gia tăng bảo mật được thể hiện trong Hình 1.
HSA trong môi trường lưu trữ dữ liệu có bảo mật
Ban đầu phương pháp này được thúc đẩy nhằm giải quyết vấn đề làm thế nào để sử dụng dịch vụ lưu trữ và quản lý tài liệu của bên thứ ba một cách tin cậy [1,2]. HSA được đề xuất sử dụng để cố gắng giảm thiểu sự phụ thuộc vào hoạt động của bên thứ ba và giảm thiểu rủi ro dữ liệu vô tình bị tiết lộ hoặc quản trị viên sẽ có thể truy cập dữ liệu. Để đảm bảo tính bảo mật, mỗi tài liệu đều được mã hóa.
Thông thường HSM được sử dụng để đảm bảo rằng các khóa sử dụng được giữ bí mật và các quy trình giải mã được thực thi an toàn. Tuy nhiên, việc tìm kiếm và nạp chính sách truy cập phù hợp, phân tích cú pháp và thực thi chính sách sẽ được thực hiện trong quy trình của một máy chủ chạy HĐH thông thường. Ngay cả với một cơ sở hạ tầng được thiết kế cẩn thận, quá trình này dễ bị tấn công từ mạng hoặc quản trị viên có ý đồ xấu.
Dịch vụ đóng gói khóa mã cùng với chính sách thực thi (dịch vụ ESKAPE sử dụng khóa riêng trong HSA để liên kết chính sách truy cập (được chỉ định bởi người lưu trữ tài liệu) với tài liệu tương ứng. Điều này cho phép HSA sau đó xác minh ràng buộc mà không giữ bất kỳ trạng thái nào về tài liệu hoặc chính sách. Để giữ cho phần cứng HSA đơn giản, việc giảm thiểu trạng thái dịch vụ là một yêu cầu quan trọng cần được xem xét.
Hình 2. Mã hóa dữ liệu với dịch vụ ESKAPE.
Hình 2 cho thấy giao thức cơ bản để mã hóa tài liệu. chính sách truy cập (Access Policy) và tài liệu (Document) khi được xử lý, dịch vụ ESKAPE sẽ liên kết chúng bằng cách ký một hàm băm của cả hai và trả lại tài liệu đã xử lý (Document Eveloped). Người dùng muốn thêm một tài liệu vào hệ thống lưu trữ sẽ mã hóa nó cùng với một thỏa thuận lưu trữ bằng cách sử dụng khóa chung của dịch vụ ESKAPE. Sau đó, dịch vụ ESKAPE sẽ trích xuất thỏa thuận lưu trữ và chính sách truy cập, liên kết chúng với tài liệu được mã hóa lại và đóng gói để quản lý trong dịch vụ lưu trữ.
Hình 3. Giải mã dữ liệu với dịch vụ ESKAPE
Sau khi được mã hóa, cách duy nhất để giải mã tài liệu là đưa nó cùng với thông tin đăng nhập của người yêu cầu quay lại dịch vụ ESKAPE và đảm bảo các điều kiện chính sách được đáp ứng (Hình 3).
Dịch vụ ESKAPE và các tham số bí mật của nó có thể được tải một cách an toàn bởi bên thứ 3 độc lập với nhà cung cấp dịch vụ lưu trữ và một khi điều này được thực hiện, ngay cả quản trị viên của dịch vụ lưu trữ cũng không thể chỉnh sửa chính sách hoặc truy cập vào khóa hay dữ liệu.
QUẢN LÝ KHÓA TRONG MÔI TRƯỜNG SAN
Dịch vụ ESKAPE kết hợp quản lý khóa với các quy trình mã hóa và giải mã, điều này phù hợp khi không đòi hỏi cao về tốc độ xử lý; tuy nhiên đối với mạng SAN tốc độ là một vấn đề quan trọng.
Hiệu suất thực thi được tối ưu khi việc mã hóa và giải mã được thực thi tại HBA. Trong khi đó việc quản lý các khóa, quản lý quyền truy cập vào dữ liệu, có thể được thực thi (tách rời các máy chủ, thiết bị chuyển mạch và dữ liệu tại điểm thực thi (điểm quản lý), là một cổng thông tin lý tưởng để thay đổi chính sách và kiểm tra chặt chẽ các yêu cầu. Hình 2 cho thấy hệ thống SAN được tăng cường bằng HSA (được vẽ dưới dạng khóa móc). Các HBA đã được sửa đổi để thêm vào thành phần đáng tin cậy hoạt động như một HSA mã hóa, sự kết hợp này cung cấp một HBA được bảo mật (SHBA). HSA này thực hiện xử lý mã hóa và giải mã dữ liệu được đọc và ghi vào SAN. Các khóa được điều khiển và tải xuống từ dịch vụ quản lý khóa. Dịch vụ quản lý khóa này cũng chạy trong HSA và cung cấp một điểm thực thi mạnh mẽ để quản lý quyền truy cập vào dữ liệu thông qua việc kiểm soát quyền truy cập vào các khóa mã hóa cơ sở.
Hình 4. Hệ thống SAN với các điểm kiểm soát mã hóa bổ sung
Các khóa mã hóa được tạo và quản lý bởi dịch vụ quản lý khóa. Dịch vụ này được định cấu hình với một tập hợp các chính sách kiểm soát SHBA nào sẽ nhận được khóa nào và chính sách truy cập nào. Dịch vụ phân phối các khóa an toàn cho các SHBA khác nhau. Các SHBA sẽ thực thi chính sách đọc và ghi một cách thích hợp bằng cách sử dụng khóa tương ứng.
Mã hóa các miền dữ liệu khác nhau bằng các khóa riêng biệt sẽ tạo ra một số dạng phân tách dữ liệu miễn là các khóa mã hóa được kiểm soát chặt chẽ. Sử dụng HSA để quản lý và sử dụng các khóa đảm bảo khóa không bao giờ nằm trong phần không được bảo vệ của hệ thống và không bị rò rỉ dù ở dạng vật lý hay logic.
Thiết bị HSA trong hệ thống quản lý khóa
Hệ thống quản lý khóa đã được mô tả chứa hai loại thiết bị bảo mật phần cứng, mỗi loại có chức năng rất khác nhau:
Thiết bị quản lý khóa HSA Key Manager
HSA Key Manager là yếu tố chính đảm bảo rằng các khóa mã hóa được bảo mật và chỉ tồn tại trong một môi trường được bảo mật. Phần lớn dịch vụ quản lý khóa chạy trên một HSA được đặt hoặc liên kết với máy chủ kiểm soát thông tin liên lạc và cung cấp khả năng lưu trữ và ghi nhật ký. Vai trò chính của trình quản lý khóa là liên kết chặt chẽ việc quản lý các khóa mã hóa với các chính sách chỉ định hệ thống nào có thể truy cập khóa.
Thiết bị HSA có ID được cung cấp bởi nhà sản xuất xác định tên, loại thiết bị, các đặc tính bảo mật và đơn vị sản xuất nó. Dịch vụ quản lý khóa sau đó được tải xuống và xác thực dựa trên ID của thiết bị phần cứng gốc. Thiết bị có chương trình cho phép tải đơn giản thay vì một hệ điều hành phức tạp chứa lỗi và lỗ hổng. Điều này đảm bảo dịch vụ quản lý khóa chạy trong một môi trường một môi trường đơn giản, được bảo vệ. HSA đảm bảo không chỉ các khóa được bảo vệ mà còn liên kết quyền truy cập vào các khóa đó với các thông điệp kiểm soát và thực thi chính sách.
Bộ điều hợp bus máy chủ bảo mật (SHBA): là một HBA tiêu chuẩn chứa một thành phần đáng tin cậy mà tất cả dữ liệu được định tuyến đều qua nó. Thành phần đáng tin cậy này cần phải có khả năng mã hóa nhanh đảm bảo thông lượng dữ liệu cao cũng như tạo khóa và lưu trữ khóa. Thiết bị này được thiết kế chuyên dụng có dạng chip bảo mật tương tự như thiết bị TCPA [5].
KẾT LUẬN
Bài viết này đề xuất việc sử dụng các thiết bị bảo mật phần cứng HSA đảm bảo bảo mật cho các khóa mã và việc thực thi chức năng mã hóa của HSM trên cơ sở kiểm soát việc sử dụng khóa. Việc quản lý khóa một cách an toàn, kiểm soát các chính sách phân phối và sử dụng khóa được thực thi trên cơ sở sử dụng các thiết bị bảo mật phần cứng HSA có thể áp dụng một cách hiệu quả trong các hệ thống lưu trữ SAN.
TÀI LIỆU THAM KHẢO [1]. A.Baldwin, Y.Beres, M.Casassa Mont, and S.Shiu Trust Services: A trust infrastructure for e-commerce. HP Labs TR HPL-2001-198 http://www.hpl.hp.com/techreports/2001/HPL-2001- 198.html (2001). [2]. A. Baldwin, S.Shiu, M Casassa Mont Trust Services: A framework for service-based solutions in proceedings of the 26th IEEE computer software and applications conference (COMPSAC) (2002). [3]. DataLink Storage Area Networks, Data Security and Fabric Management. DataLink White Paper http://www.storagesearch.com/datalink-sansecurity- art-1.pdf (2002). [4]. Fips Security Requirements for cryptographic modules. Fips 140-2 2001. [5]. S. Pearson, B. Balacheff, L. Chen, D. Plaquin and G. Proudler. Trusted Computing Platforms: TCPA technology in comtext. HP Books, Prentice Hall (2002). [6]. A. Perrig, S.Smith, D. Song, J. D. Tygar SAM: A Flexible and Secure Auction Architecture Using Trusted Hardware. citeseer.nj.nec.com/458931.html. [7]. Rsa Labs PKCS#11 Cryptographic Token Interface Standard (2001)ftp://ftp.rsasecurity.com/pub/pkcs/pkcs-11/v211/pkcs- 11v2-11r1.pdf. [8]. M. Sloman, J. Lobo, E.C. Lupu (eds) Policies for Distributed Systems and Networks. Proceedings of the 2nd International Policy Workshop. Lecture notes in computer science Vol 1995 Springer Verlag 2001. [9]. S.W. Smith, R. Perez, S. Weingart, V. Austel. Validating a High-Performance, Programmable Secure Coprocessor. Proceedings, 22nd National Information Systems Security Conference. October (1999). [10]. S.W. Smith and D. Safford. Practical Private information retrieval with secure coprocessors. IBM Research T.J. Watson Research Center (2000). [11]. H. Yoshida LUN Security Considerations for Storage Area Networks. Hitachi Data Systems. |
TS. Trần Văn Khánh, KS. Nguyễn Thành Vinh