1. Trang chủ
  2. » Luận Văn - Báo Cáo

Luận văn thạc sĩ Kỹ thuật viễn thông: Phòng chống tấn công DDOS trong môi trường điện toán đám mây

116 0 0
Tài liệu đã được kiểm tra trùng lặp

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Phòng Chống Tấn Công DDoS Trong Môi Trường Điện Toán Đám Mây
Tác giả Nguyễn Minh Phương
Người hướng dẫn TS. Lưu Thanh Trà
Trường học Trường Đại học Bách Khoa - Đại học Quốc gia TP. HCM
Chuyên ngành Kỹ thuật Viễn thông
Thể loại Luận văn thạc sĩ
Năm xuất bản 2017
Thành phố Tp. Hồ Chí Minh
Định dạng
Số trang 116
Dung lượng 4,4 MB

Cấu trúc

  • 1.1 Lý Do Chọn Đề Tài (16)
  • 1.2 Mục Tiêu Và Nhiệm Vụ (16)
  • 1.3 Đối Tượng Và Phạm Vi Tìm Hiểu (17)
  • 1.4 Phương Pháp Nghiên Cứu (18)
  • 1.5 Ý Nghĩa Của Đề Tài (18)
  • 1.6 Nội Dung Luận Văn (19)
  • 2. GIỚI THIỆU TỔNG QUAN VÀ TÌNH HÌNH NGHIÊN CỨU 5 (0)
    • 2.1 Giới Thiệu DDoS (20)
      • 2.1.1. Khái Niệm DDoS (20)
      • 2.1.2. Lịch Sử (21)
      • 2.1.3. Phân Loại Các Kiểu Tấn Công DDoS (23)
      • 2.1.4. Ví Dụ Về Tấn Công DoS (27)
    • 2.2 Giới Thiệu Về Điện Toán Đám Mây (29)
      • 2.2.1. Khái Niệm (29)
      • 2.2.2. Mô Hình Dịch Vụ Đám Mây (29)
      • 2.2.3. Thuộc Tính Của Điện Toán Đám Mây (31)
      • 2.2.4. Các Mô Hình Triển Khai Điện Toán Đám Mây (32)
      • 2.2.5. Lợi Ích Của Điện Toán Đám Mây (33)
      • 2.2.6. Thách Thức Mà Điện Toán Đám Mây Phải Đối Mặt (34)
      • 2.3.2. Phương Pháp Lọc SOA (36)
      • 2.3.3. Phương Pháp Dùng Thuật Toán PSO (38)
      • 2.3.4. Phương Pháp Lọc Dựa Trên Nền Tảng Thống Kê (39)
  • 3. CƠ SỞ LÝ THUYẾT 26 (0)
    • 3.1 CloudSim (41)
      • 3.1.1. Sự Thành Lập Liên Bang Đám Mây (41)
      • 3.1.1 Kiến Trúc CloudSim (43)
      • 3.1.2 Các Thành Phần Trong CloudSim (45)
      • 3.1.3 Thư Viện Dùng Cho Mô Phỏng Trong Nhân CloudSim (49)
      • 3.1.4 Cách Thực Thi Và Mô Hình Của CloudSim (52)
    • 3.2 Xác Định Giả Mạo IP Nguồn (57)
      • 3.2.1 Kiểm Tra Số Bước Nhảy (58)
      • 3.2.2 Xây Dựng Bảng IP To Hop Count (IP2HC) (59)
      • 3.2.3 Tính Tiện Lợi Của Phương Pháp (63)
    • 3.3 Xác Định Thời Điểm Bị Tấn Công (64)
      • 3.3.1 Giới Thiệu Phương Pháp (64)
      • 3.3.2 Khái Niệm Các Thành Phần Được Sử Dụng (66)
      • 3.3.3 Cách Thực Hiện (68)
  • 4. MÔ PHỎNG VÀ KẾT QUẢ 55 (0)
    • 4.1 CloudSim (70)
      • 4.1.1 Cài Đặt Chương Trình (70)
      • 4.1.2 Môi Trường Mô Phỏng (71)
      • 4.1.3 Các Bước Làm Việc Của CloudSim (74)
      • 4.1.4 Mô Phỏng Cloud (75)
    • 4.2 Phát Hiện IP Giả Mạo (83)
      • 4.2.1 Mô Hình Và Mục Đích Mô Phỏng (83)
      • 4.2.2 Cách Thực Hiện (83)
      • 4.3.1 Mô Hình Và Mục Đích Mô Phỏng (87)
      • 4.3.2 Giải Thuật Xử Lý (90)
      • 4.3.3 Phân Tích Kết Quả (94)
    • 5.1 Kết Luận (98)
    • 5.2 Hướng Phát Triển (99)

Nội dung

Thông qua hệ thống mạng, công nghệ này giúp giảm chi phí công nghệ thông tin và cung cấp những dịch vụ đáp ứng nhu cầu của người dùng cá nhân, cũng như các tổ chức.. Tấn công từ chối dịc

Mục Tiêu Và Nhiệm Vụ

Hiện trên thế giới chưa có một phương pháp nào có thể hoàn toàn ngăn chặn triệt để các loại tấn công DDoS Trong đó tấn công lũ SYN là một hình thức DDoS khá phổ biến làm mất khả năng xử lý của máy chủ Vì vậy, mục tiêu của người viết là nghiên cứu phương pháp phát hiện và xử lý khi bị tấn công lũ SYN, tìm cách giảm thiểu báo động nhầm và nâng cao hiệu quả lọc các gói tin TCP-SYN tấn công

Trong luận văn, tác giả mô phỏng cách thức hoạt động, phân bổ tài nguyên của điện toán đám mây, tiếp đó là tiến hành mô phỏng tấn công và phòng thủ DDoS kiểu TCP-SYN flood vào một số máy chủ So sánh số liệu mô phỏng thu được với các số liệu

2 trên thế giới đã đưa ra Từ đó rút ra nhận xét và tìm cách cải thiện sự hiệu quả của phương pháp đã làm.

Đối Tượng Và Phạm Vi Tìm Hiểu

Trong luận văn này tác giả sẽ tìm hiểu các vấn đề sau:

 Phân loại các kiểu tấn công DDoS và tình hình nghiên cứu trên thế giới

 Mô hình dịch vụ, thuộc tính của điện toán đám mây

 Thư viện trong CloudSim dùng để mô phỏng đám mây

 Cách ứng dụng phân kỳ Jensen-Shannon trong tính toán so sánh sự phân bố xác suất các gói TCP-SYN trong luồng giao thông mạng, tại thời gian hiện tại với thời gian trước đó Từ đó, phát hiện thời điểm bắt đầu và kết thúc của một cuộc tấn công lũ SYN

 Tìm hiểu phương pháp “Hop Count Filtering” để lọc các gói tin có nguồn IP giả mạo

 Tìm hiểu mô hình “Cloud Confidence DDOS Filtering” dùng chặn các gói tin tấn công

Hai công cụ được sử dụng để mô phỏng trong luận văn là:

 CloudSim: là một bộ công cụ mô phỏng đám mây được phát triển bởi phòng Lab của trường đại học Melbourne [13] Về cơ bản CloudSim là một thư viện viết trên nền Java, dùng cho việc mô phỏng các kịch bản điện toán đám mây

Nó có một số tính năng như hỗ trợ mô hình hoá và mô phỏng cơ sở hạ tầng điện toán đám mây quy mô lớn với nhiều trung tâm dữ liệu CloudSim cung cấp các lớp cơ bản cho việc mô tả các trung tâm dữ liệu, máy ảo, ứng dụng, người dùng, tài nguyên tính toán và các chính sách

 Matlab [wikipedia]: là phần mềm cung cấp môi trường tính toán số và lập trình, do công ty MathWorks thiết kế Matlab cho phép tính toán số với ma trận, vẽ đồ thị hàm số hay biểu đồ thông tin, thực hiện thuật toán, tạo các giao diện người dùng và liên kết với những chương trình máy tính viết trên

3 nhiều ngôn ngữ lập trình khác Với thư viện Toolbox, Matlab cho phép mô phỏng tính toán, thực nghiệm nhiều mô hình trong thực tế và kỹ thuật.

Phương Pháp Nghiên Cứu

 Thu thập những bài báo đã được đăng trên các tạp chí uy tín có nội dung về DDoS, Cloud Computing, Network Traffic

 Tạo sơ đồ khối hệ thống nhận biết và xử lý tấn công lũ SYN

 Dùng CloudSim để xây dựng một môi trường điện toán đám mây với các thành phần cốt lõi trong đó Thấy được sự liên lạc giữa các thành phần, cũng như chính sách phân chia tài nguyên xử lý trong máy chủ khi xử lý các tác vụ

 Dùng Matlab để mô phỏng kịch bản tấn công và phòng thủ Qua kết quả thu được, sẽ rút ra nhận xét về sự hiệu quả của phương pháp đề xuất.

