DANH MỤC CÁC TỪ VIẾT TẮT VÀ THUẬT NGỮ STT Từ viết tắt/Thuật ngữ Giải nghĩa1 NIST Viện công nghệ và tiêu chuẩn quốc gia Mĩ National Institute of Standards and Technology 2 ENISA Cơ quan a
Trang 1PHẠM THỊ KIM OANH
NGHIÊN CỨU GIẢI PHÁP ĐẢM BẢO AN NINH VÀ
AN TOÀN CHO DỊCH VỤ ĐIỆN TOÁN ĐÁM MÂY
LUẬN VĂN THẠC SĨ MÁY TÍNH
Trang 2LỜI CẢM ƠN
Để hoàn thành luận văn này ngoài nỗ lực của bản thân trong quá trình học tập nghiên cứu, em còn nhận được rất nhiều sự nhiệt tình giúp đỡ, hướng dẫn cũng như động viên trong suốt quá trình thực hiện luận văn
Trước hết em muốn gửi lời cảm ơn sâu sắc nhất tới TS Hồ Văn Hương –người đã nhiệt tình giúp đỡ, hướng dẫn và đưa ra những chỉ dẫn kịp thời để em có thể bám sát đề tài hoàn thiện luận văn
Em xin gửi lời cảm ơn đến các thầy cô trong trường Đại sư phạm Hà Nội 2, những người đã dạy dỗ, giúp đỡ và chỉ bảo cho em trong suốt quá trình học tập.Mặc dù đã có nhiều cố gắng trong việc hoàn thiện luận văn, tuy nhiên do hạn chế về thời gian cũng như kiến thức bản thân, luận văn không tránh khỏi thiếu sót
PHẠM THỊ KIM OANH
NGHIÊN CỨU GIẢI PHÁP ĐẢM BẢO AN NINH VÀ
AN TOÀN CHO DỊCH VỤ ĐIỆN TOÁN ĐÁM MÂY
Chuyên ngành: Khoa học máy tính
Mã số: 60 48 01 01
LUẬN VĂN THẠC SĨ MÁY TÍNH
Người hướng dẫn khoa học: TS Hồ Văn Hương
HÀ NỘI, 2014
Trang 3LỜI CẢM ƠN
Để hoàn thành luận văn này ngoài nỗ lực của bản thân trong quá trình học tập nghiên cứu, em còn nhận được rất nhiều sự nhiệt tình giúp đỡ, hướng dẫn cũng như động viên trong suốt quá trình thực hiện luận văn
Trước hết em muốn gửi lời cảm ơn sâu sắc nhất tới TS Hồ Văn Hương –người đã nhiệt tình giúp đỡ, hướng dẫn và đưa ra những chỉ dẫn kịp thời để em có thể bám sát đề tài hoàn thiện luận văn
Em xin gửi lời cảm ơn đến các thầy cô trong trường Đại sư phạm Hà Nội 2, những người đã dạy dỗ, giúp đỡ và chỉ bảo cho em trong suốt quá trình học tập
Mặc dù đã có nhiều cố gắng trong việc hoàn thiện luận văn, tuy nhiên do hạn chế về thời gian cũng như kiến thức bản thân, luận văn không tránh khỏi thiếu sót
Em mong nhận được sự thông cảm và những ý kiến đóng góp quý báu của thầy cô
Em xin chân thành cảm ơn!
Việt Trì, ngày 14 tháng 12 năm 2014
Học viên
Phạm Thị Kim Oanh
Trang 4LỜI CAM ĐOAN
Tôi cam kết luận văn là công trình nghiên cứu của bản thân tôi dưới sự hướng dẫn của TS.Hồ Văn Hương
Tôi xin cam đoan rằng số liệu và kết quả nghiên cứu trong luận văn này là trung thực và không trùng lặp với các đề tài khác Tôi xin cam đoan rằng mọi sự giúp đỡ cho việc thực hiện luận văn này đã được cảm ơn và các thông tin trích dẫn trong luận văn đã được chỉ rõ nguồn gốc
Việt Trì, ngày 14 tháng 12 năm 2014
Học viên
Phạm Thị Kim Oanh
Trang 5MỤC LỤC
Lời cảm ơn 1
Lời cam đoan 2
Mục lục 3
Danh mục hình 4
Danh mục các từ viết tắt và thuật ngữ 6
Mở đầu 8
Chương I Tổng quan về điện toán đám mây 12
1.1 Khái niệm về điện toán đám mây 12
1.2 Các mô hình dịch vụ của điện toán đám mây 14
1.3 Các mô hình triển khai điện toán đám mây 16
1.4 Kết luận 19
Chương II Các vấn đề an ninh trong điện toán đám mây 21
2.1 Định nghĩa về an ninh và đảm bảo an ninh 21
2.2 Các nguy cơ an ninh đối với điện toán đám mây và cách khắc phục 22
2.3 Mã hóa 34
2.4 Chữ ký số 39
2.5 Kết luận 39
Chương III Phân tích vấn đề và xây dựng giải pháp đảm bảo an ninh cho điện toán đám mây 41
3.1 Đề xuất giải pháp 41
3.2 Triển khai ứng dụng 55
3.3 Kết luận 77
Kết luận 78
1 Đánh giá kết quả thực hiện 78
2 Hướng phát triển mở rộng 78
Tài liệu tham khảo 80
Trang 6DANH MỤC HÌNH
Hình 1.1 Mô hình điện toán đám mây 13Hình 1.2 Cấu trúc theo dịch vụ mô hình điện toán đám mây 16Hình 1.3 Mô hình đám mây nội bộ 17Hình 1.4 Mô hình đám mây công đồng 17Hình 1.5 Mô hình đám mây lai 18Hình 2.1 Giải mã dùng khóa công khai 36Hình 2.2 Quá trình mã hóa kết hợp giữa khóa công khai và
khóa đối xứng
37
Hình 2.3 Quá trình giải mã 37Hình 3.1 Quy trình ký và kiểm tra chữ ký với Openstack
Object Storage
56
Hình 3.2 Quy trình mã hóa với Openstack Object Storage 56Hình 3.3 Biểu đồ phân cấp chức năng 57Hình 3.4 Biểu đồ Usecase tổng quát 57Hình 3.5 Biểu đồ trình tự chức năng quản lý thư mục 66Hình 3.6 Biểu đồ trình tự chức năng quản lý file 67Hình 3.7 Biểu đồ trình tự chức năng truyền file 68Hình 3.8 Biểu đồ trình chức năng tải file 69Hình 3.9 Biểu đồ trình tự chức năng mã hóa/ký 70Hình 3.10 Biểu đồ trình tự chức năng giải mã/kiểm tra chữ ký 70Hình 3.11 Giao diện chính của chương trình 71Hình 3.12 Giao diện quản lý file 71Hình 3.13 Giao diện mã hóa/ký 72Hình 3.14 Giao diện giải mã/kiểm tra chữ ký 72Hình 3.15 Giao diện upload 73Hình 3.16 Giao diện download file 73
Trang 7Hình 3.17 Mô hình cài đặt Openstack Object Storage 74Hình 3.18 Quá trình hiển thị file và thư mục 75Hình 3.19 Ký thành công 75Hình 3.20 Định dạng chữ ký PDF 75Hình 3.21 Kiểm tra chữ ký thành công 76Hình 3.22 Quá trình upload thành công 76Hình 3.23 Quá trình download thành công 77
Trang 8DANH MỤC CÁC TỪ VIẾT TẮT VÀ THUẬT NGỮ STT Từ viết tắt/Thuật ngữ Giải nghĩa
1 NIST Viện công nghệ và tiêu chuẩn quốc gia Mĩ
(National Institute of Standards and Technology)
2 ENISA Cơ quan an ninh thông tin và mạng châu Âu
(European Network and Information Security Agency)
3 IaaS Dịch vụ hạ tầng (Infrastructure as a Service)
4 PaaS Dịch vụ nền tảng (Platform as a Service)
5 SaaS Dịch vụ phần mềm (Software as a Service)
6 CPU Bộ xử lý trung tâm (Central Processing Unit)
7 EC2 Dịch vụ máy chủ ảo của Amazon (Amazon
Elastic Compute Cloud)
8 Server Máy chủ
9 Public Cloud Đám mây công cộng
10 Private Cloud Đám mây nội bộ
11 Hybrid Cloud Đám mây lai
12 Community Cloud Đám mây công cộng
13 Cloud Đám mây
14 Private key Khóa bí mật (dùng trong hệ mã hóa công khai)
15 Public key Khóa công khai (dùng trong hệ mã hóa công
khai)
16 DDOS Một loại hình tấn công mạng
17 ARP Giao thức phân giải địa chỉ (Address Resolution
Trang 923 ICMP Giao thức kiểm soát thông điệp mạng (Internet
Control Message Protocol)
24 VM Máy ảo (Virtual Machine)
Trang 10MỞ ĐẦU
1 Lý do chọn đề tài
Trong những năm gần đây, điện toán đám mây đã có những bước tiến vượt
bậc Như chúng ta đã biết, điện toán đám mây không phải là một công nghệ gì mới,
mà là sự kết hợp nhiều công nghệ trước đây Những công nghệ này đã hoàn thiện ở các mức độ khác nhau trong những ngữ cảnh khác nhau, chúng không được thiết kế như một thể thống nhất Tuy nhiên chúng đã tọa ra một hệ thống kỹ thuật cho điện toán đám mây Những tiến bộ mới trong bộ vi xử lý, công nghệ ảo hóa, đĩa lưu trữ, kết nối Internet băng thông rộng, các máy chủ rẻ, mạnh và nhanh đã kết hợp với nhau tạo ra điện toán đám mây
Các lợi ích điện toán đám mây đem lại cho người dùng rất lớn, trên thực tế điện toán đám mây đã thật sự được quan tâm và sử dụng hiệu quả ở nhiều nước phát triển trên thế giới Khả năng giải quyết và đáp ứng tốt các nhu cầu bức thiết trong nhiều lĩnh vực Vì vậy, điện toán đám mây càng được các tổ chức, doanh nghiệp và
cá nhân sử dụng và điện toán đám mây sẽ là xu hướng phát triển trong tương lai
Một số thuận lợi khi triển khai điện toán đám mây :
- Chi phí đầu tư thấp: Theo mô hình truyền thống, để có được cơ sở hạ tầng, máy móc và nguồn nhân lực thì người sử dụng cần thời gian và kinh phí để xây dựng kế hoạch, đầu tư hạ tầng, đầu tư máy móc và người quản trị Chi phí này làkhông nhỏ và đôi khi lại không được sử dụng hiệu quả, ví dụ như không đáp ứng đủhoặc không sử dụng hết công suất sau khi đưa vào sử dụng Các khó khăn này sẽ được giải quyết trong mô hình điện toán đám mây với phương châm “pay as you use” (người dùng chỉ phải trả tiền cho những gì mình đã sử dụng)
- Tốc độ xử lý nhanh, không còn phụ thuộc vào thiết bị và vị trí địa lý: cho phép người dùng truy cập và sử dụng hệ thống thông qua trình duyệt web ở bất kỳ đâu và trên bất kỳ thiết bị nào mà họ sử dụng (như là PC hoặc là thiết bị di động )
- Dễ dàng mở rộng, nâng cấp: Thay vì phải đầu tư mới hoặc nâng cấp phần cứng, phần mềm, đội ngũ quản trị để mở rộng hay nâng cấp hệ thống thì với điện toán đám mây người sử dụng chỉ việc gửi yêu cầu cho nhà cung cấp dịch vụ
Trang 11Tuy nhiên, điều mà các tổ chức, các doanh nghiệp hoặc cá nhân e ngại khi muốn chuyển đổi các ứng dụng quan trọng trong kinh doanh sang môi trường đám mây là do những thách thức có thể gặp phải như độ tin cậy, tính riêng tư, bảo mật, khả năng sẵn sàng của dịch vụ và hiệu suất hoạt động
-Tính riêng tư: Các thông tin về người dùng và dữ liệu được chứa trên đám mây khôngchắc chắn được đảm bảo tính riêng tư và các thông tin đó cũng có thể bị sửdụng vì một mục đích khác
- Tính sẵn sàng: Các trung tâm điện toán đám mây hay hạ tầng mạng có thể gặp
sự cố, khiến cho dịch vụ đám mây bị “treo” bất ngờ, nên người dùng không thể truy cập các dịch vụ và dữ liệu của mình trong những khoảng thời gian nào đó
- Khả năng mất dữ liệu: Một vài dịch vụ lưu trữ dữ liệu trực tuyến trên đám mây bất ngờ ngừng hoạt động hoặc không tiếp tục cung cấp dịch vụ, thậm chí một vài trường hợp, vì một lý do nào đó, dữ liệu người dùng bị mất và không thể phục hồi được
- Khả năng bảo mật: Vấn đề tập trung dữ liệu trên các “đám mây” là cách thức hiệu quả để tăngcường bảo mật, nhưng mặt khác cũng chính là mối lo của người sửdụng dịch vụ điện toán đám mây, bởi lẽ một khi các đám mây bị tấn công hoặc đột nhập, toàn bộ dữ liệu sẽ bị chiếm dụng
Trong đó, vấn đề bảo mật dữ liệu của điện toán đám mây là điều mà nhiều người quan tâm nhất Dữ liệu của khách hàng được nhà cung cấp điện toán đám mây bảo mật như thế nào? Người sử dụng tự bảo mật dữ liệu ra sao? Vì thế em
chọn đề tài “Nghiên cứu giải pháp đảm bảo an ninh và an toàn cho dịch vụ
điện toán đám mây” để trình bày và giải quyết những vấn đề nêu trên.
2 Mục đích nghiên cứu
Giúp người sử dụng điện toán đám mây hiểu về cấu trúc hoạt động của điện toán đám mây, tìm hiểu và đề xuất các giải pháp an ninh bảo mật trong điện toán đám mây, đồng thời xây dựng thử nghiệm giải pháp bảo mật xác thực người dùng, bảo mật xác thực dữ liệu của người dùng trong môi trường điện toán đám mây
3 Nhiệm vụ nghiên cứu
Trang 12- Tìm hiểu công nghệ điện toán đám mây, mã hóa, chữ ký số
- Đánh giá các vấn đề về an ninh cho điện toán đám mây và đưa ra giải pháp đảm bảo an ninh và an toàn cho điện toán đám mây
- Áp dụng giải pháp Openstack vào xây dựng một đám mây và ứng dụng chữ ký số vào việc đảm bảo an ninh cho dịch vụ được triển khai
4 Đối tượng và phạm vi nghiên cứu
Đối tượng nghiên cứu bao gồm: cloud computing, các tài liệu viết về an ninh bảo mật trong cloud computing, các chuẩn bảo mật, xác thực, môi trường phát triển
và triển khai hệ thống xác thực người dùng và dữ liệu của họ
Phạm vi nghiên cứu gồm: Tổng quan về điện toán đám mây, các giải pháp an ninh bảo mật trong điện toán đám mây và xây dựng thử nghiệm giải pháp bảo mật xác thực người dùng, xác thực dữ liệu của người dùng điện toán đám mây
5 Giả thuyết khoa học
Việc nghiên cứu và triển khai thành công khóa luận sẽ đáp ứng nhu cầu tìm hiểu giải pháp an ninh bảo mật trong điện toán đám mây cho các cá nhân, doanh nghiệp trước khi quyết định đăng ký sử dụng dịch vụ của điện toán đám mây Giải pháp bảo mật xác thực người dùng giúp các khách hàng điện toán đám mây tự bảo
vệ các ứng dụng và dữ liệu của mình khi triển khai trên đám mây
6 Phương pháp nghiên cứu
Phương pháp chính là nghiên cứu qua nguồn tư liệu đã xuất bản, các bài báo, các báo cáo khoa học về điện toán đám mây và an ninh bảo mật trong điện toán đám mây Xây dựng giải pháp bảo mật xác thực người dùng, dữ liệu người dùng điện toán đám mây, kiểm thử và đánh giá kết quả hệ thống xác thực trong môi trường điện toán đám mây
Trang 13NỘI DUNG
Chương I Tổng quan về điện toán đám mây
1.1 Khái niệm điện toán đám mây
1.2 Các mô hình hình vụ điện toán đám mây
1.3 Các mô hình triển khai điện toán đám mây
1.4 Kết luận
Chương II Các vấn đề an ninh trong điện toán đám mây
2.1 Định nghĩa về an ninh và đảm bảo an ninh
2.2 Các nguy cơ an ninh đối với điện toán đám mây và cách khắc phục
Trang 14CHƯƠNG I TỔNG QUAN VỀ ĐIỆN TOÁN ĐÁM MÂY
1.1 Khái niệm về điện toán đám mây
1.1.1 Định nghĩa
Điện toán đám mây là một thuật ngữ mới xuất hiện một vài năm trở lại đây,
nó gắn liền với một cuộc cách mạng mới trong cách sử dụng tài nguyên cũng nhưcung cấp thông tin và dịch vụ của các tổ chức Cùng với sự phát triển của điện toán đám mây thì định nghĩa về nó cũng rất đa dạng, chúng ta có thể tham khảo một số định nghĩa của một số tổ chức lớn về điện toán đám mây:
+ Theo NIST: “Điện toán đám mây là một mô hình mạng cho phép truy cập
dễ dàng vào một hệ thống mạng đồng nhất, theo nhu cầu đến một kho tài nguyên điện toán dùng chung (ví dụ: mạng, máy chủ, lưu trữ, ứng dụng và dịch vụ), các tài nguyên này có thể được cung cấp và thu hồi một cách nhanh chóng với yêu cầu tối thiểu về quản lý hay sự can thiệp từ phía nhà cung cấp dịch vụ” [1]
+ Theo ENISA: “Điện toán đám mây là mô hình cung cấp dịch vụ theo yêu cầu thường được triển khai trên công nghệ ảo hóa và các công nghệ điện toán phân tán [1]
+ Theo hãng Gartner: “Điện toán đám mây là một kiểu tính toán trong đó các năng lực CNTT có khả năng mở rộng rất lớn được cung cấp dưới dạng dịch vụ qua mạng Internet đến nhiều khách hàng bên ngoài” [1]
+ Theo hãng Forrester Research: “ Một kho tài nguyên cơ sở hạ tầng ảo hóa,
có khả năng mở rộng cao và được quản lý, có thể hỗ trợ các ứng dụng của khách hàng cuối và được tính tiền theo mức độ sử dụng” [1]
Như vậy ta có thể hiểu điện toán đám mây là một giải pháp toàn diện cho phép cung cấp các tài nguyên công nghệ thông tin như là một dịch vụ và có khả năng thay đổi linh hoạt theo nhu cầu của người sử dụng Và thuật ngữ “đám mây” là các tài nguyên tồn tại trên mạng Internet và người sử dụng chỉ cần có một kết nối Internet là có thể truy cập tới các tài nguyên này mà không cần hiểu rõ chi tiết về công nghệ, kĩ thuật và hạ tầng bên trong của các đám mây [1], [2]
Trang 15Hình 1.1 Mô hình điện toán đám mây
1.1.2 Các đặc trưng cơ bản của điện toán đám mây
- Khả năng co giãn: tài nguyên có thể được cung cấp một cách nhanh chóng và mềm dẻo, có khả năng thay đổi tăng lên hay giảm đi tùy thuộc vào nhu cầu sử dụng của khách hàng Đối với khách hàng, tài nguyên trên “đám mây luôn sẵn sàng và có thể coi là không có giới hạn trong việc sử dụng vào bất kỳ thời điểm cũng như khối lượng tài nguyên yêu cầu
- Dịch vụ theo yêu cầu: khách hàng có thể được cung cấp tài nguyên như máy chủ, dung lượng lưu trữ…một cách tự động theo yêu cầu mà không cần phải có sự can thiệp từ phía nhà cung cấp dịch vụ
- Không phụ thuộc vào vị trí: khách hàng không biết và không điều khiển vị trí của tài nguyên được cung cấp, tuy nhiên họ vẫn có thể làm điều này thông qua các dịch
vụ nâng cao của nhà cung cấp Tài nguyên có thể bao gồm: lưu trữ, xử lý, bộ nhớ và băng thông mạng
- Truy cập dễ dàng: người dùng có thể truy cập tới tài nguyên trên đám mây chỉ với yêu cầu là có một ứng dụng có thể kết nối tới Internet từ bất kỳ thiết bị nào như: máy tính để bàn, thiết bị di động, máy tính xách tay…
- Điều tiết dịch vụ: các hệ thống điện toán đám mây tự động điều khiển và tinh chỉnh tài nguyên sử dụng bằng cách áp dụng các biện pháp đo lường ở các cấp độ
Trang 16khác nhau cho từng loại dịch vụ Tài nguyên sử dụng có thể được giám sát, đo lường và khách hàng sẽ chỉ phải trả phí cho lượng tài nguyên họ sử dụng.
1.2 Các mô hình dịch vụ của điện toán đám mây
Hiện tại hầu hết các tổ chức và các công ty lớn trên thế giới đều thống nhất phân chia dịch vụ điện toán đám mây thành 3 tầng với các mức chức năng khác nhau ứng với mỗi tầng:
1.2.1 Dịch vụ hạ tầng
Mô hình IaaS cung cấp cho người dùng một hạ tầng ảo dưới hình thức là các máy chủ ảo, lưu trữ, mạng như là một dịch vụ Người dùng có thể triển khai và chạy các phần mềm trên các máy ảo như trên một máy chủ thực hay có thể đưa sữ liệu cá nhân lên “đám mây” và lưu trữ Người dùng không có quyển kiểm soát hạ tầng thực bên trong “đám mây” tuy nhiên họ có toàn quyền quản lý và sử dụng tài nguyên mà họ được cung cấp, cũng như yêu cầu mở rộng lượng tài nguyên họ được phép sử dụng [7], [8]
Các đặc trưng tiêu biểu của IaaS
- Cung cấp các tài nguyên như là dịch: bao gồm máy chủ ảo, thiết bị mạng, bộ nhớ, CPU, không gian đĩa cứng, lưu trữ dữ liệu
- Có khả năng mở rộng linh hoạt
- Chi phí được tính theo lượng tài nguyên sử dụng
- Một thiết bị vật lý có thể được chia sẻ cho nhiều người thuê cùng một lúc
Hiện tại nhà cung cấp dịch vụ máy chủ ảo nổi tiếng nhất là Amazon với các dịch vụ Amazon Elastic Computer Cloud (EC2) Đối với EC2 người dùng sau khi đăng kí tài khoản trong hệ thống là có thể tiến hành sử dụng dịch vụ bằng việc tạo máy ảo
và triển khai các ứng dụng trên máy ảo của mình Người dùng chỉ phải chi trả cho thời gian sử dụng, dụng lượng lưu trữ và băng thông mạng Ngoài Amazon còn có một số hãng khác cung cấp dịch vụ máy chủ ảo như Rackspace, GoGrid cũng cung cấp Iaas theo mô hình tương tự Hầu hết các tập đoàn công nghệ lớn hiện nay như Google, Mircosoft, Apple đều cung cấp dịch vụ lưu trữ trên nền điện toán đám mây,
Trang 17các thiết bị của người dùng có thể đồng bộ dữ liệu cá nhân từ bất kỳ thiết bị nào và
Những đặc trưng tiêu biểu
- Phục vụ cho môi trường phát triển, kiểm thử, triển khai và vận hành ứng dụng
- Các công cụ khởi tạo với giao diện trên nền Web
Những đặc trưng tiêu biểu của SaaS
- Phần mềm sãn có đòi hỏi việc truy xuất, quản lý qua mạng
Trang 18- Các ứng dụng sẽ được chạy tập trung trên hạ tầng của nhà cung cấp dịch vụ và cho phép người dùng truy xuất từ xa
- Những tính năng tập trung cần nâng cấp, giải phóng người dùng khởi việc tải các bản vá lỗi và cập nhật
- Thường xuyên tích hợp những phần mềm giao tiếp trên diện rộng
Dịch vụ email hay các ứng dụng Google Docs, Google Calendar của Google là các
ví dụ tiêu biểu cho hình thức cung cấp dịch vụ SaaS
Hình 1.2 Cấu trúc theo dịch vụ mô hình điện toán đám mây
1.3 Các mô hình triển khai điện toán đám mây
Các mô hinh triển khai điện toán đám mây về thực chất được phân chia theo các chính sách về quản lý truy nhập đối với mỗi đám mây và chúng được chia thành bốn loại sau:
- Đám mây công cộng
- Đám mây nội bộ
- Đám mây lai
- Đám mây cộng đồng
Trang 191.3.1 Đám mây công cộng
Một đám mây công cộng là một đám mây được xây dựng nhằm phục vụ cho mục đích sử dụng công cộng Người dùng sẽ đăng ký với nhà cung cấp đám mây công cộng và trả phí sử dụng dựa theo chính sách giá của nhà cung cấp Đám mây công cộng là mô hình triển khai phổ biến nhất của điện toán đám mây Khi người dùng sử dụng dịch vụ Amazon Web Services, các ứng dụng trực tuyến của Google hay các dịch vụ tương tự trên nền đám mây, họ đang sử dụng đám mây công cộng
1.3.2 Đám mây nội bộ
Các đám mây nội bộ tồn tại phía bên trong tường lửa của các công ty hay tổ chức Các dịch vụ mà các công ty, tổ chức đó tạo ra và được kiểm soát bên trong công ty, tổ chức đó
Hình 1.3 Mô hình đám mây nội bộ
1.3.3 Đám mây cộng đồng
Một đám mây cộng đồng là đám mây được chia sẻ bởi một số tổ chức và hỗ trợ một số cộng đồng cụ thể có mối quan tâm chung (chung sứ mệnh, yêu cầu an ninh, chính sách) Nó có thể được quản lý bởi một số tổ chức có yêu cầu tương tự
và tìm cách chia sẻ cơ sở hạ tầng để thực hiện một số lợi ích của điện toán đám mây
Trang 20Hình 1.4 Mô hình đám mây cộng đồng (nguồn Internet)
Hình 1.5 Mô hình đám mây lai (nguồn Internet)
Trang 211.4 Kết luận
Giải pháp điện toán đám mây có thể được coi là một bài toán lý tưởng giải quyết, khắc phục các điểm yếu hay các vấn đề mà nhiều doanh nghiệp hiện đang gặp phải như thiếu năng lực CNTT, chi phí đầu tư ban đầu hạn chế… Doanh nghiệp
sẽ không cần phải có cơ sở hạ tầng đồng bộ, triển khai nhanh chóng mà không phụthuộc nhiều vào các ứng dụng trên máy, tiết giảm chi phí nâng cấp ứng dụng, lượng tài nguyên sử dụng lớn, không cần tới bộ máy nhân sự cồng kềnh hay yêu cầu vềnhân sự kỹ thuật trình độ cao thấp, mô hình trả thuê bao và có thể dễ dàng thay đổi quy mô khi cần thiết Rõ ràng đây là những lợi ích thiết thực cho các doanh nghiệp,
tổ chức, cơ quan chính phủ cần quan tâm và cân nhắc
Cuộc khảo sát của hãng bảo mật Symantec được tiến hành trên 3700 tổ chức tại hơn 35 quốc gia trên thế giới, trong đó có Việt Nam Theo đó 46%các tổ chức tại Việt Nam đang triển khai đám mây lai và ảo hóa Lưu trữ dạng dịch vụ tư nhân (Private SaaS) có mức độ phổ biến thấp nhất với 39% tổ chức hiện đang ứng dụng, 20% và 21% doanh nghiệp triển khai ảo hóa máy chủ và ảo hóa lưu trữ Các doanh nghiệp vẫn đang tìm hiểu về khả năng của những công nghệ này và làm cách nào để khắc phục những thách thức đi kèm với chúng
Khảo sát cho thấy, các tổ chức hiện đang tận dụng công nghệ ảo hóa cho các ứng dụng quan trọng trong kinh doanh nhưng còn khá chậm chạp Trong số các doanh nghiệp Việt Nam đang ứng dụng công nghệ ảo hóa, 64% đơn vị dự định sẽ
ảo hóa các ứng dụng cơ sở dữ liệu trong vòng 12 tháng tới, 45% doanh nghiệp dự định sẽ ảo hóa các ứng dụng web và 64% đơn vị sẽ dự định ảo hóa email và các ứng dụng lịch biểu, 45% đơn vị dự định sẽ ảo hóa các ứng dụng ERP
Ngày càng có nhiều công ty tham gia vào quá trình phát triển các ứng dụng điện toán đám mây tiêu biểu như Microsoft, Google, Intel, IBM… đã và đang tạo ra một thị trường rộng lớn các ứng dụng điện toán đám mây, đem lại nhiều sự lựa chọn hơn cho các cá nhân, tổ chức có mong muốn “mây hóa” các ứng dụng và dữ liệu của mình Theo đánh giá của các chuyên gia hàng đầu về điện toán đám mây, việc phát triển điện toán đám mây trong tương lai sẽ tập trung vào 3 vấn đề chính bao
Trang 22gồm: Khả năng liên kết (Federated), tự động hóa (Automated), và nhận biết thiết bị đầu cuối (Client aware) Đây cũng là cách tiếp cận mới với vấn đề tự động hóa CNTT cho phép đáp ứng những yêu cầu của người dùng bằng cách mới, hiệu quảhơn và tiết kiệm chi phí hơn Các đám mây liên kết sẽ cho phép sắp xếp nhanh hơn các tài nguyên, trong khi các đám mây có khả năng nhận biết thiết bị đầu cuối sẽ tận dụng những tính năng đặc thù của mỗi thiết bị theo cách tối ưu Điện toán đám mây
sẽ là công nghệ được ứng dụng nhiều nhất trong tương lai
Trang 23CHƯƠNG II CÁC VẤN ĐỀ AN NINH TRONG ĐIỆN TOÁN ĐÁM MÂY 2.1 Định nghĩa về an ninh và đảm bảo an ninh
2.1.1 Khái niệm an ninh
An ninh thông tin là kết hợp của ba yếu tố:
- Tính bí mật: đảm bảo rằng chỉ những người có thẩm quyền mới xem và sử dụng được thông tin
- Tính toàn vẹn: đảm bảo thông tin không bị thay đổi trái phép, chỉ những người có thầm quyền mới được sửa đổi thông tin
- Tính sẵn sàng: dảm bảo hệ thống luôn sẵn sàng khi người dùng cần tới
2.1.2 Đảm bảo an ninh
Khi một trong ba yếu tố an ninh bị vi phạm thì tính an ninh của hệ thống sẽ bị ảnh hưởng:
- Mất tính bí mật: thông tin cần bảo vệ bị truy cập trái phép, nội dung thông tin bị lộ
Ví dụ: mật khẩu người dùng IaaS bị lộ khi truyền qua mạng dưới dạng clear text Hacker dùng mật khẩu này để truy cập vào máy chủ ảo, ăn cắp dữ liệu, phá hoại hệ thống…
- Mất tính toàn vẹn: thông tin bị thay đổi trái phép
Ví dụ: thông tin thanh toán của người dùng truyền tới ngân hàng bị thay đổi làm sai lệch số liệu
- Mất tính sẵn sàng: hệ thống bị tấn công làm tê liệt dịch vụ, không sẵn sàng đáp ứng nhu cầu khách hàng
Ví dụ: hệ thống cloud bị tấn công DDOS làm tê liệt dịch vụ, người dùng không thể truy cập vào dịch vụ cloud được
Để đảm bảo an ninh cho một hệ thống thông tin cần đảm bảo đủ 3 yếu tố: bí mật, toàn vẹn, sẵn sàng
2.1.3 Vấn đề an ninh với điện toán đám mây
Mặc dù lợi ích của điện toán đám mây mang lại cho doanh nghiệp và người dùng là không phủ nhận cũng như xu hướng phát triển hạ tầng, dịch vụ trên nền điện toán đám mây là xu hướng mạnh hiện nay Tuy nhiên cũng vì thế mà các vấn
Trang 24đề về an ninh cho điện toán đám mây cũng trở nên nhiều hơn Một trong những vấn
đề an ninh nổi trội đó là việc quản lý dữ liệu người dùng, việc đảm bảo sự riêng tư cho dữ liệu người dùng
2.2 Các nguy cơ an ninh đối với điện toán đám mây và cách khắc phục
2.2.1 An ninh mức vật lý
Một số nguy cơ về mặt vật lý đối với các hệ thống điện toán đám mây:
- Hệ thống bị sự cố về thảm họa tự nhiên: động đất, bão…
- Hệ thống bị sự cố về điện: mất điện
- Hệ thống bị người khác xâm nhập trái phép, phá hoại về mặt vật lý
Các biện pháp khắc phục:
- Xây dựng hệ thống datacenter ở những vị trí địa lý khác nhau (mô hình multisites)
- Các thiết bị, máy chủ phải được đặt trong phòng cách ly riêng (tủ có khóa, niêm phong các cổng usb, com…) và áp dụng các biện pháp kiểm soát như thẻ từ, sinh trắc học…
- Áp dụng hệ thống cảnh báo nhiệt độ, cảnh báo điện, dự phòng điện (smart UPS, máy nổ )
- Xây dựng các chính sách về quản lý truy cập đối với người ra vào khu vực trung tâm dữ liệu
+ Quyền truy cập phải được thu hồi ngay lập tức khi công việc của nhân viên hết nhu cầu truy cập vào trung tâm dữ liệu
+ Tất cả các truy cập về mặt vật lý và điện tử tới trung tâm dữ liệu của nhân viên phải được ghi nhật ký và kiểm tra định kỳ
+ Áp dụng các công cụ kiểm định để người dùng có thể dễ dàng đánh giá dữ liệu của họ được lưu trữ, bảo vệ, sử dụng như thế nào và thẩm định các chính sách đã thực thi
2.2.2 An ninh cho hạ tầng mạng
2.2.2.1 Một số nguy cơ an ninh mạng truyền thống đối với mô hình điện toán đám mây
a Tấn công từ chối dịch vụ
Trang 25Tấn công gây từ chối dịch vụ là dạng tấn công đơn giản và phổ biến nhất, kiểu tấn công này nhằm vào tính sẵn sàng của hệ thống Dạng tấn công này được thực hiện bằng cách gửi thật nhiều các yêu cầu phục vụ đến máy dịch vụ làm cho máy dịch vụ phải sản sinh ra nhiều tiến trình con và hệ thống phải cấp phát bộ nhớ
và vùng đệm cho chúng Đến một lúc nào đó tài nguyên của hệ thống sẽ cạn kiệt và
hệ thống trở nên “trơ” đối với các yêu cầu hợp lệ khác từ khách hàng, nghĩa là hệ thống đang ở trong tình trạng từ chối dịch vụ
Một số dạng tấn công từ chối dịch vụ:
- Ping of death: kẻ tấn công thực hiện gửi gói ICMP với kích thước lớn, chẳng hạn: ping 192.168.10.50 – t 65000 Khi gói này được tạo ra và truyền đến đích, nó sẽ bị phân mảnh trên đường truyền và được tái hợp lại ở đích với độ lớn 65000 và có thể làm tràn vùng đệm trên nhiều hệ thống và gây ra tình trạng từ chối dịch vụ
- SYN attack: kiểu tấn công này khai thác điểm yếu của thủ tục bắt tay 3 bước khi thiết lập một kết nối TCP Kẻ tấn công sẽ gửi gói tin yêu cầu thiết lập kết nối Server nhận được sẽ cấp phát một vùng tài nguyên, gửi lại phản hồi và chờ việc thiết lập kết nối Kẻ tấn công tiếp tục gửi hàng loạt yêu cầu tới server bị hết tài nguyên và không thể phục vụ kết nối tiếp theo Khi này, một khách hàng thật sự kết nối tới hệ thống thì hệ thống đang ở trong tình trạng quá tải và không thể phục vụ
- IP Sumurfing: kẻ tấn công gửi broadcast một gói tin SYN cho 1 mạng đích với IP nguồn là máy nạn nhân Khi đó nạn nhân sẽ phải xử lý một khối lượng SYN/ACK rất lớn từ tất cả các máy thuộc mạng đích Nếu kẻ tấn công còn lặp lại việc này nhiều lần thì máy nạn nhân sẽ hết vùng nhớ đệm và rơi vào tình trạng từ chối dịch vụ
- Land attack: kẻ tấn công gửi một gói tin với địa chỉ Ip nguồn và ip đích trùng nhau
và trùng với ip của hệ thống nạn nhân, số hiệu cổng TCP nguồn và đích trùng nhau Khi đó hệ thống nạn nhận sẽ trao đổi dữ liệu với chính nó và bị hao phí tài nguyên cho hoạt động vô ích này
b Tấn công Man –in –the-middle (MITM attack)
Trang 26Một trong những tấn công mạng thường thấy nhất được sử dụng để chống lại những cá nhân và tổ chức lớn chính là các tấn công MITM (Man in the Middle) Có thể hiểu nôm na về kiểu tấn công này thì nó như một kẻ nghe trộm MITM hoạt động bằng cách thiết lập các kết nối đến máy tính nạn nhân và gửi lại các message giữa chúng Trong trường hợp bị tấn công, nạn nhân cứ tin tưởng là họ đang truyền thông một cách trực tiếp với nạn nhân kia, trong khi đó sự thực thì các luồng truyền thông lại bị thông qua host của kẻ tấn công Và kết quả là các host này không chỉ có thể thông dịch dữ liệu nhạy cảm mà nó còn có thể gửi xen vào cũng như thay đổi luồng dữ liệu để kiểm soát sâu hơn những nạn nhân của nó Một số dạng tấn công MITM:
- ARP cache attack: tấn công lợi dụng điểm yếu của giao thức ARP (giao thức phân giải địa chỉ IP địa chỉ MAC) Không giống như các giao thức khác, các thiết bị sử dụng giao thức ARP sẽ chấp nhận cập nhật bất cứ lúc nào Điều này có nghĩa rằng bất cứ thiết bị nào có thể gửi gói ARP reply đến một máy tính khác và máy tính này
sẽ cập nhật vào bảng ARP cache của nó ngay giá trị mới này Kẻ tấn công có thể dùng gói ARP để giả mạo địa chỉ MAC của máy đích và máy nguồn tưởng rằng máy giả mạo là máy đích mình cần truyền thông
- DNS spoofing: giả mạo DNS là một kỹ thuật MITM được sử dụng nhằm cung cấp thông tin DNS sai cho một host để khi người dùng duyệt đến một địa chỉ nào đó, ví
dụ www.mybank.com có IP XXX.XX.XX.XX thì cố gắng này sẽ được gửi đến một địa chỉ www.mybank.com giả mạo cư trú ở địa chỉ IP YYY.YY.YY.YY, đây là địa chỉ mà kẻ tấn công đã tạo trước để đánh cắp các thông tin tài khoản ngân hàng trực tuyến từ người dùng
- DHCP spoofing: hoạt động tương tự như DNS spoofing, kẻ tấn công sẽ giả mạo làm DHCP server để cấp ip sai cho nạn nhân
2.2.2.2 Các nguy cơ an ninh phát sinh do đặc điểm hệ thống mạng của hệ thống điện toán đám mây
Trong mô hinh IaaS, kiến trúc an ninh truyền thống chia hệ thống mạng thành 3 zones (internal, dmz, external) đã không còn tỏ ra hiệu quả cũng như khả
Trang 27năng đảm bảo an ninh cho hệ thống Thay vì chia thành 3 vùng như trong mô hình truyền thống các chính sách an ninh được đối với các máy ảo được tổ chức theo các
“security group”, “security domain” Phương pháp tổ chức mới này thích hợp với việc các máy chủ ảo của một người sử dụng có thể phân tán đặt trên nhiều địa điểm khác nhau và cần thiết có một chính sách chung về an ninh
Ví dụ trong openstack, một giải pháp cho phép tạo hệ thống IaaS, các “security group” cho phép tạo ra các tường lửa ảo đối với mỗi máy ảo, mỗi “security group”
có các chính sách riêng trong việc cho phép các giao tiếp giữa máy ảo đối với môi trường bên ngoài như cho phép các IP xác định có thể giao tiếp với hệ thống, lọc gói tin vào ra dựa theo từng loại giao thức như ICMP, TCP, UDP, theo cổng, theo một dải các cổng [11]
Tuy vậy do đặc điểm của hệ thống điện toán đám mây IaaS là các máy ảo nằm cùng trong một hệ thống vật lý và sử dụng chung một card mạng vật lý nên các kẻ xấu có thể lợi dụng điều này tiến hành nghe lén trên card mạng chung để lấy các thông tin
về máy chủ ảo của các khách hàng khác Và vì sử dụng chung một card mạng vật lý nên giao tiếp giữa 2 máy ảo trên cùng một máy chủ vật lý sẽ không chịu ảnh hưởng của lớp “firewall ảo”, điều này khiến cho các kẻ xấu có thể tiến hành một cuộc tấn công đối với các máy ảo khác nằm cạnh bên nó
2.2.2.3 Một số biện pháp đảm bảo an ninh về hạ tầng mạng cho điện toán đám mây
Để đảm bảo an ninh về hạ tầng mạng cho điện toán đám mây, có thể thực hiện các biện pháp dưới đây:
- Các giao dịch trên mạng kể cả của nhà cung cấp (giao dịch giữa các thành phần trong hệ thống điện toán đám mây) hay khách hàng (đăng nhập vào hệ thống quản trị, remote tới các máy ảo) cần sử dụng kênh truyền được mã hóa
Ví dụ: dùng SSH thay cho telnet, HTTPS thay cho HTTP, remote thông qua kết nối VPN…
- Áp dụng các biện pháp kiểm soát truy cập firewall và accesslist
Trang 28Ví dụ: áp dụng hệ thống firewall lên từng nhóm máy ảo dịch vụ khác nhau, mặc định chặn hết các lưu lượng đi vào, cài các firewall lên chính máy ảo của người dùng…
- Phân vùng mạng thành các mạng ảo (Vlan) và áp dụng chính sách truy cập giữa các Vlan
Ví dụ: phân mạng thành các security group, phân chia các máy ảo theo các Vlan ngay trên máy chủ vật lý, đảm bảo các máy ảo không thể sniff dữ liệu của nhau ngay khi nằm trên cùng một máy thật
- Gán Mac –IP tĩnh cho máy ảo, không cho phép máy ảo gửi dữ liệu đi mà địa chỉ
IP hoặc Mac khác với địa chỉ đã được cấp
- Thiết lập các biện pháp giới hạn băng thông mạng đối với mỗi máy ảo tránh trường hợp các máy ảo chiếm quá nhiều băng thông, chiếm hết băng thông mạng của các máy ảo khác năm cùng trên một máy chủ vật lý
- Áp dụng các hệ thống phát hiện và ngăn chặn xâm phạm hệ thống (IDS/IPS ) Các thiết bị IDS/IPS phát hiện tấn công dựa theo một tập dấu hiệu được cập nhật thường xuyên bới các chuyên gia an ninh mạng Việc sử dụng các thiết bị IDS/IPS có thể phát hiện được nhiều hình thức tấn công mới do vậy sẽ nâng cao tính an ninh cho hệ thống
- Tổng hợp và tra nhật ký định kỳ về các sự cố xảy ra trong mạng
2.2.2.4 An ninh cho máy chủ vật lý
Trong hệ thống điện tóan đám mây, các dịch vụ IaaS, PaaS, SaaS đều phải chịu các vấn đề, nguy cơ an ninh có thể xảy ra đối với các thiết bị vật lý theo mô hình cũ, tuy nhiên trong nghiên cứu về đảm bảo an ninh cho điện toán đám mây có 2 vấn đề mà
ta cần quan tâm đó là an ninh cho phần mềm ảo hóa (hypervisor) và phần mềm triển khai dịch vụ điện toán đám mây
a An ninh cho phần mềm ảo hóa
Ảo hóa chính là công nghệ then chốt trong mô hinh IaaS cho nên tính toàn vẹn và sẵn sàng của hypervisor là cực kỳ quan trọng và là chìa khóa để đảm bảo tính toàn vện và sẵn sàng của đám mây Hypervisor là thành phần thiết yếu để đảm
Trang 29bảo việc ngăn cách và tách biệt các máy ảo của khách hàng trong một môi trường dùng chung phần cứng nên nếu để mất quyền kiểm soát hypervisor vào kẻ tấn công thì hậu quả sẽ rất nặng nề.
Nguy cơ về an ninh với hypesvisor nằm chính trong những lỗ hổng của hypervisor đó Rất nhiều phàn mềm ảo hóa hiện nay đều có những lỗ hổng có thể khai thác được, từ đó hacker có thể chiếm quyền điều khiển máy chủ vật lý
Ví dụ:
- Bằng cách khai thác lỗ hổng zero-day trong HyperVM – một ứng dụng ảo do công
ty Lxlabs tạo ra, các hackers đã phá hủy 100000 web site đang được hotting tại Vaserv.com Lỗ hổng zero –day khiến cho các kẻ tấn công quyền được thực thi các câu lệnh Unix nhạy cảm trên hệ thông, bao gồm rm-rf, một câu lệnh để xóa toàn bộ file Hiển nhiên là một vài ngày trước cuộc tấn công, một người ẩn danh đã post lên web site milw0rm một danh sách dài các lỗi chưa được vá trong Kloxo, một thành phần control panel hosting được tích hợp vào HyperVM
- Một lỗ hổng trong Microsoft Virtual PC và Microsoft Virtal Server có thể cho phép người dùng từ trong máy ảo có thể chạy các đoạn mã trên máy chủ hay vật lý hay các máy ảo khác
- Một lỗ hổng trong máy chủ DHCP của phần mềm ảo hóa VM ware có thể khiến cho các tin tặc có thể kiểm soát môi trường ảo nhằm chạy bất cứ máy ảo nào
Một số biện pháp để đảm bảo an ninh cho hypervisor:
- Thường xuyên cập nhật bản vá mới nhất cho phần mềm ảo hóa
- Tách biệt: phần mềm chạy trên một máy ảo không thể truy cập hay chỉnh sửa phần mềm chạy trên máy chủ vật lý hay các máy ảo khác
- Kiểm duyệt: hypervisor có thể giám sát các thông tin về trạng thái của máy ảo như CPU, bộ nhớ, I/O…
-Can thiệp: hyervisor có thể ngăn chặn các câu lệnh của máy ảo tác động đến các thành phần nhạy cảm trong hệ thống của máy thật
- Hạn chế truy cập vật lý hay logic tới hypervisor, chỉ có người quản trị đủ thẩm quyền mới được cấu hình và giám sát hypervisor
Trang 30- Có sự hỗ trợ của phần mềm diệt virut khi phát hiện và ngăn chặn các can thiệp trái phép từ máy ảo vào máy thật.
b An ninh cho phần mềm triển khai dịch vụ điện toán đám mây
Để xây dựng một hệ thống điện toán đám mây thì điều kiện tiên quyết là cần thiết phải có một phần mềm có khả năng triển khai dịch vụ Bởi vậy các phần mềm này chính là xương sống trong các hệ thống đám mây cho cả ba mô hình dịch vụ IaaS, PaaS, SaaS
Ta nên triển khai các biện pháp sau để đảm bảo an ninh:
- Thường xuyên cập nhật cho phần mềm hệ thống
2.2.2.5 An ninh cho máy chủ ảo
Các khách hàng IaaS có toàn quyền truy cập tới các máy ảo VM được hostiing và phân tách với các máy ảo khác bởi công nghệ hypervisor Do đó các khách hàng sẽ chịu trách nhiệm cho việc đảm bảo và quản lý an ninh đối với máy ảo
VM của họ Các thiết lập mặc định của các nhà cung cấp dịch vụ máy chủ ảo sẽ chặn tất các các kết nối từ bên ngoài Internet vào máy ảo, chỉ cho phép một số cổng được nhà cung cấp quy định dịch vụ Tuy nhiên, phần lớn các công mặc định này là của phần mềm cho phép điều khiển từ xa máy ảo mà không hỗ trợ tạo một kênh truyền mã hóa điều này sinh ra nguy cơ bị nghe trộm phiên điều khiển [1]
Một số mối đe dọa mới tới an ninh cho máy ảo bao gồm:
- Đánh cắp khóa truy cập vào máy ảo hay khóa bí mật để thiết lập kênh truyền an toàn
- Dữ liệu truyền thông giữa người điều khiển và máy ảo trên đám mây bị nghe trộm
do sử dụng các phương thức truyền thông không an toàn
Trang 31- Tấn công những lỗ hổng chưa vá, tấn công những cổng dịch vụ chuẩn mở (FTP, NetBIOS, SSH)
- Chiếm tài khoản không được bảo vệ (tài khoản với mật khẩu yếu hoặc không có mật khẩu)
- Tấn công hệ thống không được bảo vệ bởi tường lửa của host
- Cài troans nhúng trong các thành phần phần mềm trong VM hoặc trong ảnh sử dụng cho VM
Đảm bảo an ninh cho máy chủ ảo yêu cầu các biện pháp điều hành an ninh mạng cùng với các thủ tục tự động Sau đây là một số khuyến cáo:
- Hạn chế việc chạy quá nhiều dịch vụ có kết nối tới internet trên cùng một máy ảo Việc chạy càng nhiều dịch vụ có kết nối tới internet sẽ làm tăng số lượng lỗ hổng
mà các tin tặc có thể lợi dụng phá hoại các dịch vụ bên trong máy ảo cũng như điều
nó làm phức tạp hóa quá trình quản trị cũng như phát hiện lỗi của người quản trị máy ảo Lợi thế của việc sử dụng điện toán đám mây là ta chỉ phải chi trả cho những gì ta sử dụng, bởi vậy biện pháp tốt nhất là tính toán yêu cầu cần thiết về tài nguyên đối với mỗi dịch vụ và chạy chúng trên nhiều máy ảo khác nhau
-Kiểm tra nguồn gốc để đảm bảo ảnh sắp được sử dụng để tạo các máy ảo không có các nguy cơ về an ninh, không bị cài đặt các phần mềm gián điệp Biện pháp tốt nhất là tự cung cấp một máy ảo dành cho chính mình Các ảnh máy ảo được tạo bởi các nhà cung cấp dịch vụ đám mây cũng là một lựa chọn tốt
- Thiết lập giải pháp điều khiển từ xa dựa trên kênh truyền an toàn cũng như việc tăng cường các biện pháp xác thực người dùng (sử dụng SSH hay VPN cho kênh truyền an toàn)
- Đảm bảo an toàn cho khóa bí mật được sử dụng để mã hóa và giải dữ liệu trên máy ảo Về nguyên tắc, không được giữ khóa bí mật ở cùng một chỗ với dịch vụ khi dịch vụ không hoạt động tuy nhiên với các dịch vụ chạy liên tục
- Không cho phép chứng thực password hoặc các truy cập phân quyền cơ bản
- Chạy tường lửa trên host và chỉ mở một lượng tối thiểu các cổng cần thiết để hỗ trợ dịch vụ trên máy ảo
Trang 32- Cài đặt một host-based IDS như OSEC hoặc Samhain
- Bật các giám sát và ghi log hệ thống, ghi log lại các security event vào một server chứa log riêng Cô lập server ghi log với các biện pháp bảo vệ an ninh mức độ cao, bao gồm kiểm soát truy cập
- Nếu tình nghi có sự tấn công, cần tắt máy ảo, snapshot ngay block volume và backup root filesystem Sau đó cần xây dựng lại hệ thống mới đảm bảo không bị tấn công tương tự xảy ra
- Xây dựng một tiến trình vá lỗi cho ảnh bao gồm cả anh offline và ảnh đang trực tiếp sử dụng
- Định kỳ kiểm tra log để phát hiện các hoạt động khả nghi
2.2.2.6 An ninh về dữ liệu
Thách thức không nhỏ đối với các tổ chức trong việc ứng dụng điện toán đám mây là việc quản lý dữ liệu Nhiều tổ chức đơn vị đã thông báo rằng một số cá nhân riêng lẻ hay các đơn vị nhỏ thường tự ý đưa các dữ liệu nhạy cảm lên lưu trữ trên hệ thống điện toán đám mây mà không thực hiện bất kỳ một quy trình thẩm định an ninh nào Điều này gây ra nguy cơ rất lớn về việc các dữ liệu nhạy cảm có thể bị tiết lộ do người sử dụng không ý thức được hết các nguy cơ mà họ gặp phải.Tháng 8/2012, các tin tặc đã tìm thấy một bản danh sách chứa rất nhiều thông tin về các khách hàng của Dropbox được lưu bên trong tài khoản Dropbox của một nhân viên của công ty này Hậu quả là những người trong danh sách phải gánh chịu các tin nhắn rác vào trong hòm thư của họ
Chúng ta có thể áp dụng các biện pháp sau để đảm bảo an toàn cho dữ liệu trên đám mây:
a Bảo vệ dữ liệu đường truyền tới đám mây
Đối với tất cả các mô hình triển khai điện toán đám mây: publich cloud, private cloud, hybrid cloud, community cloud thì điều đầu tiên là đảm bảo an ninh cho dữ liệu đường truyền đi tới đám mây Các dữ liệu này bao gồm:
- Dữ liệu được truyền từ người dùng, các công ty tới nhà cung cấp cloud bao gồm
cả public/privata cloud
Trang 33- Dữ liệu được truyền giữa các nhà cung cấp cloud
- Dữ liệu được truyền giữa các máy ảo, các thành phần khác bên trong cloud
Bởi vậy có 3 tùy chọn nên thực hiện để đảm bảo an ninh:
- Client/application encryption: dữ liệu cần phải được mã hóa từ phía client hoặc server trước khi gửi đi qua mạng, hoặc nó phải tồn tại dưới định dạng mã hóa Hoạt động này bao gồm cả việc mã hóa trên chính máy client hoặc ứng dụng mã hóa được tích hợp vào ứng dụng cloud
- Link/network encryption: sử dụng các giao thức an ninh như: SSL, VPN, SSH…để đảm bảo việc thông tin truyền đi trên mạng không bị nghe lén
- Proxy/based encryption: dữ liệu sẽ được truyền qua proxy trước khi gửi đi qua mạng internet, proxy này làm nhiệm vụ mã hóa các dữ liệu được gửi đi
b Bảo vệ dữ liệu bên trong đám mây
* Phân loại dữ liệu bên trong đám mây
Để bảo vệ dữ liệu bên trong đám mây, trước hết cần xác định, thiết lập ra các quy tắc để phân loại các loại dữ liệu thành các nhóm dữ liệu khác nhau, để từ đóthiết lập ra các chính sách an ninh cho từng loại dữ liệu Các mức độ “nhạy cảm” của dữ liệu được chia ra như sau:
- Bí mật công ty
- Dữ liệu riêng tư của các cá nhân trong công ty
- Nhạy cảm – thường là thông tin khách hàng
- Công cộng – bất kỳ một ai cũng có thể theo dõi được
* Mã hóa dữ liệu bên trong đám mây
- Mã hóa dữ liệu bên trong hệ thống IaaS
- Mã hóa các volume (các không gian lưu trữ dữ liệu cho các máy ảo)
+ Có ai đó snapshot (tạo ra bản sao) trái phép các volumey
+ Dữ liệu bên trong volume bị nhà cung cấp dịch vụ sử dụng trái phép
+ Bảo vệ dữ liệu trong trường hợp các thiết bị vật lý của nhà cung cấp bị mất
- Mã hóa volume có thể được mã hóa sử dụng 3 phương thức:
Trang 34+ Instance managed encrytion: thành phần mã hóa volume hoạt động bên trong instance để thực hiện mã hóa volume gắn vào instance, khóa được lưu trữ bên trong volume được bảo vệ bởi mật khẩu hoặc cặp khóa bí mật.
+ Enternall managed encryption: thành phần mã hóa hoạt động bên trong instance nhưng khóa bảo mật được quản lý từ xa và cung cấp mỗi khi có yêu cầu
+ Proxy encryption: trong mô hình này khi bạn kết nối tới volume từ 1 instance hoặc ứng dụng xác định sau đó kết nối từ instance của bạn tới 1 instance được mã hóa, proxy sẽ điều khiển hoạt động mã hóa
- Mã hóa các object (dữ liệu được đưa lên đám mây) trong hệ thống obiect storage:Object storage encryption giúp bảo vệ khỏi các nguy cơ tương tự như đối với việc
mã hóa các volume Ta có thể áp dụng các phương pháp sau cho việc mã hóa các object:
+ File/folder encryption: sử dụng các công cụ để mã hóa file hoặc folder trước khi
nó được lưu trữ trên hệ thống object storage
+ Client/application encryption: mã hóa dữ liệu được thực hiện bởi cac engine được nhúng bên trong ứng dụng hoặc ở trên client
+Proxy encryption: dữ liệu sẽ được mã hóa ở các proxy trước khi được gửi đến các
hệ thống Object storage
Mã hóa trong hệ thống PaaS
Ta có thể áp dụng các biện pháp sau để mã hóa đối với dữ liệu PaaS
+ Client/application encryption: dữ liệu được mã hóa tại PaaS application hoặc client sử dụng plaform này
+ Database encryption: dữ liệu được mã hóa trong cơ sở dữ liệu sử dụng các tính năng được hỗ trợ bởi các hệ cơ sở dữ liệu
+ Proxy encryption: dữ liệu sẽ được chuyển qua proxy để mã hóa trước khi gửi tới platform
SaaS encryption
Các ứng dụng SaaS được khuyến nghị sử dụng khóa bí mật cho từng người
sử dụng, điều đó đảm bảo tính cô lập của mỗi người dùng trong hệ thống
Trang 35Ta có thể áp dụng các biện pháp sau để mã hóa đối với dữ liệu SaaS:
+ Provider – managed encryption: dữ liệu sẽ được mã hóa trên SaaS application và được quản lý bởi nhà cung cấp dịch vụ
+ Proxy encryption: dữ liệu được truyền thông qua encryption proxy trước khi tới ứng dụng SaaS
2.2.2.7 Hệ thống quản lý và giám sát an ninh
Để đảm bảo cho hệ thống hoạt động luôn sẵn sàng, cần xây dựng các hệ thống để quản lý và giám sát an ninh cho hạ tầng điện toán đám mây
a Hệ thống quản lý
Xây dựng hệ thống quản lý để quản lý các hoạt động của hệ thống:
- Quản lý tính sẵn sàng: sẵn sàng về hạ tầng và dịch vụ
+ Sẵn sàng về mạng: cần bằng tải, cấu hình failover
+ Sẵn sàng về máy chủ: chạy cluster, cân bằng tải server, backup…
+ Sẵn sàng về dữ liệu: backup, lưu trữ ra thiết bị chuyên dụng như SAN…
- Quản lý truy cập: sử dụng chứng thực mạnh (khóa công khai, sinh trắc học ), phân quyền truy cập theo role-based, mã hóa SSH
- Quản lý các lỗ hổng: hệ điều hành, ứng dụng, thường xuyên cập nhật các bản vá
an ninh
b Hệ thống giám sát an ninh
Xây dựng hệ thống giám sát an nin để theo dõi tình trạng an ninh của hệ thống và đưa ra các cảnh báo kịp thời nếu có các nguy cơ mất an ninh xảy ra:
- Xây dựng hệ thống giám sát: giám sát tình trạng sức khỏe hệ thống (máy chủ vật
lý, máy chủ ảo, dịch vụ web ) Sử dụng các tool monitor để giám sát như: Nagios, Ganglia, Zabbix, Zenoss…
- Áp dụng các giải pháp phát hiện và chống xâm nhập sử dụng các thiết bị instruction detection system và instruction prevention system
2.2.2.8 An ninh cho vấn đề xác thực người dùng
Xác thực là quá trình xác nhận danh tính của một ai đó hoặc một cái gì đó có hợp lệ không Nó sử dụng các thông tin được cung cấp cho mục đích xác thực để
Trang 36xác định xem thực thể cần xác thực có đúng với những gì cần khai báo trước đó hay không Trong các hệ thống máy tính riêng tư hay công khai thì quá trình liên quan đến một ai đó, thường là người dùng, người dùng thường được sử dụng một mật khẩu được cung cấp bởi quản trị hệ thống để đăng nhập vào hệ thống đó.
Có khá nhiều phương thức xác thực được sử dụng hiện nay như:
Một số biện pháp để có thể tăng cường an ninh trong quá trình xác thực người sử dụng:
- Sử dụng biện pháp xác thực đa nhân tố như kết hợp mật khẩu dùng một lần với mật khẩu dùng lại
- Sử dụng một số biện pháp xác thực mạnh Ví dụ: chữ ký số…
2.3 Mã hóa
Mã hóa là phương pháp mạnh nhất trong việc đảm bảo an ninh và an toàn dữ liệu Trên lý thuyết thì mọi dữ liệu đều cần thiết phải được mã hóa để đảm bảo an toàn dữ liệu cho người dùng không bị đánh cắp hoặc bị xem trộm khi chưa được phép của chủ sở hữu số dữ liệu đó Hiện tại trên thế giới có hai phương pháp mã hóa phổ biến sau: [5]
2.3.1 Hệ mật mã khóa đối xứng
Các phương pháp mật mã cổ điển đã được biết đến từ khoảng 4000 năm trước Một số kĩ thuật đã được người Ai Cập sử dụng từ nhiều thế kỉ trước Những kĩ thuật
Trang 37này chủ yếu sử dụng hai phương pháp chính đó là: phép thay thế và phép chuyển dịch Trong phép thay thế, mỗi chữ cái được thay thế bởi một chữ cái khác và trong phép chuyển dịch, các chữ cái được sắp xếp theo một trật tự khác Người gửi và người nhận có cùng một khoá chung K, được giữ bí mật dùng cho cả mã hóa và giải
mã Những hệ mật mã cổ điển với cách sử dụng trên được gọi là mật mã khoá đối xứng hay còn gọi là mật mã khoá bí mật Độ an toàn của hệ mật mã đối xứng phụ thuộc vào độ an toàn của khóa Nếu để lộ khoá thì bất kỳ người nào cũng có thể mã hoá và giải mã thông điệp
Ưu điểm nổi bật của các hệ mật mã khoá đối xứng là việc xây dựng một hệ mật
mã có độ bảo mật cao khá dễ dàng về mặt lý thuyết Nhưng nếu không kể đến việc cần có một nguồn sinh khoá ngẫu nhiên thì việc phân phối, lưu trữ bảo mật và thoả thuận khoá là một vấn đề khó khăn trong mạng truyền thống ngày nay Trong một
mạng có n người dùng, nếu cần khoá cho từng cặp thì cần n(n+1)/2 khoá Như vậy
tính dễ dàng trong phân phối và thoả thuận khoá là một vấn đề chưa thể được giải quyết trong các hệ mật mã khoá đối xứng [5], [6]
2.3.2 Hệ mật mã khóa công khai
Để giải quyết vấn đề phân phối và thoả thuận khoá của mật mã khoá đối xứng, năm 1976 Diffie và Hellman đã đưa ra khái niệm về hệ mật mã khoá công khai và một phương pháp trao đổi công khai để tạo ra một khoá bí mật chung mà tính an toàn được bảo đảm bởi độ khó của một bài toán toán học cụ thể Hệ mật mã khoá công khai hay còn được gọi là hệ mật mã bất đối xứng sử dụng một cặp khoá, khoá
mã hoá còn gọi là khoá công khai (public key) và khoá giải mã được gọi là khoá bí mật hay khóa riêng (private key) Trong hệ mật này, khoá mã hoá khác với khoá giải mã và thuật toán để mã hóa cũng khác với thuật toán dùng để mã hóa Về mặt toán học thì từ khoá công rất khó tính được khoá riêng, biết được khoá này không
dễ dàng tìm được khoá kia Hệ mật mã RSA còn cho phép mã hóa bằng một trong hai khóa và giải mã bằng khóa còn lại [5], [6]
Khoá giải mã được giữ bí mật trong khi khoá mã hoá được công bố công khai Một người bất kỳ có thể sử dụng khoá công khai để mã hoá tin tức nhưng chỉ có
Trang 38người nào có đúng khoá giải mã mới có khả năng xem được bản rõ Người gửi A sẽ
mã hoá thông điệp bằng khóa công khai của người nhận B và người nhận B sẽ giải
mã thông điệp với khoá riêng tương ứng của mình
Hình 2.1 Giải mã dùng khóa công khai
2.3.3 Hàm băm
Hàm băm là giải thuật nhằm sinh ra các giá trị băm tương ứng với mỗi khối dữ liệu (có thể là một chuỗi kí tự, một đối tượng trong lập trình hướng đối tượng v.v ) Giá trị băm đóng vai gần như một khóa để phân biệt các khối dữ liệu, tuy nhiên, người ta chấp hiện tượng trùng khóa hay còn gọi là đụng độ và cố gắng cải thiện giải thuật để giảm thiểu sự đụng độ đó Hàm băm thường được dùng trong bảng băm nhằm giảm chi phí tính toán khi tìm một khối dữ liệu trong một tập hợp (nhờ việc so sánh các giá trị băm nhanh hơn việc so sánh những khối dữ liệu có kích thước lớn) [5], [6]
Trang 392.3.4 Quá trình mã hóa trong các hệ mật mã khóa công khai
Thực tiễn triển khai cho thấy tốc độ mã hoá khối dữ liệu lớn bằng các thuật toán mật mã khóa công khai chậm hơn rất nhiều so với hệ mã hoá đối xứng Để đạt được
độ an toàn như các hệ mã đối xứng mạnh cùng thời, RSA đòi hỏi thời gian cho việc
mã hoá một văn bản lâu hơn gấp hàng ngàn lần Do đó, trong các tình huống yêu cầu mã hóa khối lượng lớn dữ liệu và có yêu cầu về tốc độ mã hóa thay bằng việc
mã hoá văn bản có kích thước lớn bằng lược đồ khoá công khai thì văn bản này sẽ được mã hoá bằng một hệ mã đối xứng… sau đó khoá được sử dụng trong hệ mã đối xứng sẽ được mã hoá sử dụng mật mã khoá công khai Phương pháp này rất khả thi trong việc mã và giải mã những văn bản có kích thước lớn như được mô tả trong hình sau:
Trang 40+ Quá trình giải mã
Người nhận sử dụng khóa bí mật của mình để giải mã khóa phiên được sử dụng
để mã hóa và giải mã thông tin Sau khi có khóa phiên đó thì thông tin ban đầu được thu lại bằng cách sử dụng khóa phiên để giải mã
Hình 2.3 Quá trình giải mã
Ưu điểm của phương pháp:
- Do tốc độ của mã hóa đối xứng là nhanh hơn rất nhiều so với mã hóa khóa công khai, nên việc mã hóa dữ liệu bằng mã hóa đối xứng là nhanh và thuật tiện hơn rất nhiều Đặc biệt trong trường hợp thông điệp phải được gửi cho nhiều người (ví dụ là 20), nếu chỉ sử dụng mã hóa phi đối xứng, ta sẽ phải mã hóa 20 lần thông điệp này bằng 20 khóa công khai khác nhau như vậy sẽ rất chậm Nếu
ta dùng mô hình kết hợp, ta chỉ phải mã hóa một lần thông điệp bằng mã hóa đối xứng (với tốc độ nhanh hơn và ít lần hơn) Sau đó ta mã hóa 20 lần khóa phiên bằng 20 khóa công khai khác nhau để gửi đi Do độ lớn của khóa phiên hầu hết các trường hợp là nhỏ hơn nhiều so với thông điệp nên việc mã hóa sẽ phù hợp với thiết kế của mã hóa khóa công khai (nằm trong giới hạn về độ lớn dữ liệu được cho phép) và sẽ diễn ra nhanh hơn Do vậy nhược điểm về tốc độ và giới hạn độ lớn dữ liệu được mã hóa của mã hóa khóa công khai được khắc phục