Hiện nay, điện toán đám mây (“Cloud Computing”) đã và đang trở thành một trong những thuật ngữ được nhắc đến nhiều nhất trong ngành công nghệ thông tin. Thuật ngữ “Cloud Computing” được bắt nguồn từ ý tưởng đưa tất cả mọi vấn đề như dữ liệu, phần mềm, dữ liệu tính toán,… lên trên mạng InternetĐồ án bao gồm những nội dung sau: Chương 1: Tổng quan về điện toán đám mây Chương 2: An ninh trong mạng internet Chương 3: An ninh và bảo mật trong điện toán đám mâyChương 4: Vmware_giải pháp cho cloud computing
Trang 1
NHẬN XÉT CỦA GIẢNG VIÊN HƯỚNG DẪN ………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
Điểm hướng dẫn: ……(bằng số) ……(bằng chữ) Hà Nội, ngày …… tháng …… năm 2012 Giảng viên hướng dẫn TS.Vũ Trường Thành
Trang 2
NHẬN XÉT CỦA CÁN BỘ PHẢN BIỆN ………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
Hà Nội, ngày …… tháng …… năm 2012
Cán bộ phản biện
(Ký, ghi rõ họ tên)
Trang 6THUẬT NGỮ VIẾT TẮT
AIS Administrative Information System
Hệ thống thông tin điều hành BCC Business Cooperation Contract Hợp đồng hợp tác kinh doanh
CIFS Common Internet File System Giao thức truyền thông hệ thống file DBMS Database Management System Hệ thống quản lý cơ sở dữ liệu
Trung tâm dữ liệu DDoS Distributed Denial Of Service Từ chối dịch vụ phân tán
DHCP Dynamic Host Configuration Protocol Giao thức cấu hình Host động
DNS Domain Name System Hệ thống tên miền
DoS Denial of Service Từ chối dịch vụ
DRDoS Distributed Reflection Denial of Service Từ chối dịch vụ phản xạ phân tán HTTP Hypertext Transfer Protocol Giao thức truyền tải siêu văn bản IaaS Infrastucture as a Service Dịch vụ cơ sở hạ tầng
IDS Intrusion Detection System Hệ thống phát hiện xâm nhập
IPS Intrusion Prevention System Hệ thống chống xâm nhập
IT Information Technology Công nghệ thông tin
ITIL IT Infrastructure Library Agreement
Thư viện cơ sở hạ tầng công nghệ thông tin
ISO International Organization for Standardization Tổ chức chuẩn hóa quốc tế
ISCSI Internet Small Computer System Interface Giao diện hệ thống máy tính nhỏ internet
LDAP Lightweight Directory Access Protocol Giao thức truy cập nhanh các dịch vụ thư mụcMAC Media Access Control Điều khiển truy nhập môi trường
Trang 7MD4 Message Digest 4 Tóm tắt thông điệp 4
NAS Network Attached Storage Mạng lưu trữ đính kèm
NIST National Institute of Standards and
Technology Viện tiêu chuẩn và công nghệ quốc gia Mỹ NFS Network File System Hệ thống file mạng
PaaS Platform as a Service Dịch vụ nền tảng
POP3 Post Office Protocol Version 3 Giao thức bưu điện
TCP Transmission Control Protocol Giao thức điều khiển truyền vận URL Uniform Resource Locator Đường dẫn
SAN Storage Area Network Khu vực lưu trữ mạng
SaaS Software as a Service Dịch vụ phần mềm
SIP Session Initialize Protocol Khởi tạo phiên giao thức
SLA Service Level Agreement Hợp đồng cung cấp dịch vụ
RDC Remote Desktop Connection Kết nối máy tính để bàn từ xa
VLAN Virtual Local Area Network Mạng LAN ảo
Nam VPN Virtual Private Network Mạng riêng ảo
VRS VNPT Reports System
Hệ thống báo cáo điều hành
Trang 8LỜI MỞ ĐẦU
Hiện nay, điện toán đám mây (“Cloud Computing”) đã và đang trở thành một trong những thuật ngữ được nhắc đến nhiều nhất trong ngành công nghệ thông tin Thuật ngữ “Cloud Computing” được bắt nguồn từ ý tưởng đưa tất cả mọi vấn đề như dữ liệu, phần mềm, dữ liệu tính toán,… lên trên mạng Internet Chúng ta sẽ không cần phải cài đặt phần mềm nữa mà tất cả được tập trung trong các trung tâm
dữ liệu hoặc phân tán ở trên mạng Các máy chủ sẽ cung cấp các dịch vụ, giúp cho cơ quan, tổ chức, doanh nghiệp có thể quản lý dữ liệu dễ dàng hơn, và họ sẽ chỉ trả chi phí cho lượng sử dụng dịch vụ mà không cần phải đầu tư nhiều vào cơ sở hạ tầng cũng như quan tâm nhiều đến công nghệ Tuy nhiên, vấn đề đặt ra là làm thế nào để ngăn ngừa các mối đe dọa từ internet, từ mạng nội bộ, từ con người với những dữ liệu ở dạng
số với yêu cầu cần phải bảo vệ? Bảo mật dữ liệu và rủi ro bảo mật đã trở thành mối
quan tâm hàng đầu của người sử dụng Từ vấn đề trên, đồ án “An ninh trong điện toán đám mây” tìm hiểu những kiến thức cơ bản về điện toán đám mây và vấn đề an
ninh, bảo mật thông tin trong điện toán đám mây
Đồ án bao gồm những nội dung sau:
• Chương 2: An ninh trong mạng internet
Em xin chân thành cảm ơn TS.Vũ Trường Thành đã trực tiếp hướng dẫn, chỉ bảo, định hướng và giúp đỡ tận tình trong suốt quá trình thực hiện đồ án này Trong quá trình tìm hiểu và nghiên cứu đồ án mặc dù đã có nhiều cố gắng, nhưng do khả năng còn nhiều hạn chế nên chắc chắn đồ án không thể tránh khỏi những sai sót Em rất mong nhận được sự phê bình và góp ý của thầy cô trong hội đồng chấm đồ án
Em xin chân thành cảm ơn!
Hà Nội, ngày 4 tháng 12 năm 2012
Sinh viên thực hiện:
Vũ Thị Thu Hà
Trang 9CHƯƠNG I: TỔNG QUAN VỀ ĐIỆN TOÁN ĐÁM MÂY
1.1 Định nghĩa cloud computing – điện toán đám mây
Ngày nay, đối với các công ty, doanh nghiệp, việc quản lý tốt, hiệu quả dữ liệu của riêng công ty cũng như dữ liệu khách hàng, đối tác là một trong những bài toán được ưu tiên hàng đầu và đang không ngừng gây khó khăn cho họ Để có thể quản lý được nguồn dữ liệu đó, ban đầu các doanh nghiệp phải đầu tư, tính toán rất nhiều loại chi phí như chi phí cho phần cứng, phần mềm, mạng, chi phí cho quản trị viên, chi phí bảo trì, sửa chữa,… Ngoài ra họ còn phải tính toán khả năng mở rộng, nâng cấp thiết
bị, phải kiểm soát việc bảo mật dữ liệu cũng như tính sẵn sàng cao của dữ liệu
Từ một bài toán điển hình như vậy, chúng ta thấy được rằng nếu có một nơi tin cậy giúp các doanh nghiệp quản lý tốt nguồn dữ liệu đó, các doanh nghiệp sẽ không còn quan tâm đến cơ sở hạ tầng, công nghệ mà chỉ tập trung chính vào công việc kinh doanh của họ thì sẽ mang lại cho họ hiệu quả và lợi nhuận ngày càng cao hơn
Thuật ngữ “cloud computing” còn được bắt nguồn từ ý tưởng đưa tất cả mọi thứ như dữ liệu, phần mềm, tính toán, … lên trên mạng Internet Chúng ta sẽ không còn trông thấy các máy PC, máy chủ của riêng các doanh nghiệp để lưu trữ dữ liệu, phần mềm nữa mà chỉ còn một số các “máy chủ ảo” tập trung ở trên mạng Các “máy chủ ảo” sẽ cung cấp các dịch vụ giúp cho doanh nghiệp có thể quản lý dữ liệu dễ dàng hơn, họ sẽ chỉ trả chi phí cho lượng sử dụng dịch vụ của họ, mà không cần phải đầu tư nhiều vào cơ sở hạ tầng cũng như quan tâm nhiều đến công nghệ Xu hướng này sẽ giúp nhiều cho các công ty, doanh nghiệp vừa và nhỏ mà không có cơ sở hạ tầng mạng, máy chủ để lưu trữ, quản lý dữ liệu tốt Vậy “cloud computing” là gì?
Định nghĩa:
theo quan điểm của chúng tôi, nó tương quan với các phương thức để cung cấp cơ sở hạ tầng, dịch vụ và phần mềm thông qua mạng theo nhu cầu, phù hợp với quy mô Điện toán đám mây dựa trên một nền tảng ảo hóa, trong đó các kho tài nguyên (ảo hóa) được tổ chức một cách linh động vì lợi ích của các ứng dụng và phần mềm Điều này sẽ làm thay đổi cách thức các ứng dụng được viết ra và cung cấp”
mây là một mô hình để hỗ trợ truy cập qua mạng thuận tiện, theo nhu cầu vào một kho tài nguyên điện toán có thể định cấu hình được (như là tài nguyên mạng, máy chủ, lưu trữ, ứng dụng và dịch vụ) có thể được cung cấp và thu hồi nhanh chóng với công sức quản lý hoặc tương tác của nhà quản trị ở mức độ tối thiểu Mô hình điện toán đám mây đảm bảo độ sẵn sàng và được cấu thành từ năm đặc tính cần thiết, ba mô hình cung cấp
và bốn mô hình triển khai”
Trang 101.2 Các mô hình triển khai của điện toán đám mây
Các nguồn điện toán khổng lồ như phần mềm, dịch vụ sẽ nằm tại các máy chủ ảo (đám mây) trên Internet thay vì trong máy tính gia đình và văn phòng để mọi người kết nối và sử dụng mỗi khi họ cần
Hiện nay, các nhà cung cấp đưa ra nhiều dịch vụ của điện toán đám mây theo nhiều hướng khác nhau, đưa ra các chuẩn riêng cũng như cách thức hoạt động khác nhau Do đó, việc tích hợp các cloud để giải quyết một bài toán lớn của khách hàng vẫn còn là một vấn đề khó khăn Chính vì vậy, các nhà cung cấp dịch vụ đang có xu hướng tích hợp các đám mây lại với nhau thành “sky computing”, đưa ra các chuẩn chung để giải quyết các bài toán lớn của khách hàng
Hình 1.1: Mô hình tổng quan của Cloud Computing
1.2.1 Đám mây công cộng - Public cloud
Đám mây công cộng là các dịch vụ đám mây được một bên thứ ba (người bán) cung cấp Chúng tồn tại ngoài tường lửa công ty và chúng được lưu trữ đầy đủ và được nhà cung cấp đám mây quản lý
Các đám mây công cộng cố gắng cung cấp cho người tiêu dùng với các phần tử công nghệ thông tin tốt nhất Cho dù đó là phần mềm, cơ sở hạ tầng ứng dụng hoặc cơ
sở hạ tầng vật lý, nhà cung cấp đám mây chịu trách nhiệm về cài đặt, quản lý, cung cấp và bảo trì Khách hàng chỉ chịu phí cho các tài nguyên nào mà họ sử dụng, vì thế cái chưa sử dụng được loại bỏ
Tất nhiên điều này liên quan đến chi phí Các dịch vụ này thường được cung cấp với "quy ước về cấu hình," nghĩa là chúng được phân phối với ý tưởng cung cấp các trường hợp sử dụng phổ biến nhất Các tùy chọn cấu hình thường là một tập hợp con nhỏ hơn so với những gì mà chúng đã có nếu nguồn tài nguyên đã được người tiêu
Trang 11dùng kiểm soát trực tiếp Một điều khác cần lưu ý là kể từ khi người tiêu dùng có quyền kiểm soát một chút trên cơ sở hạ tầng, các quy trình đòi hỏi an ninh chặt chẽ và tuân thủ quy định dưới luật không phải lúc nào cũng thích hợp cho các đám mây chung.
1.2.2 Đám mây riêng - Private cloud
Đám mây riêng là các dịch vụ đám mây được cung cấp trong doanh nghiệp Những đám mây này tồn tại bên trong tường lửa công ty và chúng được doanh nghiệp quản lý
Các đám mây riêng đưa ra nhiều lợi ích giống như các đám mây chung thực hiện với sự khác biệt chính: doanh nghiệp có trách nhiệm thiết lập và bảo trì đám mây này Sự khó khăn và chi phí của việc thiết lập một đám mây bên trong đôi khi có thể
có chiều hướng ngăn cản việc sử dụng và chi phí hoạt động liên tục của đám mây có thể vượt quá chi phí của việc sử dụng một đám mây chung
Các đám mây riêng đưa ra nhiều lợi thế hơn so với loại chung Việc kiểm soát chi tiết hơn trên các tài nguyên khác nhau đang tạo thành một đám mây mang lại cho công ty tất cả các tùy chọn cấu hình có sẵn Ngoài ra, các đám mây riêng là lý tưởng khi các kiểu công việc đang được thực hiện không thiết thực cho một đám mây chung,
do đúng với các mối quan tâm về an ninh và về quản lý
1.2.3 Đám mây lai- Hybrid cloud
Đám mây lai là một sự kết hợp của các đám mây công cộng và riêng Những đám mây này thường do doanh nghiệp tạo ra và các trách nhiệm quản lý sẽ được phân chia giữa doanh nghiệp và nhà cung cấp đám mây công cộng Đám mây lai sử dụng các dịch vụ có trong cả không gian công cộng và riêng
Các đám mây lai là câu trả lời khi một công ty cần sử dụng các dịch vụ của cả hai đám mây riêng và công cộng Theo hướng này, một công ty có thể phác thảo các mục tiêu và nhu cầu của các dịch vụ và nhận được chúng từ đám mây công cộng hay riêng, khi thích hợp Một đám mây lai được xây dựng tốt có thể phục vụ các quy trình nhiệm vụ-tới hạn, an toàn, như nhận các khoản thanh toán của khách hàng, cũng như những thứ là không quan trọng bằng kinh doanh, như xử lý bảng lương nhân viên
Hạn chế chính với đám mây này là sự khó khăn trong việc tạo ra và quản lý có hiệu quả một giải pháp như vậy Phải có thể nhận được và cung cấp các dịch vụ lấy từ các nguồn khác nhau như thể chúng có nguồn gốc từ một chỗ và tương tác giữa các thành phần riêng và chung có thể làm cho việc thực hiện thậm chí phức tạp hơn nhiều
Do đây là một khái niệm kiến trúc tương đối mới trong điện toán đám mây, nên cách thực hành và các công cụ tốt nhất về loại này tiếp tục nổi lên và bất đắc dĩ chấp nhận
mô hình này cho đến khi hiểu rõ hơn
1.2.4 Đám mây cộng đồng- Community Cloud
Đám mây cộng đồng là đám mây liên quan đến việc chia sẻ cơ sở hạ tầng giữa các tổ chức, các nhóm đối tượng có mục đích chia sẻ cùng một nội dung Ví dụ như
Trang 12các tổ chức hay một nhóm đối tượng thuê những đám mây riêng để chia sẻ chung những nôi dung về âm nhạc, phim ảnh, công nghệ, quân sự…
1.3 Các đặc tính của điện toán đám mây
5 đặc tính cơ bản (Essential characteristics):
• On-demand self-service – Tự phục vụ theo nhu cầu:
Khách hàng có thể tự tăng cường năng lực tính toán, ví dụ như thời gian server hay không gian lưu trữ trên network, một cách hoàn toàn tự động dựa theo nhu cầu mà không cần phải thương lượng với nhà cung cấp dịch vụ Đặc tính này thường được biết đến với tên gọi Pay-as-you-go
• Broad network access- Truy cập thông qua mạng băng thông rộng.
Truy cập mạng băng rộng Khả năng tính toán được cung cấp thông qua network và được truy cập thông qua một cơ cấu chuẩn, mà có thể dung bằng nhiều nền tảng client khác nhau (như mobile phones, laptops, và PDA)
• Resource pooling – Quay vòng tài nguyên
Tài nguyên điện toán của nhà cung cấp được quay vòng để phục vụ cho nhiều khách hàng sử dụng một mô hình multi-tenant, với các tài nguyên thực và ảo hóa khác nhau được cấp phát và tái cấp phát một cách động (dynamically) tùy thuộc vào yêu cầu của khách hàng Không phụ thuộc vị trí … khách hàng về tổng quát không có quyền hay thậm chí là không có hiểu biết về vị trí chính xác của các tài nguyên được cung cấp nhưng có thể xác định vị trí của các tài nguyên cấp cao hơn (ví dụ như nước, bang, datacenter) Các tài nguyên bao gồm không gian lưu trữ, tính toán, bộ nhớ, băng thông mạng và các máy ảo
• Rapid elasticity - Co giãn nhanh
Khả năng tính toán có thể được cung cấp một cách nhanh chóng và co giãn, trong một số trường hợp là tự động, để có thể giãn ra hoặc co vào phụ thuộc vào nhu cầu người dùng Đối với khách hàng, tài nguyên hiện có được coi như như vô hạn và
có thể mua với bất kì số lượng nào vào bất kì thời gian nào
Trang 131.4 Các loại hình dịch vụ
3 loại hình dịch vụ cơ bản mà cloud computing đang được triển khai là Infrastucture as a Service (IssA), Platform as a Service (PaaS) và Software as a Service (SaaS)
Hình 1.2: Các loại hình dịch vụ đối với Cloud computing
On-Premises: Các ứng dụng/dịch vụ On-premises được hiểu như các ứng dụng
và dịch vụ chạy trên nền tảng cơ sở hạ tầng của doanh nghiệp, chứ không phải trên cloud Đây là kiểu dịch vụ phổ biến hiện nay Doanh nghiệp quản lý hoàn toàn về hạ tầng mạng, hệ thống lưu trữ, máy chủ, ảo hoá, hệ điều hành, phần mềm tầng giữa, các lớp runtime, dữ liệu và ứng dụng
1.4.1 Dịch vụ cơ sở hạ tầng IaaS (Infrastucture as a Service)
Những kiến trúc ảo xếp chồng là một ví dụ của xu hướng mọi thứ là dịch vụ và
có cùng những điểm hơn hẳn một máy chủ cho thuê Không gian lưu trữ và các thiết bị mạng tập trung, máy trạm thay vì đầu tư mua nguyên chiếc thì có thể thuê đầy đủ dịch
vụ bên ngoài Những dịch vụ này thông thường được tính chi phí trên cơ sở tính toán chức năng và lượng tài nguyên sử dụng (và từ đó ra chi phí) sẽ phản ảnh được mức độ của hoạt động Đây là một sự phát triển của những giải pháp lưu trữ web và máy chủ
cá nhân ảo Tên ban đầu được sử dụng là dịch vụ phần cứng (HaaS) và được tạo ra bởi một nhà kinh tế học Nichlas Car vào tháng 3 năm 2006, nhưng điều này cần thiết Nhưng từ này đã dần bị thay thế bởi khái niệm dịch vụ hạ tầng vào khoảng cuối năm
2006
Những đặc trưng tiêu biểu:
Trang 14- Cung cấp tài nguyên như là dịch vụ: bao gồm cả máy chủ, thiết bị mạng, bộ nhớ, CPU, không gian đĩa cứng, trang thiết bị trung tâm dữ liệu
- Khả năng mở rộng linh hoạt
- Chi phí thay đổi tùy theo thực tế
- Nhiều người thuê có thể cùng dùng chung trên một tài nguyên
- Cấp độ doanh nghiệp: đem lại lợi ích cho công ty bởi một nguồn tài nguyên tích toán tổng hợp
Bảng 1.1: Một số lợi ích và thách thức của IaaS
Lợi ích của IaaS Thách thức của IaaS
Hệ thống được quản lý bởi SLA giảm
bớt được các lỗ thủng
Thu nhập cao hơn trên tài nguyên
Giảm chi phí do:
+ Ít phần cứng hơn
+ Giảm bớt chi phí không gian
+ Tăng tính tự động hoá và giảm bớt sự
can thiệp của các nhà quản trị
+ Giảm bớt tiêu thụ năng lượng
Khả năng đạt được tiêu thụ theo yêu
cầu – consumption on demand
Tính di động - portability của các ứng dụng
Sự hoàn thiện của các công cụ quản lý
hệ thốngTích hợp qua giới hạn của CloudCác vấn đề về bảo mật bên trong
1.4.2 Dịch vụ nền tảng PaaS (Platform as a Service)
Cung cấp nền tảng tính toán và một tập các giải pháp nhiều lớp Nó hỗ trợ việc triển khai ứng dụng mà không quan tâm đến chi phí hay sự phức tạp của việc trang bị
và quản lý các lớp phần cứng và phần mềm bên dưới, cung cấp tất cả các tính năng cần thiết để hỗ trợ chu trình sống đầy đủ của việc xây dựng và cung cấp một ứng dụng và dịch vụ Web sẵn sàng trên Internet mà không cần bất kì thao tác tải hay cài đặt phần mềm cho những người phát triển, quản lý tin học, hay người dùng cuối Nó còn được biết đến với một tên khác là cloudware
Cung cấp dịch vụ nền tảng (PaaS) bao gồm những điều kiện cho qui trình thiết
kế ứng dụng, phát triển, kiểm thử, triển khai và lưu trữ ứng dụng có giá trị như là dịch
vụ ứng dụng như cộng tác nhóm, sắp xếp và tích hợp dịch vụ Web, tích hợp cơ sở dữ liệu, bảo mật, khả năng mở rộng, quản lý trạng thái, phiên bản ứng dụng, các lợi ích cho cộng đồng phát triển và nghiên cứu ứng dụng Những dịch vụ này được chuẩn bị như là một giải pháp tính hợp trên nền Web
Những đặc trưng tiêu biểu:
- Phục vụ cho việc phát triển, kiểm thử, triển khai và vận hành ứng dụng giống như là môi trường phát triển tích hợp
Trang 15- Các công cụ khởi tạo với giao diện trên nền Web
- Kiến trúc đồng nhất
- Tích hợp dịch vụ Web và cơ sở dữ liệu
- Hỗ trợ cộng tác nhóm phát triển
- Công cụ hỗ trợ tiện tích
Bảng 1.2: Một số lợi ích và thách thức của PaaS
Lợi ích của PaaS Thách thức của PaaS
Pay-as-you-go đối với môi trường phát
triển, test và kinh doanh
Cho phép các nhà phát triển tập trung
Bị trói với nhà cung cấp
Mở rộng mẫu hình bảo mật với nhà cung cấp
Khả năng kết nối
Sự tin cậy đối với SLA của bên thứ 3
1.4.3 Dịch vụ phần mềm SaaS (Software as a Service)
Dịch vụ phần mềm (SaaS) là một mô hình triển khai ứng dụng mà ở đó người cung cấp cho phép người sử dụng dịch vụ theo yêu cầu Những nhà cung cấp SaaS có thể lưu trữ ứng dụng trên máy chủ của họ hoặc tải ứng dụng xuống thiết bị khách hàng, vô hiệu hóa nó sau khi kết thúc thời hạn Các chức năng theo yêu cầu có thể được kiểm soát bên trong để chia sẻ bản quyền của một nhà cung cấp ứng dụng thứ ba
Những đặc trưng tiêu biểu:
- Phần mềm sẵn có đòi hỏi việc truy xuất, quản lý qua mạng
- Quản lý các hoạt động từ một vị trí tập trung hơn là tại mỗi nơi của khách hàng, cho phép khách hàng truy xuất từ xa thông qua Web
- Cung cấp ứng dụng thông thường gần gũi với mô hình ánh xạ từ một đến nhiều hơn
là mô hình 1:1 bao gồm cả các đặc trưng kiến trúc, giá cả và quản lý
- Những tính năng tập trung 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 mạng diện rộng
Bảng 1.3: Một số lợi ích và thách thức của SaaS
Lợi ích của SaaS Thách thức của SaaS
Tốc độ
Giảm chi phí ban đầu, có khả năng
Yêu cầu mô hình bảo mật với nhà cung cấp (sự riêng tư và quyển sở hữu
Trang 16giảm chi phí toàn bộ
Chuyển một phần/tất cả trách nhiệm
hỗ trợ
Loại bỏ các nguy cơ về giấy phép
Loại bỏ nguy cơ về tương thích phiên
bản
Giảm ảnh hưởng của phần cứng
dữ liệu)Điều hành và quản lý chi phíĐồng bộ giữa client và vendor migration
Hỗ trợ người dùng cuối tích hợpKhả năng co giãn
1.5 Xu hướng phát triển của điện toán đám mây
1.5.1 Các lợi ích và hạn chế của điện toán đám mây
Trước hết, phải nói rằng cloud-computing hoàn toàn không phải phải là một kiến trúc phần mềm mới Như Lawrence Ellison, chủ tịch tập đoàn Oracle từng phát biểu: Cloud computing chỉ là “những gì chúng ta đã làm” và “việc duy nhất cần thay đổi trong thời gian tới là quảng cáo” Có thể thấy qua việc minh họa các dạng dịch vụ cloud computing ở trên, như các dịch vụ máy chủ riêng ảo, hosting, webmail,… đều đã được nhắc đến từ lâu, trước khi thuật ngữ cloud-computing xuất hiện Nhiều người còn cho rằng, cloud computing là một thuật ngữ mang tính marketing hơn là một xu hướng thật sự Đây còn là vấn đề gây tranh cãi
Tuy nhiên, ko thể phủ nhận cloud-computing đã thật sự hiện hữu và đem lại những lợi ích thật sự cho ngành công nghiệp phần mềm và người dùng Có thể kể đến trường hợp của The New York Times, đã xử lý thành công hàng terabytes (nghìn tỷ byte) dữ liệu với hàng trăm “compute units” của Amazon EC2 (sẽ được trình bày dưới đây) chỉ trong 36h Nếu không phải là cloud computing, có thể đã mất đến hàng tuần hoặc hàng tháng để xử lý toàn bộ dữ liệu này, với chi phí cao hơn nhiều
Trong vài năm trở lại đây, với sự tham gia của các tập đoàn phần mềm lớn như Microsoft, Google, hay Amazon, cloud computing đã có những bước tiến mạnh mẽ Đầu tiên, đó là việc cung cấp một nền tảng lập trình hợp nhất Điều này cho phép các nhà phát triển có thể nhanh chóng xây dựng ứng dụng đám mây trên nền tảng mà công
ty cung cấp, với những cấu trúc và API được thiết kế dành riêng cho cloud-computing Thứ hai, một công cụ quản lý hợp nhất, cho phép khách hàng sử dụng cloud-computing có thể tuỳ biến dịch vụ cho phù hợp với nhu cầu của mình một cách đơn giản và dễ dàng Những điều này khiến cloud-computing có thể trở thành một xu hướng nổi bật trong thời gian tới
1.5.1.1 Lợi ích của Cloud-computing
Hãy tưởng tượng một công ty với khoảng 100 nhân viên cần sử dụng các hệ thống phần mềm văn phòng cũng như nghiệp vụ Để hệ thống này có thể là việc một cách hiệu quả, chi phí bỏ ra là không nhỏ: Chi phí mua phần cứng (máy chủ, máy tính
cá nhân cho từng nhân viên, các thiết bị mạng), phần mềm (hệ điều hành, các phần mềm văn phòng và nghiệp vụ), chi phí nhân công (thuê người lắp đặt, cài đặt, quản trị,
Trang 17bảo trì hệ thống) Chi phí này là không nhỏ và khiến nhiều công ty gặp khó khăn trong việc triển khai tin học hóa doanh nghiệp
Ngoài ra, có thể trong hoạt động của doanh nghiệp, có những lúc tải của hệ thống vượt qua năng lực hiện có Để phục vụ điều này thì doanh nghiệp buộc phải nâng cấp hệ thống của mình, thêm máy chủ, cải tiến phần mềm Chi phí này là rất lớn Nhưng sau khi nâng cấp hệ thống, có những lúc tải lại xuống thấp, khiến cho năng lực
hệ thống trở nên lãng phí
Với Cloud Computing, những vấn đề này được giải quyết một cách căn bản:
- Không cần hệ thống máy chủ và hệ thống mạng nội bộ trong công ty, chỉ cần các máy client chi phí thấp được kết nối mạng Internet
- Giảm bớt chi phí phần mềm vì không cần các phần mềm nghiệp vụ cài riêng Có thể chỉ cần một hệ điều hành và một trình duyệt để làm việc
- Giảm bớt chi phí nhân công vì không cần quản trị hệ thống
- Giảm bớt chi phí điện năng lãng phí(Go Green)
- Linh hoạt và mềm dẻo khi có thay đổi về tải Khi cần tải nặng, hệ thống có thể tự tăng khả năng xử lý của mình lên mà không cần can thiệp, và cũng tự động giảm năng lực xử lý của mình khi tải thấp
1.5.1.2 Hạn chế của Cloud computing
Tuy nhiên, cloud computing không phải là giải pháp toàn diện và có thể áp dụng cho mọi trường hợp phần mềm Nói cách khác, cloud computing sẽ không hoàn toàn thay thế các giải pháp dịch vụ phần mềm hiện có:
Trước hết, dữ liệu của doanh nghiệp, cá nhân được upload lên trên cloud Điều này đồng nghĩa với doanh nghiệp, cá nhân phải tin tưởng vào nhà cung cấp dịch vụ Ngoài ra, ở một số doanh nghiệp với dữ liệu đặc thù, như ngân hàng, có những luật quy định doanh nghiệp phải lưu trữ dữ liệu của khách hàng on-premises Trong những trường hợp như vậy, việc triển khai ứng dụng trên public cloud là điều không thể
Tốc độ truy xuất ứng dụng Với một số dịch vụ, người dùng không thể xác định hay thiết lập vị trí của dữ liệu (trừu tượng hoá hoàn toàn ở cấp độ trung tâm dữ liệu) Nếu người dùng và trung tâm dữ liệu ở xa nhau, thì sẽ dẫn đến hạn chế trong tốc độ truy xuất và tăng độ trễ Để giải quyết vấn đề này, một số nhà cung cấp đưa ra giải phái CDN – Content Delivery Network, cho phép lưu trữ các dữ liệu mà người dùng thường xuyên truy cập ở một trung tâm dữ liệu gần với họ, nhằm tăng tốc độ truy xuất
và giảm độ trễ Ví dụ với Amazon S3 và dịch vụ Blob của Windows Azure Storage
Ngoài ra, bảo mật là vấn đề rất lớn Nhà cung cấp dịch vụ cam kết bằng hợp đồng, nhưng đối với một số khách hàng bảo mật chỉ có thể đạt được mức độ cần thiết khi họ toàn quyền kiểm soát dữ liệu (cả về phần cứng và phần mềm – vật lý và logic)
và áp dụng các chính sách phù hợp
Theo khảo sát của InformationWeek:
Trang 18Hình 1.3: Mối quan tâm đối với cloud computing
1.5.2 Điện toán đám mây – xu hướng phát triển
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 gồ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ác 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
Hiện nay, điện toán đám mây không còn là công nghệ mới mà đang hứa hẹn trở thành một khái niệm mang tính phổ thông và “hiển nhiên” trong tương lai Một số xu hướng phát triển của điện toán đám mây:
• Sự phát triển của đám mây di động (mobile cloud):Apple iCloud, Amazon Cloud và dịch cụ điện toán đám mây trên Windows Phone đang giúp công nghệ này trở nên đại trà Nhu cầu lưu trữ thông tin trên đám mây và khả năng truy cập bất cứ khi nào họ cần
sẽ giảm bớt "gánh nặng" cho thiết bị Nỗi lo mất điện thoại vì "mọi dữ liệu quan trọng như số liên lạc, ảnh, video… nằm cả trong đó" sẽ không còn bởi thông tin đã được tự
Trang 19động sao lưu lên đám mây và người sử dụng có thể thoải mái xóa dữ liệu từ xa để tránh tình trạng dữ liệu bí mật, riêng tư rơi vào tay kẻ xấu.
• Sự nở rộ của đám mây lai (hybrid cloud):Đám mây lai là sự giao thoa của hai hay nhiều mô hình đám mây, như như kết hợp giữa public cloud (các dịch vụ cloud được cung cấp cho mọi người sử dụng rộng rãi và private cloud (cơ sở hạ tầng và các dịch
vụ được xây dựng để phục vụ cho một tổ chức, doanh nghiệp duy nhất) Điều này sẽ giúp khai thác những điểm mạnh nhất của từng mô hình, mang đến khả năng bảo vệ
dữ liệu an toàn hơn, nhưng cũng linh động và gần gũi hơn với người sử dụng Năm tới
sẽ có ngày càng nhiều doanh nghiệp vừa và lớn sẽ chuyển sang mô hình này Theo Gartner, tổng giá trị cho các dịch vụ đám mây hiện thời là gần 2,4 tỷ USD và đến năm
2013 sẽ đạt gần 8,1 tỷ USD
• Sự tiến hóa của bảo mật đám mây:Bảo mật luôn là đề tài nóng và là một trong những nguyên nhân chính khiến các tổ chức có liên quan đến các dữ liệu nhạy cảm lưỡng lự trong việc đón nhận Họ lo ngại hacker tìm cách xâm nhập vào kho thông tin nằm trên đám mây, do đó việc liên tục tạo ra những phương pháp bảo mật kiểu mới, an toàn và hiệu quả là mục tiêu hàng đầu của các chuyên gia phát triển trong năm 2012
• Cuộc cách mạng môi trường làm việc di động:Tương tự e-mail thay đổi cách con người liên lạc với bạn bè và đồng nghiệp, cloud được cho là đang tạo ra con đường gửi
và lưu trưc thông tin nhanh chóng và thông suốt hơn bao giờ hết Với khả năng truy cập và làm việc từ xa, công việc sẽ được giải quyết dễ dàng hơn mà không bị ngắt quãng
• Dịch vụ phần mềm (SaaS) mở rộng thành dịch vụ IT (ITaaS):SaaS sẽ không chỉ giới hạn trong lĩnh vực CRM mà dần có tầm ảnh hưởng đến cả cơ sở hạ tầng IT Một lĩnh vực mới đang nổi lên trên thị trường là IT as a Service (dịch vụ IT), trong đó các doanh nghiệp sẽ "tiêu thụ" IT, biến nó trở thành một dịch vụ trong doanh nghiệp Bạn
có thể hình dung một thế giới mà ở đó việc triển khai các ứng dụng trên toàn cầu chỉ mất 2 tiếng thay vì 2 tháng, các chuyên gia phát triển sẽ sử dụng một nền tảng tự phục
vụ để cung cấp và triển khai ứng dụng thay vì phải thông qua một quá trình thủ công tốn kém nào đó, hoặc một người có thể quản lý 10.000 server thay vì chỉ 100 server
1.6 Tổng kết chương I
Chương I đã trình bày những kiến thức cơ bản về các khái niệm, mô hình triển khai, các loại hình dịch vụ và các đặc tính của điện toán đám mây Qua đó chúng ta có thể thấy được rằng điện toán đám mây hơn hẳn điện toán truyền thống ở nhiều khía cạnh như dễ dàng sử dụng, khả năng mở rộng và độ sẵn sàng đáp ứng cao, cung cấp nhanh theo yêu cầu và đáng kể đến nhất là mức chi phí sẽ đỡ tốn kém hơn so với việc
sử dụng điện toán truyền thống khi mà chúng ta chỉ phải chi trả cho những gì mình sử dụng thay vì phải đầu từ trang thiết bị máy móc đắt tiền Do vậy, điện toán đám mây
đã và đang trở thành xu thế công nghệ hiện nay
Trang 20CHƯƠNG II: AN NINH TRONG MẠNG INTERNET
2.1 Tổng quan về an ninh trên mạng internet
2.1.1 Mạng máy tính là gì?
Mạng máy tính là mạng các máy tính được kết nối với nhau theo tiêu chuẩn nhất định sao cho hai máy có thể trao đổi thông tin với nhau Các máy tính được nối qua đường dây cáp, đường dây điện thoại, đường dây dữ liệu tốc độ cao hoặc qua vệ tinh để chúng có thể chia sẻ tài nguyên và thông tin
2.1.2 Khái niệm mạng Internet
Internet là một hệ thống gồm các mạng máy tính được liên kết theo chuẩn giao thức TCP/IP trên phạm vi toàn thế giới, tạo điều kiện thuận lợi cho các dịch vụ truyền
dữ liệu, đăng nhập từ xa, thư tín điện tử,…Internet là một phương pháp ghép nối các mạng máy tính hiện hành, phát triển một cách rộng răi tầm hoạt động của các mạng kết nối vào
- Client: là chương trình gửi yêu cầu đến Server, nhận kết quả trả về Máy chứa chương trình Client cũng được gọi là Client hoặc máy khách
2.1.3 An ninh, an toàn trên mạng Internet
Mạng máy tính toàn cầu Internet là mạng của các mạng máy tính được kết nối với nhau qua giao thức TCP/IP nhằm trao đổi và xử lý thông tin tương hỗ Các mạng được điều hành hoạt động bởi một hoặc nhiều loại hệ điều hành mạng Như vậy, hệ
Trang 21điều hành mạng có thể điều phối một phần của mạng và là phần mềm điều hành đơn vị quản lý nhỏ nhất trên toàn bộ mạng.
Điều khác nhau giữa mạng máy tính và xã hội loài người là đối với mạng máy tính chúng ta phải quản lý tài sản khi mà các ngôi nhà đều luôn mở cửa Các biện pháp vật lý là khó thực hiện vì thông tin và thiết bị luôn cần được sử dụng
Trên hệ thống mạng mở như vậy, bảo vệ thông tin bằng mật mã là ở mức cao nhất song không phải bao giờ cũng thuận lợi và không tốn kém Thường thì các hệ điều hành mạng, các thiết bị mạng sẽ lãnh trách nhiệm lá chắn cuối cùng cho thông tin Vượt qua lá chắn này thông tin hầu như không còn được bảo vệ nữa
Gối trên nền các hệ điều hành là các dịch vụ mạng như: Thư điện tử (Email), WWW, FTP, News, làm cho mạng có nhiều khả năng cung cấp thông tin Các dịch
vụ này cũng có các cơ chế bảo vệ riêng hoặc tích hợp với cơ chế an toàn của hệ điều hành mạng
Internet là hệ thống mạng mở nên nó chịu tấn công từ nhiều phía kể cả vô tình
và hữu ý Các nội dung thông tin lưu trữ và lưu truyền trên mạng luôn là đối tượng tấn công Nguy cơ mạng luôn bị tấn công là do người sử dụng luôn truy nhập từ xa Do đó thông tin xác thực người sử dụng như mật khẩu, bí danh luôn phải truyền đi trên mạng Những kẻ xâm nhập tìm mọi cách giành được những thông tin này và từ xa truy nhập vào hệ thống Càng truy nhập với tư cách người dùng có quyền điều hành cao càng thì khả năng phá hoại càng lớn
Nhiệm vụ bảo mật và bảo vệ vì vậy mà rất nặng nề và khó đoán định trước Nhưng tựu trung lại gồm ba hướng chính sau:
• Bảo đảm an toàn cho phía server
• Bảo đảm an toàn cho phía client
• Bảo mật thông tin trên đường truyền
2.2 Tìm hiểu một số kỹ thuật tấn công xâm nhập máy chủ dữ liệu ảo
2.2.1 Kỹ thuật tấn công qua các lỗ hổng của cơ chế xác thực
2.2.1.1 Các kiến thức cơ bản về xác thực người dùng
Khi người sử dụng muốn truy nhập vào một hệ thống máy tính, thông thường người sử dụng cần cung cấp các thông tin nhận dạng cho máy tính Khi nhận được các thông tin ấy, máy tính kiểm tra xem người sử dụng có quyền truy nhập vào hệ thống không Đây cũng là một nguyên tắc cơ bản được áp dụng cho một người khi muốn trao đổi thông tin với người khác: Trước tiên cần phải xác định người tham gia trao đổi thông tin có đúng là người muốn trao đổi không, do đó cần phải có một phương thức
để cung cấp đặc điểm nhận dạng nhằm đảm bảo người trao đổi thông tin là hợp lệ Quá trình này được gọi là xác thực người sử dụng
Trên thế giới cũng như ở Việt Nam, vấn đề xác thực người dùng đang được quan tâm và đã có nhiều giải pháp được sử dụng và nghiên cứu Có rất nhiều cách để xác thực, người sử dụng có thể cung cấp các thông tin mà chỉ có người sử dụng mới
Trang 22biết như mật khẩu, mã số cá nhân, hoặc người sử dụng có thể cung cấp các thông tin riêng khác như số chứng minh thư, thẻ từ, thẻ thông minh, Trong đó, mỗi giải pháp lại có những ưu điểm và nhược điểm riêng khác nhau.
2.2.1.2 Khái niệm về xác thực người dùng
Xác thực người dùng là một quá trình qua đó hệ thống có thể xác minh rằng một ai đó thực sự là họ Quá trình xác thực sẽ xác định xem một người có phải là người được sử dụng hệ thống không, nó thường đi kèm với quá trình xác định quyền hạn của người dùng trong hệ thống
2.2.1.3 Các giải pháp xác thực người dùng phổ biến
a Giải pháp sử dụng tên và mật khẩu
Đây là giải pháp truyền thống hay được sử dụng nhất, là giải pháp sử dụng tài khoản của hệ thống Mỗi tài khoản bao gồm tên truy nhập và mật khẩu Tên truy nhập dùng để phân biệt các người dùng khác nhau (thường là duy nhất trong hệ thống), còn mật khẩu để xác thực lại người sử dụng tên đó có đúng là người dùng thật sự không Mật khẩu thường do người sở hữu tên truy nhập tương ứng đặt và được giữ bí mật chỉ
có người sở hữu tên truy nhập đó biết
Khi người dùng muốn đăng nhập và sử dụng tài nguyên hệ thống thì phải đăng nhập bằng cách nhập tên và mật khẩu của mình Trước hết, hệ thống sẽ đối chiếu tên truy nhập của người dùng nhập vào với cơ sở dữ liệu tên người dùng, nếu tồn tại tên người dùng như vậy thì hệ thống tiếp tục đối chiếu mật khẩu được nhập vào tương ứng với tên truy nhập trong cơ sở dữ liệu Qua 2 lần đối chiếu nếu thỏa mãn thì người đăng nhập là người dùng hợp lệ của hệ thống
• Ưu điểm của giải pháp xác thực người dùng
Thiết kế và sử dụng đơn giản, tốn ít tài nguyên Hệ thống chỉ gồm một cơ sở dữ liệu người dùng với hai thông tin chủ yếu là tên truy nhập và mật khẩu, tương ứng với mỗi tên truy nhập là quyền sử dụng của người đó trong hệ thống, do đó các thông tin này không chiếm nhiều tài nguyên Người dùng dễ hiểu và dễ sử dụng
Chi phí để thực hiện giải pháp này là rẻ so với các giải pháp khác Nó không phụ thuộc vào các thiết bị phần cứng mà chỉ dựa trên phần mềm Giải pháp này có khả năng làm việc trên mọi hệ điều hành Vì thế, việc thực hiện giải pháp này khá dễ dàng
và không tốn kém
• Nhược điểm của giải pháp xác thực người dùng
Giải pháp này có nhược điểm lớn nhất là không có được sự bảo mật cao Vì người dùng thường có tên đăng nhập nhiều người dùng có Mặt khác, người dùng thường chọn mật khẩu dễ nhớ hoặc chung mật khẩu cho nhiều tài khoản, do vậy dễ bị tấn công Kẻ tấn công có nhiều phương pháp để đạt được mật khẩu như thâm nhập vào
hệ thống đọc file mật khẩu, dự đoán mật khẩu, vét cạn các từ trong từ điển để tìm mật khẩu, hoặc có thể lừa người dùng để lộ mật khẩu Cũng có một số biện pháp để tăng thêm tính bảo mật cho giải pháp này như; đặt mật khẩu phức tạp: Mật khẩu phải chứa tối thiểu 6 ký tự, không trùng với tên đăng nhập, chứa các loại ký tự là chữ cái, chữ số,
Trang 23ký tự đặc biệt Nếu đặt như vậy thì kẻ muốn tấn công cũng sẽ rất khó đoán được mật khẩu.
Thay đổi mật khẩu: Quy định sau một thời gian nhất định mật khẩu sẽ không còn tác dụng đối với hệ thống và người dùng phải đặt lại mật khẩu khác Mật khẩu sẽ được thay đổi nên khả năng kiểm soát tình trạng an toàn của mật khẩu cao hơn
Mã hóa thông tin: Trong môi trường làm việc là mạng internet, những nhà thiết
kế thường dùng biện pháp mã hóa thông tin đăng nhập từ một máy khách nào đó trước khi chúng được gửi đi tới máy chủ của hệ thống Do đó, khả năng bị mất cắp mật khẩu
sẽ giảm đi rất nhiều khi kẻ xấu bắt gói tin đăng nhập trên đường truyền
Hiện nay, giải pháp mật khẩu sử dụng một lần (one - time password) được sử dụng rất nhiều trong các ứng dụng Các mật khẩu trong danh sách chỉ có thể sử dụng một lần duy nhất mà không thể sử dụng lại trong những lần đăng nhập sau Có hai cách để hệ thống mật khẩu sử dụng một lần có thể làm việc là;
Danh sách các mật khẩu được tạo ra một cách ngẫu nhiên bởi hệ thống và được sao làm hai bản, một bản cho người dùng và một bản cho hệ thống
Danh sách mật khẩu được tạo ra theo yêu cầu của người sử dụng và được hệ thống công nhận
Quá trình thực hiện: Sử dụng thuật toán MD4 (hiện nay là MD5) từ một giá trị cho trước (do người dùng hoặc do máy ngẫu nhiên tạo ra) để tạo ra khóa đầu tiên, tiếp tục áp dụng thuật toán MD4 cho khóa đầu tiên để được khóa thứ hai, và cứ áp dụng liên tục thuật toán MD4 để sinh ra các khóa nối tiếp nhau Khi xác thực người dùng,
hệ thống phải biết một trong các khóa (khóa thứ n), nó sẽ hỏi người dùng khóa trước
đó (khóa thứ n - 1) Nếu người dùng nhập đúng khóa n - 1 thì hệ thống sẽ cho người dùng đăng nhập và ghi lại khóa n - 1 vào bộ nhớ Đến lần đăng nhập sau, hệ thống sẽ hỏi người dùng khóa thứ n - 2,…
Khi dùng thuật toán MD4 để sinh ra kết quả thì kết quả hầu như không thể suy ngược lại giá trị đầu vào nên hệ thống không thể tìm ra được khóa thứ n-1 là gì, mặc
dù khi biết cả khóa thứ n
Tuy nhiên, theo cách này kẻ xấu vẫn có thể tấn công Nếu người dùng tự thiết lập giá trị đầu vào để xây dựng hệ thống khóa thì rất có thể nó sẽ được đoán ra theo các cách giống như khi đoán các mật khẩu thông thường Đối với những từ đoán được,
kẻ tấn công sẽ áp dụng thuật toán MD4 để sinh ra các khóa và sẽ thử hết các khóa này cho đến khi tìm được khóa người dùng đang sử dụng Còn trong trường hợp hệ thống
sẽ tự sinh ra giá trị ban đầu và một lượng mật khẩu đủ dùng trong một thời gian nào
đó, người dùng sẽ có một danh sách các mật khẩu được đánh thứ tự Về phía người dùng, họ sẽ không thích phải dùng nhiều mật khẩu Điều này gây phiền toái cho người dùng và khả năng bị mất cắp danh sách khóa là rất cao Ngoài ra, kẻ tấn công còn có thể dùng phương pháp bắt gói tin đăng nhập của người dùng để lấy mật khẩu
Trang 24• Ứng dụng của phương pháp xác thực người dùng
Giải pháp này đã và đang được sử dụng rất nhiều trong các ứng dụng Nó được ứng dụng trên một máy tính và đặc biệt được ứng dụng cả trên mạng Kể cả các cơ quan, tổ chức không có điều kiện kinh tế để có thể trang bị cho hệ thống mạng của mình các đường truyền tốc độ cao thì vẫn có thể sử dụng giải pháp này Bởi vì, thông tin truyền và lưu trữ chỉ bao gồm tên đăng nhập và mật khẩu Dung lượng truyền đi trên đường truyền nhỏ nên dù đường truyền có băng thông không lớn thì thông tin này cũng được truyền đi trong một khoảng thời gian chấp nhận được
Các ứng dụng tiêu biểu hiện nay đang sử dụng giải pháp xác thực bằng mật khẩu như: Hệ điều hành (Windows, Unix, ), các dịch vụ thư điện tử, thương mại điện tử,
b Giải pháp dùng thẻ thông minh
Thẻ thông minh (smart cart) là một thẻ plastic có kích cỡ như thẻ tín dụng được trang bị một vi mạch dùng để chứa bộ nhớ và một mạch xử lý với hệ điều hành để kiểm soát bộ nhớ
Nó có thể lưu trữ dữ liệu về thông tin cá nhân, tiền hoặc một số thông tin khác
mà sự thay đổi của chúng cần được kiểm soát chặt chẽ Ngoài ra, nó có thể lưu trữ các khóa mã hóa để người dùng có thể nhận dạng qua mạng, chữ ký điện tử, Đặc biệt, hiện nay thẻ thông minh có hỗ trợ chứng nhận số Nó mã hóa dữ liệu và kiểm tra tính hợp lệ của các giao dịch qua mạng Đây là một giải pháp rất hiệu quả và linh động cho các vấn đề về xác thực người dùng
Hiện nay, các cơ quan tổ chức dùng thẻ rất nhiều Đầu tiên, những thông tin cần thiết cho việc nhận dạng các nhân viên trong cơ quan, tổ chức sẽ được lưu vào bộ nhớ của thẻ Sau đó, nó được cung cấp cho các nhân viên tương ứng với các thông tin đó Mỗi cơ quan, tổ chức khác nhau sẽ có các yêu cầu về thông tin xác thực khác nhau nhưng thường là các thông tin như tên truy nhập, mật khẩu và một số thông tin cá nhân khác
Trong hệ thống thông tin đòi hỏi phải có xác thực người dùng, nhân viên trong
tổ chức chỉ cần đưa thẻ vào thiết bị đọc thẻ và nhập vào một mã số bí mật nào đó để xác nhận với hệ thống là chính họ là người sở hữu chiếc thẻ đó Khi đã nhập đúng mã này, thiết bị đọc thẻ sẽ đọc các thông tin nhận dạng được ghi trong thẻ và chuyển các thông tin này đến hệ thống, sau đó hệ thống sẽ kiểm tra chúng với cơ sở dữ liệu người dùng
• Ưu điểm của giải pháp dùng thẻ thông minh
Nhờ vào kiến trúc vật lý và logic của thẻ mà đã giảm được rất nhiều các nguy
cơ gây mất an toàn thông tin Mọi hoạt động của thẻ đều được kiểm soát bởi hệ điều hành nên các thông tin cần giữ bí mật sẽ không thể lấy ra được từ thẻ Các thông tin bên trong thẻ không thể bị kẻ xấu lấy cắp như các thông tin được lưu trữ trong các phần mềm hệ quản trị cơ sở dữ liệu thông thường
Trang 25Các khóa bí mật dùng cho chữ ký điện tử và nhận dạng đều được lưu trữ bên trong thẻ Nhà sản xuất thẻ cũng như người sở hữu thẻ đều không thể biết được các khóa này Vì vậy, chúng không thể bị lấy cắp hay bị sao chép.
Mỗi chiếc thẻ đều có số nhận dạng PIN để tránh việc đánh cắp và bị kẻ xấu sử dụng Trước khi sử dụng thẻ, người dùng phải nhập vào số PIN của thẻ Cơ chế quản
lý số PIN của thẻ cũng rất an toàn bởi vì số PIN gần như không thể đoán ra được Mặt khác, thẻ quy định số lần nhập tối đa, nếu số lần nhập không chính xác liên tục đến con số quy định thì thẻ sẽ tự động khóa Muốn mở khóa thì người dùng phải liên hệ với cơ quan quản lý thẻ Tương tự, nếu nhập không chính xác liên tiếp đến một số nào
đó thẻ sẽ bị khóa vĩnh viễn và không thể sử dụng lại nữa Như vậy, việc sử dụng thẻ là rất an toàn và thuận tiện Giờ đây người dùng thay vì phải nhớ nhiều số mà chỉ phải nhớ một số, còn các thông tin nhận dạng đều ở trong thẻ Trong trường hợp thẻ bị mất cắp, kẻ lấy cắp cũng không thể sử dụng được thẻ vì không có số PIN
• Nhược điểm của giải pháp dùng thẻ thông minh
Tuy giải pháp này đã hạn chế được sự mất cắp thẻ bằng cách kết hợp thẻ với một số PIN nhưng vẫn có thể bị đánh cắp cả thẻ và cả số PIN
Để áp dụng giải pháp này, các cơ quan phải trang bị thêm các thiết bị như thiết
bị đọc thẻ, thiết bị ghi, các phần mềm hỗ trợ, Số lượng và giá thành của các thiết bị này không phải là nhỏ, do đó khá là tốn kém
Các dịch vụ hỗ trợ phổ biến cho việc xác thực bằng thẻ là chưa đầy đủ Các dịch vụ thư điện tử, các dịch vụ thương mại, cần đến xác thực trên Internet đều chưa
hỗ trợ xác thực bằng thẻ Hiện nay, hầu như các nhà cung cấp giải pháp xác thực bằng thẻ đều phát triển các dịch vụ theo mô hình riêng của mình, sử dụng các thiết bị riêng chưa thống nhất, do đó khả năng liên hệ giữa các hệ thống hầu như không có
• Ứng dụng của giải pháp dùng thẻ thông minh
Đây được coi là giải pháp tương đối hoàn chỉnh và được nhận định là có tiềm năng lớn Hiện nay, trên thế giới có rất nhiều công ty lớn đang phát triển những giải pháp xác thực hoàn thiện hơn về cả mức độ an toàn và khả năng linh động trong việc
sử dụng thẻ Có rất nhiều quốc gia đã sử dụng công nghệ này để làm chưng minh thư, thẻ rút tiền ngân hàng, Giải pháp này ngày càng được sử dụng nhiều hơn do sự phát triển về khoa học công nghệ, giá thành của thẻ cũng như của các thiết bị có liên quan giảm đi rất nhiều trong thời gian vừa qua Tổ chức chuẩn hóa quốc tế ISO đã và đang đưa ra những tiêu chuẩn thống nhất trong việc xây dựng và phát triển thẻ
2.2.2 Kỹ thuật tấn công qua các lỗ hổng của các cổng dịch vụ
Hiện nay có nhiều hành động quét thăm dò trên internet, chủ thể tấn công vào một máy tính nạn nhân và tìm ra địa chỉ IP và các địa chỉ mạng của nạn nhân
Đối với một Client thông thường hoặc Server khi tham gia vào mạng internet thì nguy cơ bị attacker nhòm ngó là không thể tránh khỏi Để thực hiện được ý đồ nào
đó của attacker thì công việc đầu tiên của attacker là thực hiện công việc rà quét, và liệt kê mạng của nạn nhân Với một số công cụ attacker có thể sử dụng sẽ là các trình
Trang 26ứng dụng hỗ trợ quét địa chỉ IP như Nmap Attacker hoàn toàn có thể làm được những hành động này Sau đây là một số hoạt động của attacker.
Bước đầu attacker sẽ thiết lập kết nối giữa các host ACK (Acknowledgment)
nhằm mục đích kiểm tra port của máy đích là ở trạng thái mở hay đóng, nếu port mở thì sẽ không có sự phản hồi nào nhưng nếu port đóng thì sẽ có sự phản hồi
Hình 2.2: Gửi các gói thăm dò kiểm tra trạng thái của port
Như chúng ta đã biết đa số các server đều “lắng nghe” trên các TCP port, chẳng
hạn như web server trên port 80, mail server trên port 25, POP3 (Post Office Protocol Version 3) thường được chạy ở cổng 110, Và mỗi IP packet được gửi trên mạng có một số duy nhất được gọi là “fragment identification” (IPID) Cũng từ con số này
chúng ta có thể biết được attacker đã gửi bao nhiêu packet và ở thời điểm nào
(attacker sử dụng kiểu scan này để tránh bị phát hiện IP).
Attacker gửi một SYN đến một địa chỉ đích nào đó, nếu một SYN/ACK được nhận trở lại thì attacker sẽ đạt mục đích và hoàn tất quá trình scan trinh sát các cổng dịch vụ và xác địch đâu là port đang mở để phục vụ cho các ý đồ tiếp theo của attacker
Hình 2.3: Quá trình kiểm tra trạng thái của port
Attacker chọn bất kì một “Zombie” ngẫu nhiên đã scan được (các đối tượng được lợi dụng trở thành thành phần phát sinh tấn công) và gửi gói tin thăm dò
SYN/ACK đến Zombie đó, và tiến hành xem thử IPID của Zombie đó là gì Một số trường hợp điển hình như thông qua rootkit hay các thành phần hoạt động đính kèm trong các email, hoặc trong các trang web như sử dụng các file *.jpeg khai thác lỗi của các phần mềm xử lý ảnh, các đoạn mã đính kèm theo file flash, hoặc trojan cài đặt theo
Trang 27phishing, Và nếu có một gói RST được phản hồi, thế là attacker đã biết được IPID là
31337 Đến đây, attacker sẽ tiếp tục tiến hành các bước tiếp theo đã vạch sẵn cho quá trình tấn công của mình
Hình 2.4: Attacker thăm dò IPID
Attacker dùng một IP giả mạo của Zombie, với một IP theo đúng nghĩa attacker
sẽ tham gia vào mạng internet và gửi một gói SYN tới webserver (port 80) Nếu port
đang mở, lập tức có sự phản hồi SYN/ACK trở lại Zombie, tiếp tục tiến trình này là sự phản hồi lại của Zombie với mục tiêu gói RST với IPID là 31338 Attacker có thể gặp phải trường hợp Zombie có port ở trạng thái đóng hoặc mở
Hình 2.5: Zombie có port ở trạng thái mở
Trường hợp Zombie có port ở trạng thái đóng, attacker sẽ không thu được thông tin gì quá trình trinh sát và tìm kiếm thông tin về đối tượng muốn tấn công Vì thế
attacker sẽ tiếp tục gửi một gói SYN tới webserver (port 80) nếu có sự phản hồi thì
attacker đã đạt được mục đích là nhận các thông tin từ sự phản hồi của Zombie Từ đó attacker có các thông tin phục vụ cho các bước tấn công tiếp theo
Trang 28Hình 2.6: Zombie có port ở trạng thái đóng
2.2.3 Kỹ thuật tấn công qua lỗ hổng của quản lý phiên làm việc
Mỗi kiểu lưu trữ đều có ưu và khuyết điểm nhất định Thông thường, sau khi người dùng được chứng thực dựa trên những thông tin cá nhân như tên/mật khẩu, session ID được xem như một mật khẩu tĩnh tạm thời cho những lần yêu cầu tiếp theo Điều này đã khiến cho session ID là mục tiêu lớn cho những attacker Trong nhiều trường hợp attacker giành được session ID hợp lệ của người dùng để từ đó đột nhập vào phiên làm việc của họ Tấn công vào phiên làm việc thường được thực hiện theo hai kiểu chính là ấn định phiên làm việcvà đánh cắp phiên làm việc
Trong kiểu tấn công ấn định phiên làm việc, attacker ấn định sẵn session ID cho nạn nhân trước khi họ đăng nhập vào hệ thống Sau đó, attacker sẽ sử dụng session ID này để bước vào phiên làm việc của nạn nhân đó
2.2.3.1 Tấn công dựa vào “kiểu quản lý phiên làm việc” (Session ID Management)
HTTP là giao thức hướng đối tượng tổng quát, phi trạng thái, nghĩa là HTTP không lưu trữ trạng thái làm việc giữa trình duyệt với trình chủ Thiếu sót này gây khó khăn cho một số ứng dụng Web, bởi vì trình chủ không biết được trước đó trình duyệt
đã có những trạng thái nào Vì thế, để giải quyết vấn đề này, ứng dụng Web đưa ra một
khái niệm phiên làm việc (Session) Còn Session ID là một chuỗi để chứng thực phiên
làm việc Một số trình chủ sẽ cung cấp một Session ID cho người dùng khi họ xem trang web trên trình chủ Để duy trì phiên làm việc thì session ID thường được lưu vào:
- Biến trên URL
- Trường ẩn form
- Cookie
Phiên làm việc chỉ tồn tại trong khoảng thời gian cho phép, thời gian này được cấu hình qui định tại trình chủ hoặc bởi ứng dụng thực thi Trình chủ sẽ tự động giải phóng phiên làm việc để khôi phục lại tài nguyên của hệ thống
Trang 29Sau khi người dùng được xác thực dựa trên thông tin cá nhân như username/password, session ID được xem như mật khẩu tĩnh tạm thời cho những lần yêu cầu tiếp theo Điều này đã khiến cho Session ID là mục tiêu lớn cho những attacker Nhiều trường hợp, attacker giành được session ID hợp lệ của người dùng, để
từ đó đột nhập vào phiên làm việc của họ Tấn công vào một phiên làm việc thường được thực hiện theo hai kiểu chính sau:
- Ấn định phiên làm việc (Session Fixation).
- Đánh cắp phiên làm việc (Session Hijacking)
a Tấn công kiểu “Ấn định phiên làm việc”
Trong kiểu tấn công “ấn định phiên làm việc”, attacker ấn định sẵn session ID cho nạn nhân, trước khi người sử dụng đăng nhập vào một hệ thống trên mạng internet Sau đó, attacker sử dụng session ID này để buớc vào phiên làm việc của nạn nhân đó theo đúng tiến trình attacker đã định sẵn Quá trình tấn công của attacker về
cơ bản có thể phân tích như sau:
Trước tiên, attacker phải thiết lập một session ID, hệ thống quản lí session theo hai hướng:
- Hướng tự do: Chấp nhận bất kì một session ID, nếu chưa tồn tại session thì tạo mới một session ID Attacker chỉ cần thiết lập một session ID bất kì, nhớ và sau đó sử dụng lại session ID này
- Hướng giới hạn: Chỉ chấp nhận session ID nào đã đăng kí trước đó Attacker phải đăng kí một session ID với ứng dụng
Phụ thuộc vào qui trình quản lí phiên làm việc, attacker lưu trữ “thời gian sống” (Time To Live) của phiên làm việc cho đến khi nạn nhân đăng nhập vào hệ thống
(thông thường một phiên làm việc không tồn tại vô hạn) Hệ thống sẽ tự động hủy bỏ
phiên làm việc, nếu nó không thực hiện một thao tác nào (thời gian nhàn rỗi) hoặc hết hạn định
Hình 2.7: Sơ lược quá trình tấn công người dùng
Sau đó, attacker gửi ID này đến trình duyệt nạn nhân, attacker gửi session ID vừa tạo đến người dùng, việc trao đổi session ID còn tùy vào ứng dụng, có thể qua parameter URL, trường ẩn form hay cookie Các cách tấn công thông dụng gồm có:
Trang 30- Tấn công session ID trong cookie.
- Tấn công session ID trên tham số URL (Session ID parameter URL)
- Tấn công session ID trên trường ẩn form (Session ID hidden Form Field)
Trong nội dung của luận văn này ta tìm hiểu một chút về tấn công session ID trên tham số URL (Session ID parameter URL) Ở cách tấn công này attacker gửi một liên kết yêu cầu người dùng đăng nhập vào hệ thống máy đích với session ID đã được
ấn định sẵn trên URL Attacker phải tham gia trực tiếp vào hệ thống quản lý người sử dụng mà attacker xác định sẽ là nạn nhân của mình, khi đó attacker sẽ xác định được phiên làm việc của mình Từ đây attacker sẽ tiến hành tấn công các người sử dụng cùng hệ thống bằng cách gửi liên kết tới người sử dụng nhằm mục đích lừa người sử dụng làm việc trên phiên làm việc của attacker Chúng ta hãy xét một ví dụ sau với URL là http://online.worldbank.com/login.jsp?session ID=1234
Hình 2.8: Tiến trình tấn công session ID trên tham số URL Bước 1: Attacker mở dịch vụ trực tuyến của ngân hàng thông qua địa chỉ
online.worldbank.com nhằm mục đích biến mình thành người dùng thực sự
Bước 2: Nhận được một session ID từ trình chủ, để xác định phiên làm việc của attacker (session ID ở đây có giá trị là 1234).
Bước 3: Attacker tìm cách gửi liên kết đến một người dùng nào đó, có tài khoản trong
ngân hàng này Liên kết đó thường dẫn đến trang đăng nhập vào tài khoản ví dụ URL liên kết là http://online.workbank.com/login.jsp?session ID=1234 Người dùng có thể
bị lừa làm việc trong phiên làm việc của attacker, khi người dùng nhận được liên kết này gửi tới
Bước 4: Người dùng bị mắc lừa và mở ứng dụng Web tói ngân hàng bằng liên kết của
attacker Do đã có session ID=1234 (của attacker) nên trình chủ không tạo session ID mới Lúc này cùng một phiên làm việc, attacker và người sử dụng cùng thực hiện những thao tác, công việc riêng của mình
Bước 5: Người dùng tiếp tục đăng nhập với thông tin của mình để quản lí tài khoản
trong ngân hàng
Trang 31Bước 6: Khi đó attacker vào tài khoản của người dùng mà không cần phải đăng nhập
vì có cùng phiên làm việc
b Tấn công kiểu “Đánh cắp phiên làm việc”
Khác với kiểu tấn công ấn định phiên làm việc, attacker đánh cắp một session
ID của người dùng khi họ đang trong phiên làm việc của mình và chưa kết thúc phiên làm việc đó Và để có thể đánh cắp session ID của người dùng, attacker có thể dùng những phương pháp như;
- Tấn công kiểu dự đoán phiên làm việc (Prediction session ID)
Attacker phải là người dùng hợp lệ của hệ thống, sau vài lần đăng nhập vào hệ thống, attacker xem xét các giá trị session ID nhận được, tìm ra qui luật phát sinh và từ
đó có thể đoán được giá trị của một phiên làm việc của người dùng kế tiếp
- Tấn công kiểu vét cạn phiên làm việc (Brute force ID)
Attacker tự tạo một chương trình gửi nhiều yêu cầu trong một khoảng thời gian đến trình chủ Mỗi một yêu cầu kèm theo một session ID để tìm các session ID đang tồn tại Attacker dựa vào thói quen của những nhà phát triển ứng dụng lấy thời gian hay địa chỉ IP của người dùng để tạo session ID để hạn chế vùng vét cạn phục vụ cho ý
đồ của attacker
c Tấn công kiểu dùng đoạn mã để đánh cắp phiên làm việc
Bằng cách chèn vào đoạn mã thực thi trên chính trình duyệt của nạn nhân, attacker có thể lừa người dùng theo vết một liên kết để từ đó thực hiện đánh cắp cookie của người dùng và cách này được thực hiện thông qua lỗi Cross - Site -Scripting Sau khi có được phiên làm việc của người dùng, attacker vào phiên làm việc của họ
2.2.3.2 Biện pháp phòng chống
Biện pháp 1: Chống việc đăng nhập với một session ID có sẵn
Theo kiểu tấn công này, người dùng đăng nhập vào hệ thống thông qua một session ID do attacker tạo sẵn thay vì do trình chủ tạo mới Do đó để phòng chống, ứng dụng phải hủy bỏ session ID được cung cấp bởi trình duyệt của người dùng khi đăng nhập, và luôn tạo một session ID mới khi người dùng đăng nhập thành công những lần tiếp theo
Biện pháp 2: Phòng chống những attacker bên ngoài hệ thống
Việc tạo ứng dụng trên hệ thống theo hướng giới hạn (chỉ tạo một session ID mới cho người dùng sau khi họ thành công), sẽ khiến cho những attacker không phải
là người dùng hợp lệ của hệ thống không thể sử dụng phương pháp tấn công này
Biện pháp 3: Giới hạn phạm vi ứng dụng của session ID
- Kết hợp Session ID với địa chỉ của trình duyệt
- Kết hợp Session ID với thông tin xác thực được mã hoá SSL của người dùng
- Xóa bỏ session khi người dùng thoát khỏi hệ thống hoặc hết hiệu lực, có thể thực hiện trên trình chủ hoặc trình duyệt
Trang 32- Người dùng phải dùng chế độ thoát khỏi hệ thống, để xóa bỏ session hiện thời và những session ID còn lưu lại trên hệ thống, khi họ quên thoát ra ngoài những lần trước.
- Thiết lập “thời gian hết hiệu lực” cho session, tránh trường hợp attacker có thể duy trì session và sử dụng nó lâu dài
- Với session ID quá ngắn, attacker có thể dùng kĩ thuật “Vét cạn” Nhưng không vì thế mà cho rằng ứng dụng sẽ bảo mật với session ID dài và phức tạp vì kích thước session ID sẽ là một vấn đề nếu thuật toán không tốt
2.3 Thực trạng an ninh trên mạng ở Việt Nam trong thời gian qua và giải pháp “đám mây”
Cùng với các Website nối tiếng trên thế giới bị tấn công như (Yahoo, Amazon.com, eBay, Buy.com) các Website của Việt nam cũng không nằm ngoài mục tiêu đột kích của các hacker Như vụ tấn công của các hacker vào Website của Vitranet Thay vì hiện nội dung trang Web của mạng thông tin thương mại thị trường Việt nam lại là nội dung của trang Web có nội dung không lành mạnh khi người sử dụng gõ vào dòng địa chỉ: http://www.vinaone.com Tuy nhiên, do số lượng các trang Web của Việt Nam còn ít, số lượng người sử dụng Internet chưa nhiều (cả nước có khoảng 40.000 thuê bao Internet) nên nếu có bị tấn công cũng gây thiệt hại không đáng kể Trong thời gian qua, các đường truyền Internet của Việt Nam vốn có lưu lượng rất thấp so với thế giới đã một số lần bị tắc vào các giờ cao điểm Tuy nhiên các trang Web của nước ta lo ngại nhất là các hacker phá hoại, sửa chữa làm sai lệch thông tin chứ không sợ "dội bom"
Bản thân mạng VNN cũng đã nhiều lần bị tấn công dưới hình thức bom thư Hàng ngàn bức thư từ nhiều địa điểm trên thế giới đã đồng loạt gửi về mạng nhưng sự tắc nghẽn không đáng kể Việc đối phó với hình thức tấn công này không phải là quá khó nhưng để đi tới một giải pháp tối ưu, triệt để thì lạ là vấn đề đáng bàn Việc nghiên cứu, xây dựng những giải pháp kỹ thuật tốt hơn "bức tường lửa" bảo vệ hiện nay thì an ninh trên mạng mới thực sự được bảo đảm mà không ảnh hưởng đến các dịch vụ Internet khác Hiện nay "bức tường lửa" không những không đáp ứng được vấn đề an toàn an ninh mà còn làm cho các dịch vụ khác không phát triển được Trước đây, chủ yếu lo ngăn ngừa truy cập các trang web có nội dung xấu thì nay vấn đề an ninh trên mạng cần phải được xem xét một cách nghiêm túc hơn ở cả trong nước và quốc tế
Mỗi năm Việt Nam thiệt hại tới hàng nghìn tỉ đồng do virus máy tính, đó là chưa kể tới các vụ tấn công mạng, đánh cắp dữ liệu, gây ảnh hưởng rất lớn tới các tổ chức, doanh nghiệp và cá nhân Theo Trung tâm an ninh mạng BKAV, trong năm qua
đã có tới trên 64 triệu máy tính Việt Nam bị nhiễm virus, trên 2,2 nghìn website của cơ quan, doanh nghiệp bị tấn công, và trung bình mỗi tháng có 187 website bị tấn công Đứng trước thực trạng đó, nhiều chuyên gia cho rằng điện toán đám mây có khả năng đáp ứng nhu cầu bảo mật và đảm bảo an ninh mạng
Trang 33Hãng nghiên cứu thị trường Gartner từng dự đoán sẽ có tới 80% doanh nghiệp trong danh sách 1.000 công ty hàng đầu theo đánh giá của tạp chí Fortune (Mỹ) sử dụng ít nhất một vài loại hình dịch vụ đám mây trong năm 2012 Trong khi đó tại Việt Nam, điện toán đám mây mới chỉ bắt đầu khởi động từ năm 2010 khi Microsoft ký thỏa thuận hợp tác triển khai điện toán đám mây với tập đoàn FPT Ngoài Microsoft, còn nhiều hãng công nghệ lớn trên thế giới như Intel, Cisco, Google… cũng đã giới thiệu công nghệ điện toán đám mây tới Việt Nam.
Mặc dù khá phổ biến tại nhiều nước phát triển nhưng thời gian qua “đám mây” tại Việt Nam vẫn chưa được triển khai rộng rãi Hiện cũng mới chỉ có một số ít doanh nghiệp lớn ứng dụng “đám mây” vào hoạt động sản xuất kinh doanh, và phần còn lại chủ yếu mới chỉ dừng ở mức “nghe ngóng” và tìm hiểu thông tin mặc dù trên thực tế công nghệ này có thể giúp doanh nghiệp tiết kiệm chi phí và tăng tối đa hiệu suất làm việc Đường truyền, hạ tầng mạng lưới, và bảo mật vẫn còn là những vấn đề mà các doanh nghiệp lo ngại, nhất là vấn đề an ninh cho dữ liệu, ứng dụng trên điện toán đám mây Tuy nhiên vấn đề an ninh mạng cũng là một trong những lĩnh vực mà giới chuyên gia hy vọng công nghệ “đám mây” sẽ giữ vai trò chủ chốt Theo ông Freddy Tan, chuyên gia của Tập đoàn Microsoft, quả quyết rằng điện toán đám mây sẽ là giải pháp tối ưu đảm bảo an toàn bảo mật an ninh mạng trong tương lai Ông cũng ví công nghệ “đám mây” như là hy vọng duy nhất, và là “ánh sáng cuối đường hầm” cho lĩnh vực tiềm ẩn nhiều nguy cơ và đang rất nan giải này
2.4 Tổng kết chương II
Chương II đã tìm hiểu tổng quan về vấn đề an ninh trên mạng internet, một số kỹ thuật tấn công xâm nhập máy chủ dữ liệu như kỹ thuật tấn công qua các lỗ hổng của cơ chế xác thực, qua các lỗ hổng của các cổng dịch vụ, qua lỗ hổng của quản lý phiên làm việc Những thông tin hay dữ liệu của người dùng cũng như của máy chủ đều cần được bảo vệ nhằm đảm bảo tính chung và riêng, vì vậy trong chương II đã nghiên cứu một số giải pháp chống tấn công đồng thời đặt vấn đề cho giải pháp điện toán đám mây có khả năng đáp ứng nhu cầu bảo mật và đảm bảo an ninh mạng
Trang 34CHƯƠNG III: AN NINH & BẢO MẬT TRONG ĐIỆN TOÁN ĐÁM MÂY
3.1 Tổng quan về vấn đề an ninh bảo mật trong điện toán đám mây
Điện toán đám mây ngày càng phát triển nhanh đã làm dấy lên sự quan tâm của toàn thế giới Điện toán đám mây là tính toán dựa trên Internet, các tài nguyên chia sẻ, phần mềm và thông tin được cung cấp cho máy tính và các thiết bị theo yêu cầu, giống như điện lưới Điện toán đám mây là sản phẩm của sự hợp nhất của công nghệ điện toán truyền thống và công nghệ mạng như lưới điện toán, phân phối máy tính tính toán song song… Nó nhằm mục đích xây dựng một hệ thống hoàn hảo với khả năng tính toán mạnh mẽ thông qua một số lượng lớn của thực thể tính toán, chi phí tương đối thấp và sử dụng các mô hình kinh doanh tiên tiến như SaaS (phần mềm như một dịch vụ), PaaS (Platform as a Service), IaaS (Cơ sở hạ tầng như một Dịch vụ) để phân phối năng lực tính toán mạnh mẽ tới người sử dụng
Điện toán đám mây không phải là một khái niệm mới Tuy nhiên, nó sẽ là cuộc cách mạng trong ngành công nghiệp CNTT, trong đó đại diện cho xu hướng phát triển của ngành công nghiệp CNTT từ phần cứng đến phần mềm, phần mềm dịch vụ, dịch
vụ phân phối dịch vụ tập trung Khái niệm cốt lõi của điện toán đám mây được giảm bớt gánh nặng xử lý trên thiết bị đầu cuối của người sử dụng bằng cách liên tục cải thiện khả năng xử lý của các "đám mây", cuối cùng đơn giản hóa thiết bị đầu cuối của người sử dụng một đầu vào đơn giản và các thiết bị đầu ra, trong khả năng tính toán mạnh mẽ của đám mây theo yêu cầu Tất cả điều này là có sẵn thông qua một kết nối Internet đơn giản bằng cách sử dụng một trình duyệt hoặc kết nối tiêu chuẩn khác Trong vài năm qua, điện toán đám mây đã phát triển từ một khái niệm kinh doanh hứa hẹn một trong những phân khúc phát triển nhanh nhất của ngành công nghiệp CNTT Hiện nay, suy thoái kinh tế, các công ty đang ngày càng nhận ra rằng chỉ đơn giản bằng cách chạm vào các đám mây, họ có thể truy cập nhanh đến các ứng dụng kinh doanh tốt nhất hoặc thúc đẩy nguồn tài nguyên cơ sở hạ tầng của họ, tất cả với chi phí không đáng kể
Trong mô hình điện toán truyền thống, các cá nhân, doanh nghiệp sẽ xây dựng riêng cơ sở hạ tầng kỹ thuật để tự cung cấp các dịch vụ cho các hoạt động thông tin đặc thù của mình Với mô hình này, mọi thông tin sẽ được lưu trữ, xử lý nội bộ và họ
sẽ trả tiền để triển khai, duy trì cơ sở hạ tầng đó (mua thiết bị phần cứng, phần mềm chuyên dụng, trả lương cho bộ phận điều hành ) Khác với mô hình điện toán truyền thống, điện toán đám mây lưu trữ và xử lý toàn bộ thông tin trong đám mây Internet Mọi công nghệ, kỹ thuật, cơ sở hạ tầng cũng như chi phí triển khai trong đám mây sẽ
do nhà cung cấp đảm bảo xây dựng và duy trì Do đó, thay vì phải đầu tư từ đầu rất nhiều tiền cho chi phí xây dựng cơ sở hạ tầng riêng, các cá nhân, doanh nghiệp trong quá trình hoạt động sẽ chỉ phải trả số tiền vừa đủ theo nhu cầu sử dụng của mình (pay-for-what-you-use) Như vậy, mô hình này có rất nhiều lợi ích như sử dụng hợp lý nguồn vốn, điều hòa chi tiêu tính toán theo thực tế sử dụng, luôn hưởng năng suất tính
Trang 35toán theo cam kết của nhà cung cấp dịch vụ, tận dụng được sức mạnh của Internet và các siêu máy tính, giảm cơ bản trách nhiệm quản lý hệ thống CNTT nội bộ
Sự khác biệt lớn giữa điện toán đám mây so với điện toán truyền thống là thông tin được đặt trên đám mây, người sử dụng sẽ truy nhập và làm việc với thông tin khi cần thiết Điều này cũng giống như cách thức gửi tiền trong ngân hàng và khách hàng
có thể rút tiền khi cần Việc gửi tiền trong ngân hàng ngày nay là một trong những giải pháp được tin cậy nhất, bởi vậy, thông tin trên đám mây có vẻ như an toàn Tuy nhiên, không giống như lĩnh vực tài chính, ngân hàng, thông tin của người sử dụng cá nhân cũng như của doanh nghiệp, tổ chức lại có mức độ riêng tư rất cao Đặc biệt, những thông tin đó không được phép lộ ra nếu chúng là bí mật công nghệ, bí mật tài chính hoặc thậm chí là bí mật quốc gia Ngân hàng có thể bồi thường tiền cho khách hàng nhưng thông tin là không thể Trong điện toán truyền thống, các doanh nghiệp còn phải tìm đủ mọi giải pháp chỉ để đảm bảo an toàn cho những thông tin đặt ngay trên hạ tầng thiết bị của chính mình, thì rất khó để họ tin tưởng giao lại thông tin khi mà họ không biết nó được đặt chính xác ở đâu và lại được quản lý bởi những người không quen biết theo mô hình đám mây Vì vậy, bảo mật dữ liệu và rủi ro bảo mật đã trở thành mối quan tâm hàng đầu của người sử dụng
3.2 Quản lý bảo mật trong điện toán đám mây
3.2.1 Mô hình chung
Mô hình điện toán đám mây hiện đang được triển khai bởi nhiều nhà cung cấp khác nhau, nhưng nhìn chung có thể quy ra một mô hình chung gồm ba lớp sau :
Hình 3.1: Kiến trúc điện toán đám mây
Tầng ứng dụng (dịch vụ ứng dụng): tầng này cung cấp những ứng dụng chạy trong môi trường đám mây và được cung cấp theo yêu cầu (về thời gian, chất lượng, số lượng…) theo yêu cầu của người dùng Đôi khi các dịch vụ này được cung cấp miễn phí và các nhà cung cấp dịch vụ tạo ra doanh thu từ những thứ khác như là các quảng cáo Web và nhiều khi các nhà cung cấp ứng dụng tạo ra doanh thu trực tiếp từ việc sử dụng dịch vụ
Trang 36Tầng nền tảng dịch vụ: đây là tầng cơ sở hạ tầng ứng dụng được hiểu như là một tập hợp các dịch vụ Nhưng các dịch vụ này không trực tiếp giao tiếp với khách hàng, người dùng Nói cách khác, các dịch vụ ở tầng này được dành để hỗ trợ cho các ứng dụng Các ứng dụng này có thể đang chạy trong đám mây và chúng có thể đang chạy trong một trung tâm dữ liệu của doanh nghiệp Để đạt được khả năng mở rộng cần thiết trong một đám mây, các dịch vụ khác nhau được đưa ra ở đây thường được
Với sự lựa chọn một đám mây công cộng, một phần lớn mạng, hệ thống, ứng dụng và dữ liệu sẽ được chuyển đến bên cung cấp thứ ba để kiểm soát Các đám mây dịch vụ chuyển mô hình sẽ tạo ra các đám mây ảo cũng như một mô hình bảo mật với trách nhiệm chia sẻ giữa khách hàng và nhà cung cấp dịch vụ đám mây (CSP)
Hình 3.2: Quản lý bảo mật và giám sát phân vùng
Mặc dù khách hàng có thể chuyển giao một số trách nhiệm hoạt động cho các nhà cung cấp, nhưng mức độ trách nhiệm khác nhau phụ thuộc vào nhiều yếu tố, bao gồm các mô hình cung cấp dịch vụ (SPI), nhà cung cấp các loại hợp đồng dịch vụ (SLA), và nhà cung cấp các khả năng đặc biệt để hỗ trợ các phần mở rộng của quy trình nội bộ quản lý bảo mật và các công cụ
Để bảo mật cho dữ liệu, các tổ chức công nghệ thông tin sử dụng khung quản lý bảo mật như ISO / IEC 27000 và thư viện cơ sở hạ tầng công nghệ thông tin (ITIL)
Trang 37Đó đều là các khung tiêu chuẩn sẽ hướng dẫn việc lập kế hoạch và thực hiện một chương trình quản trị nhà nước với quy trình quản lý bảo vệ tài sản thông tin Các khung quản lý như ITIL sẽ giúp cải thiện dịch vụ liên tục khi cần thiết để sắp xếp và tổ chức lại các dịch vụ công nghệ thông tin phục vụ cho nhu cầu kinh doanh ngày càng thay đổi.
Trong một thời gian ngắn, quản lý bảo mật là một quá trình liên tục và sẽ liên quan nhiều đến quản lý bảo mật đám mây
Mục đích của khuôn khổ quản lý bảo mật ITIL được chia thành hai phần:
- Thực hiện các yêu cầu an ninh : các yêu cầu về bảo mật thường được quy định trong SLA cũng như các yêu cầu bên ngoài, nó được quy định trong hợp đồng cơ sở, pháp luật, và trong chính sách nội bộ hay chính sách bên ngoài
- Thực hiện cấp độ bảo mật cơ bản : điều này là cần thiết để đảm bảo tính an toàn và liên tục của tổ chức
Việc thành lập các quy trình quản lý bảo mật cũng liên kết với một tổ chức về các chính sách và tiêu chuẩn công nghệ thông tin, với mục tiêu bảo vệ bí mật, toàn vẹn
và sẵn có của thông tin Hình dưới minh hoạc các vòng đời ITIL trong một doanh nghiệp, quản lý bảo mật tuân theo tiêu chuẩn ISO và các chức năng ITIL
Hình 3.3: Minh họa vòng đời ITIL trong một doanh nghiệp
Trang 383.2.2 Mục tiêu bảo mật thông tin trên đám mây
Phát triển phần mềm bảo mật dựa trên việc áp dụng các nguyên tắc thiết kế phần mềm bảo mật đã hình thành cơ sở cơ bản để đảm bảo phần mềm Trung tâm dữ liệu và phân tích phần mềm (DACS) yêu cầu phần mềm phải thể hiện ba đặc tính sau đây mới được coi là an toàn :
-Tính an toàn: phần mềm có thể đoán trước được và hoạt động thực thi một cách chính xác dưới nhiều điều kiện khác nhau, kể cả khi bị tấn công hoặc chạy trên một máy chủ nguy hiểm
-Tính đáng tin cậy: phần mềm không được có lỗ hổng bảo mật hoặc những điểm yếu có thể phá hoại tính tin cậy của phần mềm
-Khả năng tồn tại: đó là khẳ khăng kháng lại hoặc chịu được các cuộc tấn công
và có khả năng phục hồi nhanh nhất có thể cũng như gây tổn hại ít nhất có thể
Ngoài ra còn có bảy nguyên tắc bổ sung để đảm bảo hỗ trợ an toàn thông tin là bảo mật, toàn vẹn, tính sẵn có, chứng thực, cấp phép, kiểm tra và trách nhiệm
3.2.3 Các tiêu chuẩn quản lý bảo mật
Dựa trên một số tiêu chí đánh giá nhất định, các tiêu chuẩn có liên quan đến việc bảo mật trên các đám mây bao gồm ITIL, ISO / IEC 27001 và 27002
* ITIL – thư viện cơ sở hạ tầng công nghệ thông tin
ITIL là một tập hợp các thực hành tốt nhất và hướng dẫn cách tích hợp, dựa trên nền tảng quản lý các dịch vụ công nghệ thông tin ITIL có thể áp dụng trên hầu hết các loại môi trường công nghệ thông tin bao gồm môi trường hoạt động của điện toán đám mây
ITIL tìm cách để đảm bảo rằng các thông tin được bảo mật hiệu quả thể hiện ở các chiến lược, chiến thuật, và hoạt động Thông tin bảo mật được xem là một quá trình lặp đi lặp lại nhưng được kiểm soát, kế hoạch, triển khai thực hiện, đánh giá và duy trì
ITIL chia thông tin bảo mật thành :
-Chính sách : là các mục tiêu tổng thể của một tổ chức đang cố gắng để đạt được
-Quy trình : điều gì xảy ra để đạt được các mục tiêu
-Thủ tục : ai làm gì và khi nào để đạt được các mục tiêu
-Hướng dẫn hoạt động : hướng dẫn cho những hành động cụ thể
Việc quản lý tiến trình dựa trên các quy tắc thực hành quản lý bảo mật thông tin, còn được gọi là ISO/IEC 17799:2005 Các quy trình quản lý an ninh ITIL có quan
hệ với hầu hết các quy trình ITIL khác Tuy nhiên, tất cả các mối quan hệ rõ ràng nhất
sẽ đưa vào quy trình quản lý cấp dịch vụ, các quy trình quản lý liên quan, và các quy trình quản lý thay đổi, vì chúng ảnh hưởng rất nhiều đến tình trạng an ninh trong hệ thống (máy chủ, mạng, hay ứng dụng) ITIL cũng có liên quan đến tiêu chuẩn ISO/IEC
20000, đó là tiêu chuẩn quốc tế đầu tiên cho quản lý dịch vụ công nghệ thông tin
Trang 39* ISO 27001/27002
ISO/IEC 27001 định nghĩa những yêu cầu cơ bản nhất bắt buộc đối với một hệ thống bảo mật thông tin (ISMS) Nó là một tiêu chuẩn chứng nhận, và sử dụng tiêu chuẩn ISO/IEC 27002 để kiểm soát thông tin bảo mật phù hợp trong ISMS Tuy nhiên,
từ khi ISO/IEV 27002 chỉ là một quy tắc thực hành hướng dẫn hơn một tiêu chuẩn chứng nhân, các tổ chức được tự do lựa chọn và thực hiện kiểm soát khi họ thấy cần
Về cơ bản, các tiêu chuẩn bảo mật giúp cho các tổ chức về công nghệ thông tin trả lời một số câu hỏi như :
-Làm thế nào để đảm bảo rằng mức độ bảo mật hiện tại là phù hợp?
-Làm thế nào để áp dụng một nền tảng bảo mật vững chắc cho tất cả mọi hoạt động của khách hàng?
-Làm thế nào đảm bảo rằng dịch vụ của mình là an toàn?
* Quản lý bảo mật trong điện toán đám mây
Dựa trên các tiêu chuẩn quản lý bảo mật, một số lĩnh vực sau cần được quan tâm bảo mật trong dịch vụ điện toán đám mây :
- Quản lý tính sẵn sàng (ITIL)
- Kiểm soát truy cập (ISO/IEC 27002, ITIL)
- Quản lý tính dễ bị xâm phạm (ISO/IEC 27002)
- Quản lý đường dẫn (ITIL)
- Quản lý cấu hình (ITIL)
- Phản ứng sự cố (ISO/IEC 27002)
- Hệ thống sử dụng và theo dõi truy cập (ISO/IEC 27002)
3.3 Kiến trúc bảo mật trong điện toán đám mây
Có một loạt các yếu tố ảnh hưởng đến việc thực hiện kiến trúc bảo mật cho điện toán đám mây Có những vấn đề chung liên quan đến yêu cầu pháp lý, tuân thủ các tiêu chuẩn, quản lý bảo mật, thông tin phân loại, và nâng cao nhận thức về an ninh Sau đó cụ thể hơn các khu vực kiến trúc liên quan, bao gồm cả phần cứng và phần mềm đáng tin cậy, cung cấp một môi trường thực thi an toàn, thiết lập bảo mật thông tin, và mở rộng phần cứng từ những kiến trúc nhỏ nhất
3.3.1 Các quy định cần tuân thủ
Trong một môi trường đám mây công cộng, các nhà cung cấp không thường xuyên thông báo cho khách hàng địa điểm lữu trữ dữ liệu của họ Trong thực tế, việc phân phối sửa đổi và lưu trữ dữ liệu là một trong những đặc điểm cơ bản của điện toán đám mây Tuy nhiên, các nhà cung cấp đám mây nên hợp tác để xem xét các yêu cầu
về vị trí dữ liệu của khách hàng
Ngoài ra, các nhà cung cấp đám mây nên cung cấp một cách minh bạch, rõ ràng cho khách hàng bằng cách cung cấp thông tin về lưu trữ sử dụng, các đặc điểm cần sửa đổi, và các thông tin về tài khoản có liên quan
Trang 40Một vấn đề cần tuân thủ khác là khả năng truy cập dữ liệu của khách hàng bởi các kỹ sư hệ thống của nhà cung Đây là một nhân tố cần thiết của việc cung cấp và duy trì các dịch vụ đám mây, những hành vi thu thập những thông tin nhạy cảm, bí mật nên bị theo dõi, kiểm tra, và được bảo vệ bởi nhiều biện pháp như phân chia nhiệm vụ Trong tình huống đó thông tin được lưu trữ bởi một thẩm quyền bên ngoài, khả năng của các cơ quan thực thi pháp luật địa phương để truy cập dữ liệu nhạy cảm của khách hàng là mối quan tâm được đặt lên hàng đầu.Ví dụ, trường hợp này có thể xảy ra khi một tổ chức chính phủ tiến hành điều tra trên moạt loạt các máy tính của một nhà cung cấp đám mây bị nghi ngờ có những hoạt động bất hợp pháp.
Yêu cầu của các nhà cung cấp điện toán đám mây cho việc tuân thủ và bảo vệ
dữ liệu phải hỗ trợ bởi những chứng chỉ có liên quan, thiết bị, và kiểm toán Đặc biệt,
ở mức tối thiểu, một nhà cung cấp điện toán đám mây phải trải qua một tuyên bố về chuẩn kiểm toán Việc kiểm toán này sẽ đánh giá một dịch vụ kiểm soát nội bộ để xác định xem nguyên nhân chấp nhận tốt nhất được áp dụng để bảo vệ thông tin khách hàng
Một vấn đề có liên quan là các chính sách quản lý liên kết với dữ liệu được lưu trong đám mây Khi một lời hứa hẹn của khách hàng với nhà cung cấp đám mây chấm dứt, sự tuân thủ và yêu cầu bảo mật cần phải được xem xét lại Trong một số trường hợp, thông tin phải được bảo quản theo yêu cầu quy định và trong các trường hợp khác, nhà cung cấp không nên giữ dữ liệu của khách hàng trong cơ sở lưu trữ chính hoặc cơ sở dự phòng nếu khách hàng tin rằng nó đã được tiêu hủy Nếu nó được lưu trữ bởi một thẩm quyền nước ngoài, dữ liệu có thể bị áp dụng luật riêng tư của nước
đó và không phải áp dụng cho các vị trí địa lý của khách hàng
Sự phát triển và áp dụng một cách thích hợp các tiêu chuẩn đám mây tập trung vào các yêu cầu pháp luật sẽ phục vụ để đáp ứng những yêu cầu tuân thủ của đám mây
và cung cấp sự bảo vệ cần thiết
3.3.2 Quản lý và kiểm soát an ninh
Việc quản lý bảo mật đám mây thích hợp và ban quản trị cần xác định những vấn đề về quản lý trong các lĩnh vực quan trọng như kiểm soát truy cập, phân tích khả năng bị tổn thương, kiểm soát thay đổi, ứng phó sự cố, khả năng chịu lỗi và khả năng phục hồi và lập kế hoạch kinh doanh liên tục Những khu vực này được tăng cường và
hỗ trợ bởi các ứng dụng thích hợp và kiểm tra việc kiểm soát bảo mật của đám mây
Mục tiêu của việc kiểm soát an ninh điện toán đám mây là để giảm rủi ro đến mức thấp nhất có thể và giảm thiểu các tác động của cuộc tấn công Để đạt được điều này, một tổ chức phải xác định những tác động của một cuộc tấn công có thể xảy ra và những gì có thể bị mất
3.3.3 Phân loại thông tin
Việc phân loại thông tin sẽ hỗ trợ cho việc lập kế hoạch khắc phục rủi ro và lập
ra những kế hoạch kinh doanh liên tục