Ý Nghĩa Của Đề Tài

Điện toán đám mây đang mang lại nhiều lợi ích cho người sử dụng trong công việc, giải trí và tiết kiệm chi phí hơn so với trước kia Tấn công DDoS lại là kẻ thù số một cho chất lượng những dịch vụ mà điện toán đám mây mang lại Nó gây thiệt hại kinh tế nghiêm trọng cho cả nhà cung cấp dịch vụ và các khách hàng của họ Chưa kể đến việc những kẻ tấn công dùng DDoS để đánh lạc hướng, hòng thực hiện những ý đồ xấu xa khác như đánh cắp thông tin bí mật của người dùng Do đó việc hạn chế bị tấn công DDoS đến mức thấp nhất là nhu cầu cấp thiết của các nhà cung cấp dịch vụ đám mây nói riêng và các tổ chức, doanh nghiệp nói chung

Kết quả mô phỏng cho thấy hệ thống được đề xuất có thể phát hiện chính xác cuộc tấn công lũ lẩn trốn trong một luồng dữ liệu lớn, và lọc thành công các gói tấn công với độ chính xác hơn 97% Do đó, đề tài có thể áp dụng vào hoạt động thực tiễn để bảo vệ khả năng xử lý của máy chủ trước các cuộc tấn công lũ SYN

Nội Dung Luận Văn

Luận văn gồm có 5 chương, trong đó:

Chương 2: giúp ta có cái nhìn khái quát về tấn công DDoS, cũng như một vài nghiên cứu liên quan đến đề tài Mặt khác, trong chương này cũng giới thiệu về các đặc điểm cũng như lợi ích mà điện toán đám mây đã mang lại

Chương 3: trình bày về các lý thuyết về thư viện của CloudSim, cách nhận biết một cuộc tấn công lũ SYN, cũng như hướng lọc các gói tấn công mà tác giả đã tìm hiểu và dựa vào đó để tiến hành mô phỏng

Chương 4: là những kết quả thu được trong mô phỏng thông qua hai phần mềm

Chương 5: đưa ra kết luận qua các kết quả thu được, kèm theo đó là nhìn nhận mặt còn thiếu xót trong luận văn và hướng để phát triển đề tài.

GIỚI THIỆU TỔNG QUAN VÀ TÌNH HÌNH NGHIÊN CỨU 5

Giới Thiệu DDoS

Tấn công Distributed Denial of Service (DDoS) hay còn gọi là tấn công từ chối dịch vụ phân tán là một dạng tấn công cùng lúc từ nhiều máy tính tới một đích Khiến cho đường truyền internet đến máy nạn nhân tắc nghẽn, hoặc làm khả năng xử lý của máy nạn nhân bị quá tải

Tấn công từ chối dịch vụ (DoS) và tấn công từ chối dịch vụ phân tán (DDoS) chỉ khác nhau ở phạm vi tấn công Trong khi lưu lượng tấn công DoS thường phát sinh từ một hoặc một số ít nguồn, thì lưu lượng tấn công DDoS thường phát sinh từ rất nhiều nguồn nằm rải rác trên mạng Internet Đầu tiên, kẻ tấn công tìm cách cài mã độc trên một số lượng lớn máy tính, nhằm chiếm quyền điều khiển từ xa Ta gọi các máy này là zombies Tập hợp các zombies lại ta có mạng Botnet Kẻ tấn công sẽ dùng các mạng botnet cùng lúc tấn công mục tiêu chính

Tấn công DDoS đầu tiên trong lịch sử là vào một máy tính của trường đại học Minnesota Cuộc tấn công DDoS quy mô lớn đầu tiên được ghi nhận là vào cuối tháng sáu và đầu tháng bảy năm 1999 Những servers chịu tấn công DDoS trong suốt những năm 2000 gồm : Yahoo, Amazon, Buy.com, CNN, Ebay, and Nato sites [2]

Vào năm 2013, có tấn công DDoS vào China’s websites, Bitcoin, NASDAQ trading market

24/11/2014, hệ thống máy tính của nhân viên của Sony Pictures trên toàn cầu đã trở thành nạn nhân của một đợt tấn công mạng Trước màn hình máy tính của nhân viên Sony xuất hiện dòng chữ "Hacked By #GOP" vốn được cho là thông điệp của tổ chức Guardians of Peace (theo thông tin từ tờ Los Angeles Times)

22/12/2014 : Hệ thống mạng của Triều Tiên bị đánh sập hoàn toàn

7/1/2015 các trang web của chính phủ nước Đức, trong đó có trang cá nhân của Thủ tướng Angela Merkel, đã bị tấn công, dẫn đến tình trạng truy cập bị gián đoạn từ lúc 10 giờ sáng

31/12/2015, vào lúc 7 giờ sáng (GMT) toàn bộ các trang web BBC đều hiển thị lỗi 505 vì bị tấn công DDoS

Tháng 10/2016, một mạng botnet cỡ lớn đã tấn công DDoS vào Dyn, nhà cung cấp hệ thống tên miền lớn của thế giới, khiến gần như một nửa nước Mỹ bị mất kết nối Internet Đợt tấn công DDoS nhắm vào Dyn đã khiến hàng loạt trang web lớn như Twitter, GitHub và Netflix bị đánh sập trong một ngày

7 Bảng 2 1: Tổng hợp tấn công DDoS theo từng năm [1]

DDoS tool Loại tấn công Năm

Fapi UDP,TCP and ICMP floods 1998

Trinoo Distributed SYN DoS attack 1999

Tribe Flood Network ICMP flood, SYN flood,UDP flood, and Smurf attack 1999 Stacheldraht ICMP flood, SYN flood,UDP flood, and Smurf attack 1999

Mstream TCP ACK flood attacks 2000

Trinity UDP, fragment, SYN, RST, ACK and other flood attacks 2000

Trinity Flood Network 2k UDP, TCP, ICMP Teardrop and LAND attacks 2000

Ramen Uses back chaining model for automatic propagation 2001

Red II TCP SYN attacks 2001

Knight SYN attacks, UDP flood attacks 2001

Nimda Attacks through email attachments , SMB networking and backdoors attacks 2001

SQL slammer SQL code injection attack 2003

Loris Slowloris attack and its variants viz Pyloris 2009 Qslowloris Attack the websites eg: IRC bots, Bonets 2009

DDOSIM-0.2 TCP based connection attacks 2010

XerXeS WikiLeaks attacks, QR code attacks 2011

Saladin Webservers attacks, tweet attacks 2011 Apache killer Apache server attacks, scripting attacks 2011

Tor’s Hammer HTTP POST attacks 2011

2.1.3 Phân Loại Các Kiểu Tấn Công DDoS

Hình 2 2: Phân Loại Các Kiểu Tấn Công DDoS [1]

2.1.3.1 Tấn Công Vào Băng Thông:

Tấn công vào băng thông được thiết kế nhằm làm tràn ngập mạng mục tiêu với những gói tin trao đổi qua lại không cần thiết Mục đích là làm giảm tối thiểu khả năng của các gói tin hợp lệ đến được hệ thống cung cấp dịch vụ của mục tiêu

Có hai loại tấn công vào băng thông [3]:

Kẻ tấn công điều khiển các máy zombies gửi một lượng lớn các gói tin đến hệ thống dịch vụ của mục tiêu, làm dịch vụ này hết khả năng về băng thông Băng thông của nạn nhân bị ngập lụt bởi các gói tin UDP và ICMP

9 Có 2 kiểu tấn công Flood attack :

Với sự giúp đỡ của zombies, kẻ tấn công gửi một số lượng lớn các gói tin UDP với địa chỉ IP nguồn giả mạo đến các cổng quy định trước hoặc cổng ngẫu nhiên của máy tính nạn nhân Khi nhận được các gói tin, máy nạn nhân sẽ nhìn vào ‘dest port’ để xác định xem ứng dụng thực thi nào sẽ tương ứng với cổng đó Nếu không thấy ứng dụng phù hợp, máy nạn nhân sẽ tạo ra gói tin ICMP với thông điệp là ‘destination unreachable’ Các gói tin ICMP trả lời từ máy nạn nhân sẽ được gửi đến các địa chỉ IP giả mạo; không phải là các địa chỉ IP thật của các zombies

Kết quả là băng thông của nạn nhân tràn ngập các gói tin UDP request và ICMP reply trao đổi qua lại liên tục, dần dần dẫn đến cạn kiệt nên không thể phục vụ người sử dụng thực sự

Thông qua các zombies, kẻ tấn công gửi một số lượng rất lớn các gói ‘ICMP ECHO Request’ đến cho máy nạn nhân Các gói này còn có thể mang IP nguồn giả mạo Mỗi gói tin gửi đến đều yêu cầu nạn nhân phải tạo ra các gói tin trả lời (response message)

