2. GIẢI PHÁP OVERHEARING PHỊNG CHỐNG TẤN CƠNG TỪ CHỐ
2.1.3. Các giải pháp chống tấn cơng DoS vào mạng WSN
Khơng giống các tội phạm mạng khác, mục đích của tấn cơng DoS rất đơn giản là làm gián đoạn dịch vụ mạng. Mục tiêu này khơng địi hỏi nguyên lý tấn cơng phức tạp nên hiện nay gần như khơng cĩ biện pháp ngăn chặn hồn tồn các cuộc tấn cơng DoS. Vì thế, hướng nghiên cứu hiện nay chủ yếu là giảm thiểu thiệt hại gây ra của các cuộc tấn cơng DoS. Sau đây là các giải pháp cơ bản:
- Phát hiện sớm tấn cơng: Bằng việc theo dõi hoạt động của mạng, người ta cĩ thể phát hiện ra những dấu hiệu của cuộc tấn cơng DoS thơng qua sự thay đổi biến đổi bất thường trong quá trình truyền tin, gửi nhận của các nút mạng. Từ đĩ, người ta cĩ thể đề xuất biện pháp khác nhằm hạn chế thiệt hại hoặc ngăn chặn.
37
- Dự phịng máy chủ: Đây là một biện pháp nhằm tránh gián đoạn dịch vụ trong thời gian cuộc tấn cơng diễn ra. Sẽ luơn luơn cĩ một hoặc một vài máy chủ dự phịng được cách ly khi hệ thống thơng tin đang hoạt động bình thường nhằm tránh bị phát hiện. Khi tấn cơng DoS làm ngưng trệ khả năng cung cấp dịch vụ của hệ thống thơng tin, các máy chủ bị tấn cơng sẽ lại được cách ly trong khi các máy chủ dự phịng được kết nối với hệ thống đang ngưng trệ để duy trì hoạt động của mạng. Sau khi cuộc tấn cơng kết thúc, các máy chủ dự phịng sẽ lại được cách ly để tránh bị kẻ xấu theo dõi, cịn các máy chủ bị tấn cơng sau khi đã được khắc phục sự cố sẽ được kết nối để tiếp tục phục vụ.
- Cách ly nút khả nghi: Đây là biện pháp thực sự nhằm ngăn chặn một cuộc tấn cơng DoS. Khi phát hiện ra một nút cảm biến cĩ hành động khả nghi, hệ thống, bằng cách nào đĩ, sẽ yêu cầu các nút cảm biến từ chối xử lý các gĩi tin cĩ địa chỉ nguồn là nút cảm biến đĩ và từ chối gửi các gĩi tin đến nút đĩ. Việc làm này nhằm hai mục đích, giảm cơng sức xử lý các gĩi tin rác – nguyên nhân khiến cho hệ thống bị quá tải và tránh để nút khả nghi trinh sát dựa trên nhưng thơng tin gửi tới nĩ. Tuy vậy, một giải thuật phát hiện nút khả nghi cũng địi hỏi chính xác hoặc cĩ tỉ lệ sai số thấp nhất cĩ thể để tránh cách ly những nút bình thường, gây ảnh hưởng đến hoạt động chung của mạng.
- Tăng tính bảo mật thơng tin và xác thực người dùng: Giải pháp này khơng nhằm vào các cuộc tấn cơng DoS cụ thể mà chủ yếu là chiến lược phịng ngừa từ xa. Để cuộc tấn cơng DoS xảy ra, kẻ tấn cơng phải nắm bắt thơng tin về hệ thống mục tiêu, cho nên nếu họ khơng thu được thơng tin gì thì cuộc tấn cơng khơng thể xảy ra. Ngồi ra, nếu việc xác thực và phân quyền người dùng tốt, kẻ tấn cơng cũng khơng thể đột nhập hay trà trộn vào trong WSN để thực hiện tấn cơng. Giải pháp này tập trung xây dựng các cơ chế mã hĩa dữ liệu và xác thực người dùng bằng các hệ khĩa. Một trong những dạng tấn cơng đơn giản nhất của tấn cơng DoS là tấn cơng UDP Flood bằng Botnet trong mạng WSN sử dụng giao thức RPL.
a. Tấn cơng UDP Flood bằng Botnet trên giao thức RPL Kiến trúc và cơ chế của tấn cơng DoS
Ngày càng cĩ nhiều các cuộc tấn cơng DoS với những phương thức khác nhau, do đĩ, việc phân loại các kiểu tấn cơng này là cần thiết trong việc nhận diện kẻ tấn
38
cơng để đối phĩ. Hiện nay, thường dựa trên hai tiêu chí: Kiến trúc và Cơ chế [41]. Sự khác biệt của các cách phân loại này được thể hiện trong bảng dưới đây.
Bảng 2.1. Sự khác biệt giữa kiến trúc và cơ chế của tấn cơng DOS
Đặc điểm Kiến trúc Cơ chế
Định nghĩa Thành phẩn những kẻ tấn cơng và cách chúng bố trí, quản lý. Phương thức các kẻ tấn cơngthực hiện tấn cơng vào hệ thống máy tính
Đặc tính Trừu tượng Vật chất
Vấn đề
Kẻ tấn cơng gồm thành phần nào?
Chúng bố trí như thế nào, liên lạc ra làm sao?
Kẻ tấn cơng lợi dụng kẽ hở nào để tấn cơng?
Nguyên lý tấn cơng là gì?
Mục đích Tìm phương pháp phát hiện sớm và ngăn chặn Hiểu cơ chế để vá lỗ hổng bảo mật
Phân loại
Tấn cơng DoS và tấn cơng DDoS (tấn cơng từ chối dịch vụ phân tán – Distributed DoS)
Phân loại theo mơ hình OSI/ISO: tấn cơng tầng vật lý, tầng Liên kết dữ liệu, tầng Giao vận và tầng ứng dụng.
Ví dụ
Tấn cơng peer to peer (một - một), tấn cơng Botnet, tấn cơng DRDoS (tấn cơng từ chối dịch vụ phân tán Phản ứng – Reflection Distributed DoS)
Tấn cơng gây nhiễu, tấn cơng ARP, giả mạo IP, UDP Flood, TCP Flood, Tấn cơng ACK, Death of Ping, tấn cơng Blackhole, cài virus hoặc adware.
Tấn cơng DoS được mơ phỏng trong trong thí nghiệm sắp tới theo cơ chế UDP Flood (tầng Giao vận) và kiến trúc Botnet (họ tấn cơng DDoS). Đây đều là cơ chế và kiến trúc tương đối đơn giản, dễ thực hiện nhưng đều gây ra hậu quả vơ cùng nghiêm trọng.
b. Cơ chế tấn cơng UDP Flood
Để định nghĩa tấn cơng UDP Flood, tiến hành phân tích UDP và Flood [42]. UDP là một giao thức truyền tin (cần phân biệt với giao thức định tuyến RIP, OSPF hay RPL) theo nguyên lý chuyển mạch gĩi nằm trên tầng Giao vận. Đặc điểm quan trọng của giao thức này là cho phép các bên khơng cần kết nối và đồng bộ mà vẫn cĩ thể truyền tin cho nhau. Ngồi ra, giao thức UDP cho phép mất mát thơng tin để cĩ được tốc độ truyền thơng nhanh và lưu lượng lớn. Chính vì thế, giao thức này thường được dùng trong mạng cảm biến khơng dây với số lượng cảm biến lớn (địi hỏi tốc độ cao) và các nút cảm biến cĩ thể kiểm tra chéo lẫn nhau nên mất mát thơng tin
39
khơng thành vấn đề. Tuy nhiên, cũng như giao thức định tuyến RPL, để cĩ được tốc độ truyền tin cao, người ta cũng loại bỏ rất nhiều nhiều xác thực so với giao thức cĩ độ tin cậy cao như TCP để nâng cao tốc độ truyền tin. Điều này khiến cho giao thức này trở nên dễ bị tổn hại trước các cuộc tấn cơng mạng, đặc biệt là tấn cơng DoS.
Tấn cơng DoS, Flood đơn giản là một lượng lớn các gĩi tin hoặc bất ngờ xâm nhập hệ thống mạng, gây thiệt hại cho cơ sở hạ tầng mạng máy tính như tắc nghẽn băng thơng, làm quá tải việc xử lý dữ liệu của máy chủ, làm phiền người dùng. Việc gửi quá nhiều thư và quảng cáo rác cũng được xem như là cuộc tấn cơng Flood, mặc dù người ta cĩ thuật ngữ riêng cho nĩ là Spam.
Như vậy cuộc tấn cơng UDP Flood là gửi rất nhiều gĩi tin rác chiếm dụng bộ xử lý, bộ nhớ và đường truyền của cơ sở hạ tầng mạng máy tính sử dụng giao thức UDP. Đây là một cuộc tấn cơng khá đơn giản nhưng cĩ thể gây ra những hậu quả nghiêm trọng, đặc biệt với hệ thống cảm biến khơng dây cĩ năng lượng và khả năng lưu trữ, xử lý giới hạn và giao thức định tuyến RPL là giao thức cĩ độ bảo mật kém hơn các giao thức định tuyến truyền thống khác như đã trình bày trong phần trước.
c. Kiến trúc tấn cơng Botnet
Botnet là mạng lưới các Bot, là các đoạn mã lập trình cĩ khả năng chạy các tác vụ tự động hĩa trên khơng gian mạng. Những kẻ tấn cơng DoS rất hiểu tiềm năng của các Bot trong việc tự động hĩa các tác vụ sản xuất hàng loạt các gĩi tin và bơm chúng vào trong hạ tầng mạng gây thiệt hại cho hệ thống đĩ.
Botnet là kiểu tấn cơng thuộc họ tấn cơng từ chối dịch vụ phân tán (DDOS) một hình thức tấn cơng DoS với nhiều thành phần tham gia. Trước đây, kẻ tấn cơng DoS (gọi là Botmaster) thường tự xây dựng các Bot để chúng tự thâm nhập và trở thành một nút Client trong mạng Internet. Tuy nhiên, việc xây dựng các Bot rất tốn kém và các Bot lạ rất dễ dàng bị phát hiện bởi các chức năng kiểm đếm của nút Coordinator. Chính vì thế, một hình thức cài Bot tinh vi hơn được sử dụng là cài một đoạn mã độc vào trong một nút Client và chiếm một phần quyền của nút Client đĩ, biến chúng thành Bot theo đúng nghĩa đen, tức là nút Client đĩ sử dụng tài nguyên của chính mình để sản xuất gĩi tin rác. Phương pháp này tỏ ra hiệu quả hơn vì các đoạn mã độc rất khĩ bị phát hiện và các Bot là các nút Client hợp pháp trong mạng
40
nên khơng bị loại bỏ. Hơn nữa, việc tận dụng tài nguyên của các nút Client sẽ làm tiêu tốn hơn nữa tài nguyên hạ tầng mạng và giúp tiết kiệm cho kẻ tấn cơng.
Cho dù với giao thức RPL hay giao thức định tuyến truyền thống, việc xây dựng Botnet vẫn tuân thủ các bước như sau (được trình bày cho giao thức RPL):
Bước 1: Botmaster thám thính. Với giao thức RPL cĩ đường định tuyến gần như khơng đổi trong suốt quá trình hoạt động. Kết quả thám thính cĩ thể được sử dụng cho rất nhiều đợt tấn cơng DoS.
Bước 2: Botmaster sẽ gài mã độc vào một nút mà nĩ cho là phù hợp (gây hậu quả đủ lớn nhưng khơng dễ bị phát hiện) và biến nĩ thành Bot. Thường thì nếu càng gần nút gốc thì Bot càng dễ bị phát hiện nhưng hiệu năng tấn cơng sẽ càng lớn và ngược lại. Hắn cĩ thể đĩng vai là người sử dụng hệ thống cảm biến, gửi các mệnh lệnh, yêu cầu cĩ đính kèm mã độc cho mạng cảm biến khơng dây. Các gĩi dữ liệu nguy hiểm này sẽ đi từ qua nút Coordinator nhưng nút này khơng nhận ra vì gĩi tin là của người dùng hợp pháp và mã độc lúc này vơ hại. Tiếp theo, mã độc sẽ truyền theo cây DAG đến các nút mục tiêu. Tại đây mã độc sẽ kích hoạt việc yêu cầu các nút Client đĩ sản xuất tự động các gĩi tin và giữ liên lạc với kẻ tấn cơng. Một mạng lưới được Bot được hình thành trong chính mạng cảm biến khơng dây mà khơng ai hay biết cho đến khi cuộc tấn cơng bắt đầu.
Bước 3: Phát động tấn cơng DoS: Botmaster yêu cầu các Bot gửi một lượng lớn các gĩi tin mã nút đĩ sản xuất để gây tiêu tốn băng thơng hoặc hủy hoại khả năng xử lý hoặc trao đổi dữ liệu của hạ tầng IoT.
Bước 4: Sau khi cuộc tấn cơng kết thúc, mã độc lại trở thành vơ hại để tránh sự truy lùng của các cơ chế bảo mật. Bot sẽ lại trở thành các nút Client vơ hại và chờ đến đợt tấn cơng tiếp theo.
Cuộc tấn cơng Botnet được thực hiện bài bản, tinh vi thì dù cơ chế tấn cơng cĩ đơn giản cũng khĩ cĩ thể bị phát hiện và gây hậu quả đặc biệt nghiêm trọng. Phần tiếp theo tiến hành mơ phỏng với Contiki-OS, so sánh kết quả và đưa ra kết luận.