phần mở đầu, mục lục, kết luận, tài liệu tham khảo luận văn bao gồm ba chƣơng: Chƣơng 1: Cơ sở lý thuyết về an ninh mạng và tấn công DoS/DDoS; Chƣơng 2: Sử dụng kiến trúc mạng OpenFlow/SDN trong phát hiện và giảm thiểu tấn công DDoS dạng TCP SYN Flood; Chƣơng 3: Hệ thống thử nghiệm, kết quả đạt đƣợc và định hƣớng phát triển. Những nội dung trong các chƣơng sẽ đƣợc trình bày chi tiết, cụ thể trong các phần tiếp theo của luận văn. 12 CHƢƠNG 1 - CƠ SỞ LÝ THUYẾT VỀ AN NINH MẠNG VÀ TẤN CÔNG DOS/DDOS 1.1 Cơ sở lý thuyết về an ninh mạng hiện nay Theo Báo cáo an ninh website của CyStack trong quý 3 năm 2018 [2] đã có 129.722 website trên thế giới bị tin tặc tấn công và chiếm quyền điều khiển. Nhƣ vậy, cứ mỗi phút trôi qua lại có 1 website bị tin tặc kiểm soát.
Con số này ở tháng 7 là 43.405 ở tháng 8 và tăng mạnh lên 45.207 vào tháng 9. Vào thời điểm cuối tháng 9/2018, có đến 21,48% website bị tấn công ở tháng 7 vẫn chƣa đƣợc khôi phục nguyên trạng; số liệu ở tháng 8 và tháng 9 lần lƣợt là 33,87% và 44,08%. Cho đến thời điểm tháng 10/2018, trong tổng số 41.405 website bị tấn công vào tháng 8/2018, vẫn còn tới 12.102 website chƣa đƣợc khắc phục. Điều này cho thấy rất nhiều chủ sở hữu đã không thực sự quan tâm đến bảo mật cho website của mình, không biết mình đã bị tấn công hoặc không biết cách xử lý sự cố.
Trong các dạng tấn công DDoS, hiện nay các tội phạm mạng tiếp tục xu hƣớng tìm kiếm các lỗ hổng an toàn thông tin mới trên các giao thức truyền tải, trong thời gian tới sẽ có thêm nhiều các phƣơng pháp tấn công tinh vi khác giúp phát triển tấn công DDoS. Vị trí hàng đầu về số lƣợng các cuộc tấn công DDoS trong quý 2 năm 2018 [23] thuộc về Trung Quốc chiếm tới 59,03% trong tổng số các cuộc tấn công, Hồng Kông (17,13%) ở vị trí thứ 2, đồng thời cũng nằm trong top 3 có số lƣợng mục tiêu tấn công riêng biệt nhiều nhất với 12,88%, chỉ sau Trung Quốc (52,36%) và Mỹ (17,75%). Một số trƣờng hợp đáng chú ý trong quý 2 năm 2018 là một botnet đã đƣợc hình thành từ 50.000 camera giám sát ở Nhật Bản. Công ty đƣờng sắt của Đan Mạch cũng đã bị tấn công DDoS và phải mất vài ngày khắc phục mới có thể phục vụ trở lại.
Các cuộc tấn công này đƣợc cho rằng có động cơ chính trị. Tình hình an ninh mạng tại Việt Nam; Việt Nam lọt vào top 20 quốc gia có số lƣợng website bị tấn công lớn nhất thế giới trong quý 3 năm 2018, theo Báo cáo an ninh website quý 3 năm 2018 bởi CyStack [2]. Ở vị trí thứ 19, Việt Nam có 1.183 13 website bị tấn công, trong đó website doanh nghiệp là đối tƣợng của đại đa số các tin tặc. Cụ thể: 71,51% số cuộc tấn công nhằm vào các website doanh nghiệp, theo sau bởi website thƣơng mại điện tử với 13,86%.
Trong bảng xếp hạng các quốc gia có lƣợng tấn công DDoS lớn nhất trên thế giới của quý 2 năm 2018 [23] do Kaspersky Lab thống kê thì Việt Nam đang đứng ở vị trí thứ 9. Qua đó cho thấy Việt Nam đang chịu rất nhiều cuộc tấn công và gây ảnh hƣởng rất nhiều tới hoạt động của các công ty và làm thiệt hại rất lớn về kinh tế. 1 Bảng xếp hạng các quốc gia có lƣợng tấn công DDoS lớn nhất trên thế giới của quý 2 năm 2018 do Kaspersky Lab thống kê 14 1.2 Cơ sở lý thuyết về tấn công DDoS Trong phần này, tôi tìm hiểu lý thuyết tấn công DoS/DDoS và tập trung vào dạng tấn công TCP SYN Flood từ đó thấy đƣợc mối nguy hại nặng nề mà dạng tấn công này gây ra.1 Tổng quan Tấn công từ chối dịch vụ (Denial of Service - DoS) là dạng tấn công nhằm ngăn chặn ngƣời dùng hợp pháp truy nhập tài nguyên mạng. DoS có thể làm ngƣng hoạt động của một máy tính, một máy chủ, một mạng nội bộ thậm chí cả một hệ thống mạng rất lớn.
Về bản chất thực sự của DoS, kẻ tấn công sẽ chiếm dụng một lƣợng lớn tài nguyên mạng nhƣ băng thông, bộ nhớ, cơ sở dữ liệu. và làm mất khả năng xử lý các yêu cầu dịch vụ từ các máy khách hàng khác. Tấn công từ chối dịch vụ phân tán (Distributed Denial of Service - DDoS) là dạng phát triển ở mức độ cao của tấn công DoS với phạm vi tấn công rất lớn, đƣợc phát sinh cùng một lúc từ rất nhiều máy tính nằm rải rác trên mạng Internet. Kể từ cuộc tấn công DDoS đầu tiên đƣợc xác nhận vào năm 1999 [5], nhiều cuộc tấn công DDoS gây ngập lụt đã đƣợc thực hiện vào hệ thống mạng của các công ty và các tổ chức.
Hầu hết các cuộc tấn công DDoS gây ngập lụt cho đến hiện nay đều tập trung vào làm ngắt quãng hoặc ngừng dịch vụ chạy trên hệ thống nạn nhân. Hậu quả là làm giảm doanh thu, tăng chi phí phòng chống và phục hồi dịch vụ. Ví dụ, vào tháng 12 năm 2010, một nhóm tin tặc có tên là “Anonymous” đã đạo diễn một loạt các cuộc tấn công DDoS gây ngừng hoạt động các trang web của các tổ chức tài chính nhƣ Mastercard, Visa International, Paypal và PostFinance. Tháng 9 năm 2012, một đợt tấn công DDoS rất lớn do nhóm tin tặc “Izz ad-Din al-Qassam Cyber Fighters” thực hiện gây ngắt quãng hoặc ngừng hoạt động các trang web ngân hàng trực tuyến của 9 ngân hàng lớn của Mỹ [20].
Các dạng tấn công DDoS đƣợc thực hiện ngày một nhiều với quy mô ngày một lớn và tinh vi hơn nhờ sự phát triển của các kỹ thuật tấn công và sự lan tràn của các công cụ tấn công. Động cơ của tin tặc tấn công DDoS khá đa dạng. Tuy nhi ên, có thể chia các dạng tấn công DDoS dựa trên động cơ của tin tặc thành một số loại chính [20]: 15 - Nhằm giành đƣợc các lợi ích tài chính, kinh tế: Tin tặc tấn công DDoS thuộc loại này thƣờng có kỹ thuật tinh vi và nhiều kinh nghiệm tấn công, chúng luôn là mối đe dọa thƣờng trực đối với các công ty, tập đoàn lớn. Các tấn công DDoS nhằm giành các lợi ích tài chính là những tấn công nguy hiểm và khó phòng chống nhất.
- Để trả thù: Tin tặc tấn công DDoS thuộc loại này thƣờng là những cá nhân bất mãn và họ thực hiện tấn công để trả đũa những sự việc mà họ cho là bất công. - Gây chiến tranh trên không gian mạng: Tin tặc tấn công DDoS thuộc loại này thƣờng thuộc về các tổ chức quân sự hoặc khủng bố của một nƣớc thực hiện tấn công vào các hệ thống trọng yếu của một nƣớc khác vì mục đích chính trị. Các đích tấn công thƣờng gặp là các hệ thống mạng của các cơ quan chính phủ, các tổ chức tài chính ngân hàng, hệ thống cung cấp điện nƣớc và các nhà cung cấp dịch vụ viễn thông. Tin tặc loại này thƣờng đƣợc đào tạo tốt và đƣợc sử dụng nguồn lực mạnh phục vụ tấn công trong thời gian dài.
Hậu quả của dạng tấn công này thƣờng rất lớn, gây ngƣng trệ nhiều dịch vụ và có thể gây thiệt hại lớn về kinh tế cho một quốc gia.2 Phân loại Hình 1. 2 Phân loại tấn công DDoS Nhìn chung, có nhiều phƣơng pháp phân loại tấn công DDoS, tuy nhiên nếu nhìn vào mục đích tấn công, có thể chia tấn công DDoS thành hai loại: (1) Tấn công 16 vào băng thông kết nối là loại tấn công dùng những cách thức khác nhau chiếm hết tài nguyên băng thông mạng gây tắc nghẽn cho ngƣời dùng hợp pháp; (2) Tấn công vào tài nguyên lƣu trữ, xử lý (RAM, CPU) của hệ thống là loại tấn công làm quá tải các tài nguyên của hệ thống, thƣờng gặp nhất là tràn bộ đệm, đầy ổ đĩa hoặc chiếm hết khả năng xử lý của máy chủ [6]. Trong phạm vi luận văn này tôi tập trung tìm hiểu và nghiên cứu dạng tấn công TCP SYN Flood. Các kẻ tấn công gửi hàng loạt các gói tin TCP có cờ SYN yêu cầu kết nối tới máy chủ.
Máy chủ sau đó gửi lại gói tin TCP có cờ SYN-ACK chấp nhận kết nối và đồng thời trên máy chủ cần dành một lƣợng tài nguyên (RAM, CPU) để phục vụ cho kết nối này. Tuy nhiên, các máy gửi gói tin SYN sẽ không gửi lại gói tin ACK, dẫn đến máy chủ phải mất một khoảng thời gian dành bộ nhớ sau đó mới thực hiện xóa kết nối này đi. Nhƣ vậy khi có nhiều kết nối giả mạo đến cùng lúc thì máy chủ phải cần rất nhiều tài nguyên để phục vụ và khi lƣợng tài nguyên này cạn kiệt thì máy chủ không còn khả năng đáp ứng lại - kết nối không đƣợc thực hiện [6]. Quá trình tấn công đƣợc thực hiện lợi dụng kẽ hở thiết lập kết nối truyền dẫn TCP, đó là quá trình bắt tay ba bƣớc nhƣ sau: Host A Host B Time In the Network Send SYN seq = x Receive SYN Send SYN seq = y, ACK x+1 Receive SYN + ACK Send ACK y +1 Receive ACK Hình 1.
3 Quá trình bắt tay ba bƣớc 17 - Bƣớc 1: Các máy Client (máy khách) sẽ gửi gói tin (packet có SYN = 1) tới máy chủ để yêu cầu kết nối với số thứ tự seq = x; - Bƣớc 2: Server (máy chủ) đáp ứng bằng cách gửi một thông báo nhận (SYN - ACK) với số thứ tự của SYN seq = y và số nhận ACK seq = x + 1. Server sẽ giành một phần tài nguyên hệ thống bộ nhớ đệm để nhận và truyền dữ liệu. Bƣớc 3: Client hoàn tất việc bắt tay ba bƣớc bằng cách gửi gói tin thông báo nhận (ACK) với số nhận y + 1. Các máy khách gửi gói tin có chứa cờ SYN yêu cầu kết nối.
Máy chủ nhận đƣợc gói tin, gửi gói tin thông báo SYN-ACK và chuyển sang trạng thái báo nhận SYN-RECEIVED. Sau đó, máy chủ chờ đợi để nhận gói tin TCP tiếp theo với trƣờng cờ ACK đƣợc bật. Khi đó, kết nối ở chế độ HOC (kết nối dở dang). Kết thúc quá trình bắt tay ba bƣớc, trên máy chủ chuyển sang trại thái thiết lập ESTABLISHED.
TCP SYN Flood là một dạng tấn công DDoS. Ở đây, kẻ tấn công gửi hàng loạt các yêu cầu SYN để ăn cắp tài nguyên máy chủ hay chính là lấp đầy trạng thái ở chế độ HOC nhiều nhất có thể [27]. Địa chỉ IP gửi yêu cầu có thể là địa chỉ IP giả.