Nên máy nạn nhân phải gửi lại rất nhiều gói response Lúc này, mạng sẽ tràn ngập các gói tin request reponse trao đổi qua lại liên tục Dẫn đến băng thông mạng của nạn nhân bị bão hòa và suy yếu nhanh chóng, không thể đáp ứng được các yêu cầu hợp lệ

Kẻ tấn công điều khiển các zombies gửi message đến một địa chỉ IP broadcast, với địa chỉ nguồn là của nạn nhân Khi đó tất cả các máy trong subnet này sẽ gửi message trả lời đến hệ thống dịch vụ của nạn nhân Phương pháp này làm gia tăng traffic không cần thiết, làm suy giảm băng thông của mục tiêu

Có 2 loại tấn công kiểu Amplification attack:

Hacker sẽ gửi các gói ICMP echo request đến địa chỉ broadcast của mạng khuếch đại

Các gói ICMP echo request này sẽ có địa chỉ IP nguồn chính là địa chỉ IP của nạn nhân Khi các packet đó đến được địa chỉ broadcast của mạng khuếch đại, lập tức tất cả các máy tính trong mạng khuếch đại sẽ nhận được các packet này Các máy này tưởng rằng máy tính nạn nhân đã gởi gói ICMP echo request đến (do hacker đã làm giả địa chỉ IP nguồn), lập tức chúng sẽ đồng loạt gởi trả lại hệ thống nạn nhân các gói ICMP echo reply

Hệ thống máy nạn nhân sẽ không chịu nổi một khối lượng khổng lồ packet và nhanh chóng bị ngừng hoạt động, crash hoặc reboot Như vậy, ta có thể thấy rằng hacker chỉ cần gởi một lượng nhỏ các ICMP echo request packets đi, và hệ thống mạng khuếch đại sẽ khuếch đại lượng ICMP echo request packet này lên gấp bội

Giới Thiệu Về Điện Toán Đám Mây

2.2.1 Khái Niệm Điện toán đám mây (Cloud Computing) là một thuật ngữ ra đời vào năm 2007 Điện toán đám mây là việc các nhà cung cấp kết hợp phần cứng và phần mềm của họ để cung cấp nhiều loại dịch vụ khác nhau cho khách hàng thông qua mạng Internet Nó như một tập hợp các máy ảo mô phỏng máy tính vật lý và cung cấp dịch vụ, chẳng hạn như hệ điều hành và các ứng dụng Có thể hiểu đơn giản là các nguồn điện toán khổng lồ như phần mềm, dữ liệu…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 (trên mặt đất) để mọi người kết nối và sử dụng khi họ cần Với các dịch vụ đám mây mang lại, các tổ chức sẽ không phải mua và duy trì phần cứng mạng (router, switch, máy chủ …) cũng như lo lắng đến việc nâng cấp, sự tương thích của các phần mềm ứng dụng Vì tất cả những điều đó đã có nhà cung cấp dịch vụ làm thay họ Khách hàng tải dữ liệu của họ lưu trữ vào đám mây, nên không còn phải lo về việc dữ liệu bị mất khi thiết bị lưu trữ gặp sự cố

Cùng với đó, người sử dụng dịch vụ đám mây có thể truy cập dữ liệu tại bất cứ nơi đâu, bất kỳ thời điểm nào thông qua các thiết bị khác nhau có kết nối Internet

2.2.2 Mô Hình Dịch Vụ Đám Mây

Mô hình kiến trúc chung thường được các công ty dịch vụ đám mây cung cấp cho khách hàng sử dụng là mô hình SPI SPI nhằm phân phối các dịch vụ: phần mềm, nền tảng và cơ sở hạ tầng vào trong đám mây [4]

Hình 2 11: Mô hình dịch vụ đám mây [5]

Dịch vụ phần mềm (Software as a Service - SaaS) : Khách hàng sẽ mua những ứng dụng mình cần trên đám mây từ nhà cung cấp dịch vụ Nhà cung cấp quản lý và điều khiển cơ sở hạ tầng của đám mây bên dưới ứng dụng đó, bao gồm: hệ điều hành, máy chủ, lưu trữ, và mạng Các khách hàng sử dụng chỉ việc quản lý danh tính đăng nhập và cấu hình ứng dụng theo mục đích riêng của mình Dịch vụ ứng dụng được tích hợp hầu hết các dịch vụ bảo mật, đảm bảo tính riêng tư của người dùng

Dịch vụ nền tảng (Platform as a Service – PaaS) : Nhà cung cấp dịch vụ hỗ trợ một môi trường đám mây cơ sở (cung cấp các ngôn ngữ lập trình và các công cụ hỗ trợ)

Người sử dụng từ đó sẽ xây dựng và triển khai những ứng dụng của họ dựa trên đám mây nền tảng mà họ đã thuê Nhà cung cấp chỉ điều khiển đám mây cơ sở hạ tầng phía dưới đám mây nền tảng Vì PaaS nằm lớp dưới trong mô hình SPI nên nó có tính mở rộng hơn SaaS Vì vậy, mặc dù có biện pháp bảo mật bổ trợ từ nhà cung cấp nhưng các tính năng an toàn cho người sử dụng sẽ ít được đảm bảo và phức tạp hơn SaaS

 Dịch Vụ Cơ Sở Hạ Tầng

Dịch vụ cơ sở hạ tầng (Infrastructure as a Service – IaaS): Với mô hình dịch vụ này, khách hàng sẽ thuê những tài nguyên máy tính cơ bản như: sức mạnh xử lý, không gian lưu trữ, và phân đoạn mạng… nhằm xây dựng một hệ thống mạng ảo hoàn chỉnh trong các đám mây Từ đó, họ có thể kiểm soát các hệ điều hành và ứng dụng mà họ triển khai trên những nguồn tài nguyên điện toán mà họ đã thuê IaaS có khả năng mở rộng lớn nhất trong mô hình SPI Nên nhà cung cấp dịch vụ chỉ có thể hỗ trợ những mức an ninh cơ bản Còn việc bảo đảm an toàn cho hệ điều hành, ứng dụng và nội dung là hoàn toàn do người sử dụng

2.2.3 Thuộc Tính Của Điện Toán Đám Mây

Trong môi trường điện toán đám mây, tất cả những thứ được chia sẻ như: tài nguyên, thông tin và chương trình ứng dụng được phân bố rộng khắp trên các máy tính cá nhân và hệ thống có nhu cầu Theo Viện Tiêu chuẩn Quốc gia và Công nghệ (The National Institute of Standards and Technology-NIST) định nghĩa về điện toán đám mây, thì nó có năm thuộc tính chính: tự phục vụ theo nhu cầu, truy suất diện rộng, dùng chung tài nguyên, khả năng co giãn nhanh, điều tiết dịch vụ [4]

 Tự Phục Vụ Theo Nhu Cầu ( On-demand self-service )

Khách hàng có thể tự cung cấp khả năng điện toán như là: tăng giảm thời gian sử dụng server và dung lượng lưu trữ … mà không cần phải trực tiếp yêu cầu nhà cung cấp dịch vụ, tức là mọi nhu cầu khách hàng đều được xử lý trên Internet

 Truy Suất Diện Rộng ( Broad network access )

Cloud Computing Service là tập hợp các dịch vụ công nghệ thông tin (CNTT) được cung cấp thông qua môi trường internet Khách hàng luôn có thể lựa chọn dịch vụ tốt nhất theo nhu cầu của mình, dùng bao nhiêu trả phí bấy nhiêu Chỉ cần có máy vi tính hay thiết bị nhỏ gọn cấu hình thấp hơn như máy tính bảng, điện thoại, là người sử dụng có thể truy suất sử dụng dịch vụ dễ dàng thông qua mạng Internet

 Dùng Chung Tài Nguyên ( Resource pooling )

Nhà cung cấp dịch vụ cho phép khách hàng dùng chung tài nguyên do họ cung cấp dựa trên mô hình đa thuê bao (multi-tenant), tài nguyên được tự động chỉ định và bố trí theo nhu cầu của người dùng

 Khả Năng Co Giãn Nhanh ( Rapid elasticity )

Là khả năng tự động mở rộng hoặc thu nhỏ hệ thống theo nhu cầu người dùng (hệ thống sẽ tự mở rộng hoặc thu hẹp bằng cách thêm hoặc giảm bớt tài nguyên) Khả năng co giãn nhanh và linh hoạt giúp cho nhà cung cấp dịch vụ đám mây tận dụng tài nguyên rảnh rỗi của khách hàng này phục vụ cho khách hàng khác đang có nhu cầu

Người dùng thì được giảm chi phí vì họ chỉ phải trả tiền cho những tài nguyên thực sử dụng

 Điều Tiết Dịch Vụ ( Measured Service )

Hệ thống điện toán đám mây tận dụng khả năng đo đạc của nó để tự động kiểm soát và tối ưu hóa việc sử dụng tài nguyên Việc đó thích hợp cho các loại hình dịch vụ như lưu trữ, băng thông, và nhận biết tài khoản đang hoạt động Sử dụng tài nguyên có thể được theo dõi, kiểm soát, và được báo cáo, cung cấp minh bạch cho cả nhà cung cấp và khách hàng sử dụng dịch vụ đó

2.2.4 Các Mô Hình Triển Khai Điện Toán Đám Mây

 Đá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 cho 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ý Cung cấp dịch vụ cho các user nội bộ trong công ty

 Đám Mây Công Cộng (Public cloud) Được sở hữu bởi một tổ chức và hỗ trợ dịch vụ chung cho mọi người

 Đám Mây Chung (Community cloud) Đám mây chung là đám mây được chia sẻ bởi một cộng đồng cụ thể và hỗ trợ cho một cộng đồng cụ thể khác, có mối quan tâm chung

CƠ SỞ LÝ THUYẾT 26

CloudSim

Chúng ta cần mô phỏng điện toán đám mây ở môi trường gần với thực tế để có thể kiểm tra, điều chỉnh tắc nghẽn hệ thống trước khi triển khai các dịch vụ trên những đám mây thực CloudSim là một bộ công cụ mô phỏng đám mây được phát triển bởi phòng Lab của trường đại học Melbourne Về cơ bản CloudSim là một thư viện cho việc mô phỏng các kịch bản điện toán đám mây Nó có một số tính năng như hỗ trợ cho mô hình hoá và mô phỏng cơ sở hạ tầng điện toán đám mây quy mô lớn với nhiều trung tâm dữ liệu CloudSim cung cấp các lớp cơ bản cho việc mô tả các trung tâm dữ liệu, máy ảo, ứng dụng, người dùng, tài nguyên tính toán và các chính sách [14]

3.1.1 Sự Thành Lập Liên Bang Đám Mây

Các nhà cung cấp điện toán đám mây hiện nay có những trung tâm dữ liệu tại các vị trí địa lý khác nhau qua Internet nhằm tối ưu sự phục vụ nhu cầu khách hàng trên toàn thế giới Tuy nhiên, các hệ thống đang tồn tại không hỗ trợ các cơ chế và chính sách cho việc tự động phối hợp chia nhỏ tải giữa các trung tâm dữ liệu khác nhau để xác định vị trí tối ưu cho việc lưu trữ và chia sẻ trực tuyến (hosting) các dịch vụ ứng dụng nhằm đạt được những mức QoS hợp lý Hơn nữa, các nhà cung cấp dịch vụ đám mây không thể dự đoán sự phân bố theo địa lý của những người sử dụng các dịch vụ của họ Vì vậy, sự phối hợp tải phải diễn ra tự động và sự phân bố các dịch vụ phải thay đổi theo sự thay đổi hành vi tải Hình dưới đây mô tả kiến trúc điện toán đám mây bao gồm sự môi giới của người sử dụng dịch vụ và sự điều phối của các nhà cung cấp dịch vụ nhằm hỗ trợ điều khiển mạng lưới các đám mây: cung cấp ứng dụng, phân bổ tài nguyên, chuyển đổi khối lượng công việc

27 Hình 3 1: Mạng lưới liên kết các đám mây qua trung gian Cloud Exchange [14]

Thành phần điều phối đám mây được khởi tạo bởi mỗi trung tâm dữ liệu, nó có 3 nhiệm vụ sau: (i) xuất các dịch vụ đám mây kể cả ở lớp cơ sở hạ tầng và lớp nền tảng đến với liên bang; (ii) theo dõi tải trên trung tâm dữ liệu và tiến hành đàm phán với những nhà cung cấp đám mây khác về việc tự động chia tỉ lệ tải của các dịch vụ qua nhiều trung tâm dữ liệu để đáp ứng nhu cầu lúc cao điểm; (iii) theo dõi sự thực thi của các ứng dụng và giám sát các thoả thuận SLA (service level agreement) đã được thông qua

Thành phần môi giới đám mây thay mặt cho người dùng xác định các nhà cung cấp đám mây phù hợp thông qua Cloud Exchange và thương lượng với các nhà điều phối đám mây về việc phân bổ các tài nguyên phù hợp với yêu cầu QoS cần thiết của các ứng dụng Cloud Exchange (CEx) hoạt động như là một người tạo thị trường để mang các nhà cung cấp dịch vụ và khách hàng đến giao dịch với nhau Nó tập hợp các đòi hỏi cơ sở hạ tầng từ những môi giới đám mây và đánh giá chúng đối với sự cung cấp hiện tại có sẵn được đưa ra bởi các điều phối đám mây

Các ứng dụng có thể hưởng lợi từ hệ thống liên kết điện toán đám mây bao gồm các mạng xã hội như Facebook, Twitter Các trang web mạng xã hội cung cấp nội dung

28 động cho hàng triệu người dùng, với sự truy cập và tương tác của họ khó có thể dự đoán Nói chung các trang mạng xã hội được xây dựng bằng cách sử dụng các ứng dụng web đa tầng như WebSphere và các lớp bền bỉ như hệ quản trị cơ sở dữ liệu tự do nguồn mở phổ biến nhất thế giới MySQL Thông thường, mỗi thành phần sẽ chạy trên một máy ảo khác nhau, mà mỗi máy ảo đó lại thuộc sở hữu của những nhà cung cấp đám mây khác nhau Ngoài ra, mỗi người phát triển plug-in lại được tự do chọn nhà dịch vụ đám mây nào cung cấp các dịch vụ phù hợp để chạy plug-in của họ Kết quả là, một ứng dụng web mạng xã hội được hình thành bởi hàng trăm dịch vụ khác nhau, được quản trị bởi hàng tá trung tâm dữ liệu đám mây khắp thế giới Bất cứ khi nào có sự khác biệt địa điểm về thời gian và không gian của khối lượng công việc, mỗi thành phần ứng dụng phải tự động điều chỉnh lại để cung cấp chất lượng tốt cho trải nghiệm của người dùng

Là lớp thấp nhất mô phỏng các trường hợp rời rạc, thực thi các chức năng cốt lõi cần thiết để mô phỏng ở lớp trên như xử lý hàng đợi, xử lý các tình huống, khởi tạo các thành phần hệ thống (các dịch vụ, máy chủ, trung tâm dữ liệu, môi giới, máy ảo), liên hệ giữa các thành phần và quản lý việc đo thời gian mô phỏng Tuy nhiên trong phiên bản hiện tại thì lớp SimJava đã được lược bỏ nhằm cho phép các thao tác nâng cao mà không được hỗ trợ bởi nó

Cung cấp hỗ trợ cho việc mô hình hoá và mô phỏng môi trường đám mây dựa trên trung tâm dữ liệu như: giao diện quản lý máy ảo, bộ nhớ, lưu trữ và băng thông

Những vấn đề cơ bản được thực hiện bởi lớp CloudSim như là phân bổ hosts để tạo các máy ảo, quản lý việc thực thi ứng dụng và tự động giám sát trạng thái của hệ thống Một nhà cung cấp dịch vụ đám mây nếu muốn xem xét hiệu quả của các chính sách khác nhau trong việc phân bổ các host của nó để tạo máy ảo (VM provisioning), thì họ cần phải thực hiện tại lớp này Như một host có thể được phân bổ cho một

29 nhóm máy ảo cùng thực thi các ứng dụng trên SaaS theo mức độ QoS của nhà cung cấp

Lớp CloudSim quản lý việc khởi tạo và thực thi các thành phần chính (các máy ảo, các máy chủ, các trung tâm dữ liệu, ứng dụng) trong suốt gian đoạn mô phỏng Lớp này có khả năng quản lý một đám mây cơ sở hạ tầng với quy mô lớn bao gồm hàng ngàn các thành phần hệ thống khác nhau Các vấn đề cơ bản như cung cấp các máy chủ để tạo các máy ảo dựa trên yêu cầu của người dùng, quản lý thực thi các ứng dụng và tự động giám sát các hoạt động đều được xử lý bởi lớp này

Hình 3 2: Kiến trúc theo tầng của CloudSim [14]

Lớp trên cùng của kiến trúc CloudSim, nó cho biết những thành phần cơ bản của các host (số lượng máy, đặc điểm kỹ thuật), của ứng dụng (số nhiệm vụ và các yêu cầu), các máy ảo, số lượng khách hàng và loại ứng dụng họ dùng, và những chính sách xếp lịch các môi giới Bằng cách mở rộng các thành phần cơ bản được cho ở lớp này, người phát triển ứng dụng đám mây có thể thực hiện các việc như: (i) tạo ra sự pha trộn của các yêu cầu phân bố tải, các cấu hình ứng dụng; (ii) mô hình hoá các tình huống sẵn có và tiến hành các kiểm tra dựa trên các cấu hình tuỳ chỉnh; (iii) thực hiện những kỹ thuật cung cấp ứng dụng tuỳ biến cho các đám mây và liên bang của chúng

3.1.2 Các Thành Phần Trong CloudSim

Lớp này điều khiển các chính sách về băng thông cho các máy ảo được triển khai trong một máy chủ Chức năng của thành phần này là thực hiện phân bổ băng thông mạng hợp lý cho các máy ảo đã được triển khai khắp trung tâm dữ liệu Các nhà nghiên cứu và phát triển đám mây có thể mở rộng lớp này cho các chính sách của họ (ưu tiên, QoS) để phản ánh nhu cầu khác nhau của các ứng dụng

SimpleBWProvisioner cho phép một máy ảo có thể dự trữ băng thông theo yêu cầu, tuy nhiên vẫn sẽ bị hạn chế bởi tổng băng thông có sẵn của host

Lớp này cung cấp sự kết hợp khả năng xử lý tới một trung tâm dữ liệu Nó chịu trách nhiệm không chỉ liên kết với các Cloud Brokers và điểm dịch vụ CloudCoordinator khác, mà còn theo dõi trạng thái nội bộ của một trung tâm dữ liệu; thứ đóng vai trò chính trong quyết định cân bằng tải cho ứng dụng Việc giám sát này diễn ra định kỳ trong thời gian mô phỏng Các tác động cụ thể được thực hiện bởi người dùng trong CloudSim sẽ được nhận biết bởi thành phần cảm biến (Sensor) Mỗi cảm biến có thể mô hình hoá một thủ tục kích hoạt cụ thể, nếu vượt ngưỡng xử lý cho phép thì CloudCoordinator sẽ tự động thực hiện việc băm nhỏ tải

31 Hình 3 3: Thiết kế các lớp của CloudSim [14]

 Cloudlet Đám mây nhỏ đại diện cho các dịch vụ ứng dụng trên đám mây (phân phối nội dung, mạng xã hội, công việc), được mô hình hoá trong CloudSim bằng các yêu cầu về tính toán: ID (người dùng và của đám mây nhỏ), chiều dài Cloudlet (MI: millions of instructions), kích thước file (Byte: trước và sau khi xử lý trả về), số lượng nhân xử lý, RAM, bộ nhớ, băng thông yêu cầu, thời gian thực thi …

Xác Định Giả Mạo IP Nguồn

Giả mạo IP nguồn được dùng trong tấn công DDoS để che đậy nguồn khởi xướng tấn công lũ và vị trí nơi giao thông mạng bị nghẽn Đồng thời nó cũng đánh lừa các máy chủ trở thành nguồn phản xạ, gửi lại và khuyếch đại các kết nối gây ngập lụt băng thông mạng

Mặc dù kẻ tấn công có thể giả mạo bất kỳ trường nào của IP header, nhưng họ không thể giả được số bước nhảy mà gói tin phải đi qua để đến đích Thông tin số bước nhảy này có thể được phỏng đoán từ giá trị Time to Live (TTL) trong IP header

43 Với việc sử dụng bảng ánh xạ giữa địa chỉ IP và số bước nhảy đến một máy chủ, mà máy chủ có thể nhận biết được gói tin đến từ một IP giả mạo hay không

Kẻ tấn công thường giả mạo địa chỉ IP bằng cách cho ngẫu nhiên 32 bits địa chỉ nguồn trong IP header

Một vài kiểu tấn công DDoS được biết đến như là : smurf và gần đây là DRDoS sẽ không thể làm được nếu không giả mạo IP nguồn Kẻ tấn công sửa địa chỉ IP nguồn của mỗi gói tin gửi đi thành địa chỉ IP của nạn nhân

Với mỗi gói tin vào, hệ thống sẽ ghi nhận giá trị TTL và tính toán số bước nhảy mà gói tin đã đi qua Kẻ tấn công có thể giả packet header, nhưng không thể điều khiển thay đổi số bước nhảy của gói tin đến Bằng cách so sánh giá trị số bước nhảy với bảng IP to hop count (IP2HC) Nếu không khớp với nhau, thì gói tin đó là giả mạo nên hệ thống sẽ huỷ gói tin ngay lập tức [15]

3.2.1 Kiểm Tra Số Bước Nhảy

Thông tin số bước nhảy không được lưu trữ trực tiếp trong IP header, Người ta phải tính toán nó dựa trên trường TTL TTL là trường 8 bits trong IP header Nó dùng để xác định thời gian sống tối đa của một gói tin trong mạng Internet Trong quá trình di chuyển từ nguồn đến đích, qua mỗi router trung gian thì giá trị TTL sẽ bị trừ đi 1

Giá trị TTL cuối cùng khi gói tin đến đích là giá trị TTL ban đầu trừ đi số bước nhảy mà gói tin đã đi qua

Khó khăn trong việc tính số bước nhảy là gói tin đến đích chỉ chứa giá trị TTL cuối cùng Sẽ đơn giản nếu tất cả các hệ điều hành đều sử dụng giá trị TTL ban đầu như nhau Nhưng trong thực tế không có sự thống nhất về giá trị TTL ban đầu Hơn nữa kể từ khi các hệ điều hành cho phép địa chỉ IP có thể thay đổi bất cứ lúc nào, ta không thể giả định một giá trị TTL ban đầu tĩnh duy nhất cho mỗi địa chỉ IP Nhưng may mắn là các hệ điều hành hiện nay chỉ sử dụng một vài giá trị TTL ban đầu phổ biến là: 30, 32, 60, 64, 128, 255 Mặt khác, hai máy nguồn và đích bất kỳ trên thế giới không cách nhau quá 30 bước nhảy Do đó, ta có thể xác định giá trị TTL ban đầu

44 của một gói tin bằng cách chọn giá trị nhỏ nhất trong tập hợp {30, 32, 60, 64, 128,

255} mà lớn hơn so với giá trị TTL của gói tin nhận được Để giải quyết sự không rõ ràng trong các cặp TTL ban đầu {30, 32}, {60, 64}, {32, 60}, ta sẽ tính số hops cho cả hai giá trị TTL ban đầu khả thi và chấp nhận gói nếu một trong hai trường hợp có số hops trùng khớp với bảng ánh xạ IP2HC

 Thuật toán: Đầu tiên ta trích giá trị TTL và source IP của gói tin nhận được Ta suy ra được giá trị TTL ban đầu và trừ nó cho giá trị TTL của gói tin vừa nhận để tìm ra số bước nhảy đã đi qua Source IP của gói tin đến sẽ được trỏ vào bảng ánh xạ IP2HC để tìm số bước nhảy tương ứng Nếu số bước nhảy tính toán bằng số bước nhảy lưu trữ trong bảng thì gói tin được chứng thực là hợp lệ và cho qua Ngược lại, gói tin đó sẽ bị xem là giả mạo và bị huỷ không tiếp tục xử lý

Input: Packet Header Attributes Output: drop spoofed packets Begin

Extract the final TTL T f and the source IP address S i ; Retrieve the initial TTL T i ;

Compute the hop count H c = T i - T f ; Index S i to get the stored hop count H s ; If ( H c  H s )

The packet is spoofed so drop it ; Else

The packet is legal so forward it ; End If

3.2.2 Xây Dựng Bảng IP To Hop Count (IP2HC)

Bảng 3 1: Ví dụ một bảng IP2HC

24bits first IP address Hop Count

 Phân nhóm theo 24 bits đầu tiên của địa chỉ nguồn

Xây dựng một bảng IP2HC đầy đủ sẽ quyết định đến độ chính xác của việc lọc gói tin với source IP giả mạo Bằng cách nhóm các địa chỉ prefix dựa trên số bước nhảy

Ta có thể xây dựng chính xác bảng ánh xạ IP2HC và tối đa hiệu quả của HCF mà không phải lưu trữ số bước nhảy cho mỗi địa chỉ IP

Một máy chủ không chắc sẽ nhận những yêu cầu chính đáng từ tất cả các địa chỉ IP đã cấp trong mạng Internet Ngoài ra trong mạng Internet hiện nay, không gian của địa chỉ IP vẫn chưa dùng hết Bằng cách tập hợp địa chỉ IP, ta có thể giảm đáng kể dung lượng yêu cầu cho bảng ánh xạ IP2HC Phương pháp tập hợp phổ biến là ta phân các nhóm theo 24 bits đầu tiên của địa chỉ IP

Tuy nhiên các nhóm mạng có network prefix dài hơn 24 bits, có thể nằm ở các mạng vật lý khác nhau mặc dù có 24 bits địa chỉ IP đầu tiên như nhau Nên các nhóm mạng này không nhất thiết cùng vị trí và số bước nhảy giống nhau Để có được một bảng IP2HC chính xác, chúng ta có thể phải lấy tập hợp nhiều hơn 24 bits Do đó, thay vì chỉ đơn giản là tập hợp 24 bit địa chỉ prefix, ta có thể phải lọc nghiêm ngặt cả 32bits Để biết liệu việc chia nhóm cả 32 bits này có hiệu quả hơn so với việc chỉ nhóm theo 24 bit đầu tiên của địa chỉ nguồn hay không, người ta so sánh độ lọc chính xác của bảng IP2HC trong hai trường hợp nêu trên

Sự chính xác của bảng IP2HC sẽ được căn cứ theo hai giá trị:

 Tỉ lệ % false positives: gói tin từ địa chỉ IP của khách hàng hợp lệ bị xác định thành gói tin giả mạo

 Tỉ lệ % false negatives: gói tin giả mạo không bị phát hiện bởi HCF

Cả hai giá trị trên nên được giảm thiểu đến mức nhỏ nhất để bảng IP2HC trở nên hiệu quả Đối với mỗi máy chủ, trong thời gian mạng ổn định, họ xây dựng một bảng IP2HC bằng cách chia thành các nhóm có 24 bits địa chỉ IP đầu tiên giống nhau Trong mỗi nhóm thì họ chọn ra số bước nhảy nhỏ nhất trong tất cả địa chỉ IP như là bước nhảy của nhóm Sau khi bảng được xây dựng, mỗi gói tin đến sẽ trích xuất 24 bits đầu tiên của địa chỉ IP nguồn, và số bước nhảy thực tế của địa chỉ IP này được so sánh với một lưu trữ trong bảng tổng hợp IP2HC

46 Việc nhóm 24 bit địa chỉ prefix chưa chắc bảo đảm đếm đúng số bước nhảy cho tất cả địa chỉ IP, nên phải kiểm tra hiệu suất của 3 loại bộ lọc:

 Strict filtering: loại bỏ tất cả các gói mà số bước nhảy của nó không trùng với bảng IP2HC

 +1 filtering: loại bỏ nếu gói có số bước nhảy lớn hơn 1 khi so với bảng IP2HC

 +2 filtering: loại bỏ nếu gói có số bước nhảy lớn hơn 2 khi so với bảng IP2HC

Hình 3 8: Đồ thị so sánh hiệu quả của 3 loại bộ lọc [15]

Xác Định Thời Điểm Bị Tấn Công

Tấn công DDoS thông qua lỗ hổng giao thức bắt tay ba bước TCP-SYN có thể gây mất khả năng phục vụ của máy chủ cho khách hàng muốn truy cập, đặc biệt khi kẻ tấn công sử dụng một số lượng rất lớn các máy đã bị kiểm soát (zombies) cùng lúc tấn công nạn nhân Do đó, cần phải xác định tấn công lũ trong giao thông mạng một cách chính xác, nhằm đối phó bảo vệ máy chủ nhanh nhất có thể Ta sử dụng phương pháp xác định sự bất thường để giải quyết vấn đề này

Phương pháp này dựa trên việc dành một thời gian ngắn ban đầu để xây dựng hồ sơ thống kê với trạng thái mạng ổn định Khi đi vào hoạt động, nếu có cuộc tấn công lũ sẽ làm thay đổi một vài thông số thống kê mô tả sự biến đổi trong giao thông mạng

Nhờ vậy, ta có thể biết được thời điểm bắt đầu và kết thúc cuộc tấn công

Với sự phân bố tự nhiên trong những cuộc tấn công DDoS và tác động của nó đến hiệu suất của các router, thì cơ chế phát hiện và phản ứng phải được đặt trong mạng lõi (Backbone) hoặc gần các nguồn tấn công Tuy nhiên, việc phân tích dữ liệu lưu lượng khổng lồ trong mạng lõi là vô cùng phức tạp Việc phân tích và theo dõi từng dòng lưu lượng trong mạng lõi đòi hỏi sự tốn kém tài nguyên để tính toán, mà ta không thể cùng lúc đáp ứng tất cả được Mặt khác, một cuộc tấn công lũ có thể dễ dàng lẩn trốn trong một dòng dữ liệu rất lớn ở mạng lõi Như một cuộc tấn công lũ với cường độ 10 6 gói tin/giây thường ít bị chú ý khi tổng số gói tin trong mạng lõi lớn hơn 10 9 gói tin/giây Hơn nữa, các phương pháp sử dụng một mức ngưỡng tĩnh cho việc xác định lưu lượng bất thường sẽ không phù hợp với sự biến đổi liên tục trong mạng thực tế, và có thể gây ra các báo động nhầm hay bỏ lỡ việc phát hiện các cuộc tấn công Để giải quyết các vấn đề đã nêu ở trên, trong phương pháp này ta chia dòng dữ liệu vô cùng lớn thành các nhóm có cùng đặc điểm chung để phân tích Ở đây, ta không

50 cần quan tâm dòng lưu lượng có bao nhiêu luồng, mà ta chỉ cần để ý phân loại chúng theo địa chỉ IP đích (DIP) Ta sử dụng phân kỳ Jensen-Shannon (JSD) để tính độ sai lệch ở dữ liệu hiện tại so với quá khứ Xây dựng các ngưỡng động báo hiệu tấn công lũ hiện tại dựa trên dữ liệu thu được trước đó Để tránh sự đụng độ và báo động nhầm, ta dùng cấu trúc Sketch để nhóm các dòng trong luồng dữ liệu Mặt khác, nó cũng giúp ta thu gọn dữ liệu lưu lượng trong một bộ nhớ cố định, cung cấp khả năng phân tích dữ liệu đưa vào trong một khoảng thời gian

Cấu trúc Sketch là một tập hợp các bảng băm cùng họ với nhau Địa chỉ của mỗi ô trong Sketch tương ứng với giá trị địa chỉ IP đích qua hàm băm tương ứng Mỗi ô trong Sketch sẽ chứa các thông số cần phân tích đã thu được qua bộ đếm Có nhiều loại bộ đếm được sử dụng để xác định các thay đổi khác nhau trong mạng, như số lượng: SYN, gói tin, bytes… Ví dụ, số lượng SYN/DIP có thể dùng cho việc xác định tấn công lũ SYN, vì các cuộc tấn công từ chối dịch vụ luôn hướng về những nạn nhân cụ thể

Thông qua việc sử dụng cấu trúc Sketch, phân kỳ Jensen-Shannon, cửa sổ trượt và ngưỡng động cho việc phát hiện sự không bình thường trong lưu lượng mạng, thì phương pháp này có thể điều chỉnh để xác định bất cứ loại tấn công lũ nào (UDP, ICMP, SYN…) Vì sự hạn chế về thời gian, trong luận văn này người viết chỉ trình bày phương pháp này cho việc xác định tấn công lũ SYN Tuy nhiên, cách làm tương tự có thể áp dụng để xác định tấn công lũ qua UDP và ICMP bằng cách thêm vào 2 bộ đếm trong mỗi ô của Sketch

Trong tấn công lũ SYN, sự phân bố một số lượng lớn gói TCP-SYN đến địa chỉ IP cụ thể sẽ tạo ra độ lệch với sự phân bố đã học được trong điều kiện ổn định Tuy nhiên với khó khăn trong việc tìm ra một xác suất phân bố phù hợp với các đặc tính lưu lượng mạng, thì ta sẽ sử dụng phân kỳ JSD để xác định độ lệch (trong phân bố xác suất gói tin đến địa chỉ đích) giữa các khoảng thời gian khác nhau từ kết quả xác suất thu trong các ô cấu trúc Sketch

Sử dụng cửa sổ trượt trong giai đoạn học ban đầu giúp nhận biết các thay đổi khác nhau giữa hai khoảng thời gian trong lúc mạng ổn định, giúp tăng hiệu quả của phương pháp bằng cách giảm sự báo động nhầm [16]

3.3.2 Khái Niệm Các Thành Phần Được Sử Dụng

Sketch là một tâp hợp các bảng tương ứng với mỗi hàm băm trong một họ hàm băm, có tác dụng nhóm một lượng lớn dữ liệu ngẫu nhiên vào trong một bộ nhớ nhỏ cố định Một Sketch có hai chiều HxK ô (cell): với K là kích thước của bảng băm, H là số bảng băm độc lập nhau

Cho S= S1, S2,… , Sn biểu thị cho luồng đầu vào, với mỗi phần tử Si đại diện cho một gói tin gửi đến Si = (ki,vi) được xác định bởi khoá ki (thuộc một tập hợp lớn cố định U), vi là giá trị liên kết với mỗi khoá Trong phương pháp này, ta sử dụng ki = DIP (địa chỉ IP đích của gói tin gửi đến) và vi =1 nếu cờ SYN được bật, vi=0 với các loại gói tin khác Mục đích của ta là đếm số gói SYN phải nhận ở điểm đích Mỗi bảng băm sẽ tương ứng với một hàm băm riêng Khoá ki qua H hàm băm sẽ có H giá trị khác nhau, các giá trị đó cũng là vị trí ô của Si trong H bảng băm tương ứng Các ô P(n,m): với n tương ứng với bảng băm thứ n (1  n  H), m là giá trị băm (m = hn(ki)) của khoá ki qua hàm băm hn Trong các ô đó sẽ có bộ đếm để cộng giá trị vi

Mục tiêu của bảng băm là để giảm thiểu sự va chạm khi chia nhóm các luồng dữ liệu Ở đây ta chọn hàm băm phổ quát ( 2-Universal): h(x) = ((ax+b)mod(p)) mod(m) (3.1)

 a, b: là các số nguyên ngẫu nhiên với 0Threshold(i,t)+0.0007 && JSD(i,t)>0.02 attack(i,t)=1; end else if JSD(i,t)>Threshold(i,t)+0.0007 attack(i,t)=0; while JSD(i,t)>Threshold(i,t) JSD(i,t)=JSD(i,t)/2; end else attack(i,t)=1;

JSD(i,t)=JSD(i,tem)*0.96; end end end if sum(attack(:,t))>=4 L_attack(t)=1; tem=t; end if (L_attack(t)==1)&&(mod(sum(L_attack(1:t-1)),2)==0) M(:,t)=M(:,t-1);

% cuoi khoang thoi gian t, ta tao blacklist attack_flood2=attack_flood(:,[1 3]); %[soureIP desIP] attack_flood2=sort_row_matrix(attack_flood2); n=size(attack_flood,1); nn=size(tem_blacklist,1); blacklist=[tem_blacklist;zeros(n,2)];

Count1=0; dem=1; while demi blacklist(dem+nn,:)=attack_flood2(dem,:); end end dem = dem + Count1 +1;

99 dem=1; n=size(blacklist,1); while dem69)&&(flag_bl==0) for j=1:(i-1) if attack_flood2(i,:)==attack_flood2(j,:);

Count1=Count1+1; end end if Count1=i blacklist(i+nn,:)=attack_flood2(i,:);

100 bam1_ki=mod(mod((52*attack_flood1(i,1)+17),79999),4096); bam2_ki=mod(mod((519*attack_flood1(i,1)+61),79999),4096); bam3_ki=mod(mod((126*attack_flood1(i,1)+86),79999),4096); bam4_ki=mod(mod((17*attack_flood1(i,1)+11),79999),4096); bam5_ki=mod(mod((86*attack_flood1(i,1)+148),79999),4096); aangbam1_HCF(bam1_ki+1,2:21); bngbam2_HCF(bam2_ki+1,2:23); cngbam3_HCF(bam3_ki+1,2:21); dngbam4_HCF(bam4_ki+1,2:22); engbam5_HCF(bam5_ki+1,2:22); if sum(attack_flood1(i,2)=)==1 if sum(attack_flood1(i,2)==b)==1 if sum(attack_flood1(i,2)==c)==1 if sum(attack_flood1(i,2)==d)==1 if sum(attack_flood1(i,2)==e)==1 F11; end end end end end end end end i=1; n=size(blacklist,1); while i

Ngày đăng: 09/09/2024, 04:30

Nguồn tham khảo

Tài liệu tham khảo Loại Chi tiết
[1] B.Prabadevi, N.Jeyanthi, “Distributed Denial of service Attacks and its effects on Cloud Environment- a Servey”, IEEE,2014 Sách, tạp chí
Tiêu đề: Distributed Denial of service Attacks and its effects on Cloud Environment- a Servey
[2] Gary C. Kessler “Defenses Against Distributed Denial of Service Attacks,” 4 th edition of the Computer Security Handbook, November 2000 Sách, tạp chí
Tiêu đề: Defenses Against Distributed Denial of Service Attacks
[3] Vinko Zlomislic, Kresimir Fertalj, Vlado Sruk, “Denial of Service Attacks: An Overview”, IEEE,2014 Sách, tạp chí
Tiêu đề: Denial of Service Attacks: An Overview
[4] Rajni Goel, Moses Garuba, Anteneh Girma, “Cloud Computing Vulnerability: DDoS as its main Security Threat, and Analysis of IDS as a Solution Model”, IEEE, 2014 Sách, tạp chí
Tiêu đề: Cloud Computing Vulnerability: DDoS as its main Security Threat, and Analysis of IDS as a Solution Model
[5] Marwan Darwish, Abdelkader Ouda, Luiz Fernando Capretz, “Cloud-based DDoS Attacks and Defenses”,IEEE,2013 Sách, tạp chí
Tiêu đề: Cloud-based DDoS Attacks and Defenses
[6] Naresh Kumar, Shalini Sharma, “Study of Intrusion Detection System for DDoS Attacks in Cloud Computing”,IEEE,2013 Sách, tạp chí
Tiêu đề: Study of Intrusion Detection System for DDoS Attacks in Cloud Computing
[7] Qi Chen, Wenmin Lin, Wanchun Dou, Shui Yu, “CBF: A Packet Filtering Method for DDoS Attack Defense in Cloud Environment”, IEEE, 2011 Sách, tạp chí
Tiêu đề: CBF: A Packet Filtering Method for DDoS Attack Defense in Cloud Environment
[8] Lanjuan Yang ,Tao Zhang,Jinyu Song, Jinshuang Wang, Ping Chen, “Defense of DDoS Attack for Cloud Computing”, IEEE, 2012 Sách, tạp chí
Tiêu đề: Defense of DDoS Attack for Cloud Computing
[9] Chopade, Pandey, Bhade, “Securing Cloud Servers against Flooding Based DDoS Attacks”, IEEE, 2013 Sách, tạp chí
Tiêu đề: Securing Cloud Servers against Flooding Based DDoS Attacks
[10] Mercushalinie, Madhupriya, Vairamani, Velayutham, “Defense against DoS Attack: PSO Approach in Virtualization”, IEEE, 2014 Sách, tạp chí
Tiêu đề: Defense against DoS Attack: PSO Approach in Virtualization
[11] Porya Shamsolmoali, Masoumeh Zareapoor, “Statistical-based filtering system against DDoS Attacks in Cloud Computing”, IEEE, 2014 Sách, tạp chí
Tiêu đề: Statistical-based filtering system against DDoS Attacks in Cloud Computing
[12] Anteneh Girma, Moses Garuba, Jiang Li, Chunmei Liu, “ Analysis of DDoS Attacks and an Introduction of a Hybrid Statistical Model to Detect DDoS Attacks on Cloud Computing Enviroment”, IEEE, 2015 Sách, tạp chí
Tiêu đề: Analysis of DDoS Attacks and an Introduction of a Hybrid Statistical Model to Detect DDoS Attacks on Cloud Computing Enviroment
[13] Mr S.Kathik, J.J.Shah, “Analysis of Simulation of DDoS Attack in Cloud”, IEEE, 2014 Sách, tạp chí
Tiêu đề: Analysis of Simulation of DDoS Attack in Cloud
[15] Cheng Jin, Haining Wang, Kang G. Shin, “Hop-Count Filtering: An Effective Defense Against Spoofed Traffic”, IEEE, Volume 15 Issue: 1, Feb 2007, Pages 40-53 Sách, tạp chí
Tiêu đề: Hop-Count Filtering: An Effective Defense Against Spoofed Traffic
[16] Osman Salem, Farid Nait-Abdesselam, Ahmed Mehaoua, “Anomaly Detection in Network Traffic using Jensen-Shannon Divergence”, IEEE ICC, 2012 Sách, tạp chí
Tiêu đề: Anomaly Detection in Network Traffic using Jensen-Shannon Divergence

HÌNH ẢNH LIÊN QUAN

Hình 2. 1: Tấn công DDoS - Luận văn thạc sĩ Kỹ thuật viễn thông: Phòng chống tấn công DDOS trong môi trường điện toán đám mây
Hình 2. 1: Tấn công DDoS (Trang 20)
Hình 2. 2: Phân Loại Các Kiểu Tấn Công DDoS [1] - Luận văn thạc sĩ Kỹ thuật viễn thông: Phòng chống tấn công DDOS trong môi trường điện toán đám mây
Hình 2. 2: Phân Loại Các Kiểu Tấn Công DDoS [1] (Trang 23)
Hình 2. 7: Một trang web truy cập bình thường - Luận văn thạc sĩ Kỹ thuật viễn thông: Phòng chống tấn công DDOS trong môi trường điện toán đám mây
Hình 2. 7: Một trang web truy cập bình thường (Trang 28)
Hình 2. 17: Vị trí đặt SBTA và Cloud filter trong mạng đám mây [8] - Luận văn thạc sĩ Kỹ thuật viễn thông: Phòng chống tấn công DDOS trong môi trường điện toán đám mây
Hình 2. 17: Vị trí đặt SBTA và Cloud filter trong mạng đám mây [8] (Trang 37)
Hình 2. 16: Gói tin qua SBTA trước khi vào Web Server [8] - Luận văn thạc sĩ Kỹ thuật viễn thông: Phòng chống tấn công DDOS trong môi trường điện toán đám mây
Hình 2. 16: Gói tin qua SBTA trước khi vào Web Server [8] (Trang 37)
Hình 2. 18: Thuật toán PSO [10] - Luận văn thạc sĩ Kỹ thuật viễn thông: Phòng chống tấn công DDOS trong môi trường điện toán đám mây
Hình 2. 18: Thuật toán PSO [10] (Trang 38)
Hình 2. 19: Mô hình C 2 DF [11] - Luận văn thạc sĩ Kỹ thuật viễn thông: Phòng chống tấn công DDOS trong môi trường điện toán đám mây
Hình 2. 19: Mô hình C 2 DF [11] (Trang 39)
Hình 3. 2: Kiến trúc theo tầng của CloudSim [14] - Luận văn thạc sĩ Kỹ thuật viễn thông: Phòng chống tấn công DDOS trong môi trường điện toán đám mây
Hình 3. 2: Kiến trúc theo tầng của CloudSim [14] (Trang 44)
Hình 3. 4: Thư viện CloudSim: (a) các lớp chính và (b) các thuộc tính [14] - Luận văn thạc sĩ Kỹ thuật viễn thông: Phòng chống tấn công DDOS trong môi trường điện toán đám mây
Hình 3. 4: Thư viện CloudSim: (a) các lớp chính và (b) các thuộc tính [14] (Trang 49)
Hình 3. 5: Sự mô phỏng dòng dữ liệu liên lạc [14] - Luận văn thạc sĩ Kỹ thuật viễn thông: Phòng chống tấn công DDOS trong môi trường điện toán đám mây
Hình 3. 5: Sự mô phỏng dòng dữ liệu liên lạc [14] (Trang 52)
Hình 3. 6: Cách các thực thể CloudSim làm việc - Luận văn thạc sĩ Kỹ thuật viễn thông: Phòng chống tấn công DDOS trong môi trường điện toán đám mây
Hình 3. 6: Cách các thực thể CloudSim làm việc (Trang 53)
Bảng IP2HC. - Luận văn thạc sĩ Kỹ thuật viễn thông: Phòng chống tấn công DDOS trong môi trường điện toán đám mây
ng IP2HC (Trang 61)
Hình 3. 9: Cấu trúc Sketch [16] - Luận văn thạc sĩ Kỹ thuật viễn thông: Phòng chống tấn công DDOS trong môi trường điện toán đám mây
Hình 3. 9: Cấu trúc Sketch [16] (Trang 66)
Hình 4. 5: Broker yêu cầu tạo máy ảo đến Datacenter - Luận văn thạc sĩ Kỹ thuật viễn thông: Phòng chống tấn công DDOS trong môi trường điện toán đám mây
Hình 4. 5: Broker yêu cầu tạo máy ảo đến Datacenter (Trang 78)
Hình 4. 7: Datacenter trả về danh sách máy ảo đã tạo cho Broker - Luận văn thạc sĩ Kỹ thuật viễn thông: Phòng chống tấn công DDOS trong môi trường điện toán đám mây
Hình 4. 7: Datacenter trả về danh sách máy ảo đã tạo cho Broker (Trang 80)
Hình 4. 9: Datacenter xử lý xong, trả kết quả về cho Broker - Luận văn thạc sĩ Kỹ thuật viễn thông: Phòng chống tấn công DDOS trong môi trường điện toán đám mây
Hình 4. 9: Datacenter xử lý xong, trả kết quả về cho Broker (Trang 81)
Hình 4. 12: Kết quả mô phỏng TimeShared và SpaceShared  Bảng 4. 1: Các cloudlet đã thực thi trong mỗi máy ảo - Luận văn thạc sĩ Kỹ thuật viễn thông: Phòng chống tấn công DDOS trong môi trường điện toán đám mây
Hình 4. 12: Kết quả mô phỏng TimeShared và SpaceShared Bảng 4. 1: Các cloudlet đã thực thi trong mỗi máy ảo (Trang 82)
Từ  các  cặp  IP-HC  đó  ta  tạo  5  bảng  băm,  với  các  hàm  băm  tương  ứng  cùng  họ  Universal-2 là: - Luận văn thạc sĩ Kỹ thuật viễn thông: Phòng chống tấn công DDOS trong môi trường điện toán đám mây
c ác cặp IP-HC đó ta tạo 5 bảng băm, với các hàm băm tương ứng cùng họ Universal-2 là: (Trang 84)
Bảng 4. 2: Tỉ lệ phát hiện với 30 ngàn spoof IP (60 ngàn IP tạo bảng) - Luận văn thạc sĩ Kỹ thuật viễn thông: Phòng chống tấn công DDOS trong môi trường điện toán đám mây
Bảng 4. 2: Tỉ lệ phát hiện với 30 ngàn spoof IP (60 ngàn IP tạo bảng) (Trang 85)
Hình 4. 15: Sơ đồ khối phát hiện tấn công lũ theo nghiên cứu trước đây - Luận văn thạc sĩ Kỹ thuật viễn thông: Phòng chống tấn công DDOS trong môi trường điện toán đám mây
Hình 4. 15: Sơ đồ khối phát hiện tấn công lũ theo nghiên cứu trước đây (Trang 90)
Hình 4. 16: Giải thuật xử lý phát hiện thời điểm bị tấn công - Luận văn thạc sĩ Kỹ thuật viễn thông: Phòng chống tấn công DDOS trong môi trường điện toán đám mây
Hình 4. 16: Giải thuật xử lý phát hiện thời điểm bị tấn công (Trang 92)
Hình 4. 17: Giải thuật xử lý khi bị tấn công. - Luận văn thạc sĩ Kỹ thuật viễn thông: Phòng chống tấn công DDOS trong môi trường điện toán đám mây
Hình 4. 17: Giải thuật xử lý khi bị tấn công (Trang 93)
Hình 4. 19: JSD và ngưỡng động trước khi bị tấn công - Luận văn thạc sĩ Kỹ thuật viễn thông: Phòng chống tấn công DDOS trong môi trường điện toán đám mây
Hình 4. 19: JSD và ngưỡng động trước khi bị tấn công (Trang 94)
Hình 4. 21: Số gói tin tấn công khi không có bộ lọc - Luận văn thạc sĩ Kỹ thuật viễn thông: Phòng chống tấn công DDOS trong môi trường điện toán đám mây
Hình 4. 21: Số gói tin tấn công khi không có bộ lọc (Trang 95)
Hình 4. 24: Tỉ lệ % giữa số gói tin lọc được với tổng số gói tin tấn công. - Luận văn thạc sĩ Kỹ thuật viễn thông: Phòng chống tấn công DDOS trong môi trường điện toán đám mây
Hình 4. 24: Tỉ lệ % giữa số gói tin lọc được với tổng số gói tin tấn công (Trang 97)
Hình 1: Báo chính xác không bị tấn công - Luận văn thạc sĩ Kỹ thuật viễn thông: Phòng chống tấn công DDOS trong môi trường điện toán đám mây
Hình 1 Báo chính xác không bị tấn công (Trang 105)
Hình 5: JSD so với ngưỡng động - Luận văn thạc sĩ Kỹ thuật viễn thông: Phòng chống tấn công DDOS trong môi trường điện toán đám mây
Hình 5 JSD so với ngưỡng động (Trang 106)
Hình 8: Báo chính xác không bị tấn công - Luận văn thạc sĩ Kỹ thuật viễn thông: Phòng chống tấn công DDOS trong môi trường điện toán đám mây
Hình 8 Báo chính xác không bị tấn công (Trang 107)
Hình 13: Báo động nhầm trong khoảng thời gian bị tấn công - Luận văn thạc sĩ Kỹ thuật viễn thông: Phòng chống tấn công DDOS trong môi trường điện toán đám mây
Hình 13 Báo động nhầm trong khoảng thời gian bị tấn công (Trang 108)
Hình 14: Cờ báo động trong mỗi bảng băm của Sketch - Luận văn thạc sĩ Kỹ thuật viễn thông: Phòng chống tấn công DDOS trong môi trường điện toán đám mây
Hình 14 Cờ báo động trong mỗi bảng băm của Sketch (Trang 109)

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN