Công trình này nghiên cứu và phân tích các lỗ hổng an ninh mạng trong mạng SDN, qua đó đề xuất giải pháp phát hiện và phòng chống các cuộc tấn công từ chối dịch vụ phân tán (Distributed Denial of Services – DDoS) nhắm vào lớp điều khiến của hệ thống SDN/NetFPGA-10G OpenFlow Switch.
Trang 1Giải thưởng Sinh viên nghiên cứu khoa học Euréka lần 20 năm 2018 Kỷ yếu khoa học
NGHIÊN CỨU TÍCH HỢP TÍNH NĂNG BẢO MẬT CHO BỘ CHUYỂN
MẠCH OPENFLOW TRÊN NỀN TẢNG NETFPGA-10G
Lê Tấn Long*, Lưu Chí Bảo
Trường Đại học Bách Khoa – Đại học Quốc gia TP Hồ Chí Minh
*Tác giả liên lạc: 51302134@hcmut.edu.vn
TÓM TẮT
Software-Defined Networking (SDN) là phương pháp tiếp cận mới trong thiết kế, xây dựng, cấu hình và quản lý hệ thống mạng máy tính Trong SDN, thành phần điều khiển mạng (control plane) được tách bạch khỏi các khối phần cứng (data plane) để trở thành một nền tảng quản lý tập trung, có khả năng điều khiển các luồng mạng trực tiếp dựa trên phần mềm SDN là kiến trúc mang lại sự linh động, tính đáp ứng cao, dễ dàng quản lý và hiệu quả về chi phí, tuy nhiên, những thách thức về bảo mật và an ninh mạng vẫn đang là trở ngại khiến kiến trúc này chưa thể được triển khai phổ biến vào thực tế Công trình này nghiên cứu và phân tích các lỗ hổng an ninh mạng trong mạng SDN, qua đó đề xuất giải pháp phát hiện
và phòng chống các cuộc tấn công từ chối dịch vụ phân tán (Distributed Denial
of Services – DDoS) nhắm vào lớp điều khiến của hệ thống SDN/NetFPGA-10G OpenFlow Switch Giải pháp bao gồm một khối bảo mật được hiện thực trên bộ điều khiển SDN giúp phát hiện và phòng chống tấn công an ninh mạng và một ứng dụng mạng quản lý khối bảo mật giúp người dùng giám sát ra quyết định khi
có tấn công xảy ra Giải pháp được hiện thực trên bộ điều khiển OpenDayLight
và đánh giá trên môi trường mạng tốc độ cao Kết quả thực nghiệm cho thấy, giải pháp giúp phát hiện tấn công một cách nhanh chóng (khoảng 40 mili giây) với
độ chính xác cao (khoảng 95%), đồng thời giúp ngăn chặn tấn công một cách hiệu quả, ổn định khả năng hoạt động của bộ điều khiển SDN khi tài nguyên CPU được phục hồi từ 90% trong điều kiện bị tấn công xuống còn xấp xỉ 20%
Từ khóa: An ninh mạng, DDoS, NetFPGA-10G, OpenDayLight
A SECURITY SOLUTION FOR SDN OPENFLOW SWITCH IMPLEMENTED ON THE NETFPGA-10G PLATFORM
Le Tan Long*, Luu Chi Bao
University of Technology – VNU Ho Chi Minh City
*Corresponding Author: 51302134@hcmut.edu.vn
ABSTRACT
Software-Defined Networking (SDN) is seen as a novel networking approach for facilitating and simplifying network control and management In SDN networks, the control plane is decoupled from the data-plane devices and logically centralized in a software-based controller SDN provides the fexibility, automation and cost-efficiency, however, this architecture brings many security challenges In this study, we make a survey on security threats in SDN and propose an solution to detect and mitigate Controller-aimed Distributed Denial
of Service (DDoS) attcks Our methodology consists of two components including
a controller network service for detecting and mitigating attacks and a network application for monitoring the SDN system We implement the proposal on
Trang 2Giải thưởng Sinh viên nghiên cứu khoa học Euréka lần 20 năm 2018 Kỷ yếu khoa học
OpenDayLight controller and evaluate using a high-speed test-bed network The results show that our solution has the ability to detect attacks early (avg 40 miliseconds) with the accuracy of detection process is around 95% Moreover, the solution also helps mitigate attacks effectively, stabling the operability of SDN controller when reducing the CPU Utilization from high (approx 90%) to low (approx 20%)
Keywords: DDoS, NetFPGA-10G, Network Security, OpenDayLight
ĐẶT VẤN ĐỀ
Các hệ thống mạng máy tính hiện nay
liên tục phân cấp và mở rộng quy mô
để đáp ứng sự bùng nổ nhu cầu sử dụng
Internet, điều này khiến cho kiến trúc
mạng máy tính ngày càng trở nên phức
tạp, cấu hình mạng tốn nhiều thời gian,
dễ bị lỗi, gây tổn hao chi phí, khó khăn
trong việc triển khai, vận hành và quản
lý Bên cạnh đó, kiến trúc mạng truyền
thống cũng còn cho thấy nhiều mặt hạn
chế khác như việc sử dụng các thiết bị
mạng được tạo ra và đóng gói theo các
tiêu chuẩn, công nghệ khác nhau từ
nhiều nhà sản xuất gây khó khăn trong
việc nghiên cứu, thử nghiệm các chuẩn
mạng mới cũng như các giao thức mới,
hay để những thiết bị mạng có thể hoạt
động đúng với chức năng thì cần phải
có những thiết lập, cấu hình cụ thể, gây
khó khăn trong việc tái cấu hình
Nhằm khắc phục những khó khăn gặp
phải trong kiến trúc mạng truyền
thống, đồng thời ứng dụng những công
nghệ mạng tiên tiến định hướng tương
lai, Software-Defined Networking
(SDN) được đề xuất như một kiến trúc
mạng mới, xuất phát từ ý tưởng “mạng
có khả năng lập trình” Với cơ chế tách
bạch chức năng điều khiển và chuyển
tiếp của mạng thành hai phần riêng
biệt, SDN cho phép quản lý mạng một
cách tập trung thông qua bộ điều khiển
bằng phần mềm (Controller) Ngoài ra,
cơ chế này còn cung cấp khả năng lập
trình trực tiếp, trừu tượng hóa cơ sở hạ
tầng bên dưới để phục vụ cho các ứng
dụng và dịch vụ mạng ở các lớp trên,
hay nói cách khác SDN cung cấp khả
năng ảo hóa và tự động hóa ở mức mạng SDN được đánh giá là mô hình linh động, triển khai nhanh chóng, quản lý tập trung, dễ thích nghi và hiệu quả về chi phí Tuy nhiên, việc áp dụng SDN vào thực tế vẫn đang là một bài tóa n khó giải đối với các tổ chức, doanh nghiệp khi kiến trúc này mặc dù lý tưởng nhưng vẫn còn sơ khai, tồn tại nhiều vấn đề cấp thiết cần được các đội ngũ khoa học nghiên cứu, giải quyết Một trong những thách thức không nhỏ
mà SDN đang phải đối mặt, đó là các
về vấn đề về bảo mật an ninh mạng Trong SDN, bộ não của mạng được tập trung hóa trên các Controller, khi đó các thiết bị mạng sẽ trở thành những thiết bị chuyển tiếp gói tin đơn thuần
và có thể được lập trình thông qua các lớp giao tiếp mở Quá trình tập trung hóa này mang lại nhiều lợi ích nhưng cũng rất rủi ro khi Controller sẽ trở thành điểm trung tâm của các cuộc tấn công an ninh mạng Với mục đích giúp tăng cường độ an toàn bảo mật cho SDN Controller, công trình này sẽ tập trung tìm hiểu một số vấn đề về bảo mật an ninh mạng, qua đó đề xuất giải pháp để tích hợp tính năng phòng chống tấn công DDoS gây bão hòa hệ thống SDN/OpenFlow Switch hiện thực trên nền tảng NetFPGA-10G Đây
là một hình thức tấn công mới, nhắm vào các hệ thống SDN nhằm gây bão hòa tài nguyên của các bộ điều khiển, thiết bị chuyển mạch cũng như băng thông đường truyền giữa các thành phần mạng Giải pháp bao gồm khả năng phát hiện tấn công dựa trên sự
Trang 3Giải thưởng Sinh viên nghiên cứu khoa học Euréka lần 20 năm 2018 Kỷ yếu khoa học
tính tóa n Entropy thông tin kết hợp tốc
độ gia tăng tỷ lệ thông điệp
PACKET_IN truyền nhận giữa Switch
và Controller và khả năng xử lý làm
giảm nhẹ tấn công dựa trên một số
phương pháp thống kê đặc tính điều
khiển tập trung của SDN
NGUYÊN LIỆU VÀ PHƯƠNG
PHÁP NGHIÊN CỨU
Nguyên liệu
SDN là kiến trúc mạng mới, gồm ba
lớp riêng biệt: lớp chuyển tiếp, lớp điều
khiển, lớp ứng dụng Mỗi lớp thực hiện
một chức năng mạng khác nhau, giao
tiếp với nhau thông qua các chuẩn hoặc
các giao thức riêng biệt OpenFlow,
một trong những hiện thực đầu tiên của
SDN (SDN/OpenFlow), là cơ chế giao
tiếp giữa bộ điều khiển SDN
(OpenFlow Controller) và các thiết bị
chuyển tiếp (OpenFlow Switch) sử
dụng giao thức OpenFlow Trong đó,
OpenFlow Controller là thành phần
đóng vai trò then chốt, bộ não của
mạng SDN Thành phần này chịu trách
nhiệm duy trì tất cả các quy tắc đặt ra
cho mạng và phân phối các chỉ thị thích
hợp cho các thiết bị mạng
Trong công trình này, chúng tôi sử
dụng OpenFlow Switch được hiện thực
trên nền tảng NetFPGA-10G, một nền
tảng lý tưởng cho việc thiết kế hiện
thực các thiết bị mạng có tốc độ và hiệu
suất cao Bên cạnh đó, chúng tôi cũng
tiến hành khảo sát một số SDN
Controller phổ biến để so sánh về chức
năng, hiệu suất, khả năng bảo mật, khả
năng tương thích với NetFPGA-10G
OpenFlow Switch và chọn
OpenDayLight (ODL) Controller để sử
dụng trong nghiên cứu, hiện thực, triển
khai thử nghiệm hệ thống Đây là một
dự án mã nguồn mở được đóng góp từ
rất nhiều cá nhân tổ chức khác nhau,
tạo nên một bộ điều khiển SDN có kiến
trúc tương đối hoàn thiện, được phát
triển và sử dụng rộng rãi không chỉ trong nghiên cứu mà còn trong các sản phẩm thương mại
Phương pháp nghiên cứu
Dựa trên các kiến thức liên quan về SDN và OpenFlow, chúng tôi tiến hành phân tích các nguy cơ bảo mật có khả năng xảy ra trong kiến trúc mạng này và nhận thấy sự tồn tại của rất nhiều lỗ hổng bảo mật, phân bố trên tất
cả các lớp Trong đó những lỗ hổng có nguy cơ bị khai thác để tấn công cao nhất chủ yếu nằm ở kênh giao tiếp giữa các lớp và lớp điều khiển
Trong mạng SDN, các Controller sẽ chịu trách nhiệm theo dõi các kết nối mới, ra quyết định để gói tin lưu thông trong mạng một cách linh hoạt, hiệu quả, chính xác Cụ thể, các gói tin mới lần đầu đi vào mạng sẽ được gửi lên thông qua thông điệp PACKET_IN của giao thức OpenFlow để SDN Controller xử lý Quá trình xử lý này sẽ làm tiêu tốn một lượng nhỏ tài nguyên của Controller nếu mật độ các thông điệp PACKET_IN không quá lớn, hay nói cách khác, Controller hoàn toàn có thể xử lý được đầy đủ các gói tin mới trong trường hợp hoạt động bình thường của mạng Tuy nhiên, trong trường hợp phải xử lý một lượng lớn thông điệp PACKET_IN, tài nguyên Controller tiêu thụ sẽ lớn hơn và có khả năng bị quá tải Lợi dụng đặc điểm này,
kẻ có chủ đích xấu hoàn toàn có thể thực hiện một cuộc tấn công DoS nhằm vào hệ thống bằng cách tạo ra một lượng khổng lồ các gói tin mới để gửi vào mạng Hình thức tấn công này còn được gọi là tấn công DDoS gây bão hòa lớp điều khiển trên mạng SDN Đây là một loại DDoS mới, chỉ xuất hiện trên kiến trúc SDN, do đó, chưa
có giải pháp nào ngăn chặn triệt để Với tính chất quan trọng của Controller cũng như mức độ nguy hiểm cao của dạng tấn công DoS này, chúng tôi cũng
Trang 4Giải thưởng Sinh viên nghiên cứu khoa học Euréka lần 20 năm 2018 Kỷ yếu khoa học
đã tiến hành tìm giải pháp để tích hợp
nhằm nâng cao tính bảo mật cho hệ
thống SDN
Qua khảo sát một số công trình liên
quan trong và ngoài nước, chúng tôi
ghi nhận được một số công trình đã đưa
ra giải pháp phòng chống tấn công
DDoS gây bão hòa trên mạng SDN
Trong nước, nghiên cứu của An Le và
đồng tác giả (2015) xây dựng hệ thống
phát hiện và ngăn chặn xâm nhập mạng
sử dụng với kiến trúc SDN để tăng độ
linh hoạt cho hệ thống Một nhóm
nghiên cứu về khả năng phòng chống
bảo mật của bộ chuyển mạch
OpenFlow hiện thực trên nền tảng
phần cứng khả cấu hình (Bao Ho et al.,
2016) cũng đã đạt được một số thành
quả nhất định khi bộ chuyển mạch
được tích hợp một số kỹ thuật như
Ingress/Egress Filtering (Paul
Ferguson, 2000), Hop-Count Filtering
(Cheng Jin et al., 2003) ,… để tăng khả
năng phòng chống hình thức tấn công
giả mạo địa chỉ Ngoài nước,
FloodGuard (Haopei Wang et al., 2015) có thể sử dụng để chống lại các cuộc tấn công ngập lụt thông thường SDNShield (Kuan-yin Chen et al., 2017) một giải pháp kết hợp để bảo vệ toàn diện hơn chống lại các cuộc tấn công DoS tại lớp điều khiển SDN Avant⁃Guard (Seungwon Shin et al., 2013) bổ sung cho lớp chuyển tiếp một
cơ chế di cư kết nối
Giải pháp đề xuất
Hình 1 mô tả sơ đồ thiết kế và hiện thực giải pháp trên OpenDayLight Controller
Trong phát hiện tấn công, chúng tôi sẽ
sử dụng kết hợp nhiều phương pháp để phát hiện những lưu lượng tấn công khác nhau Phương pháp phát hiện đầu tiên là dựa trên sự gia tăng tỷ lệ thông điệp PACKET_IN gửi đến Controller
Ở phương pháp này, chúng tôi tiến hành theo dõi tốc độ mà Controller tiếp nhận thông điệp PACKET_IN từ các OpenFlow Switch
Hình 1 Thiết kế và hiện thực giải pháp bảo mật trên ODL Controller
Khi bị tấn công một lượng lớn thông
điệp PACKET_IN sẽ được tạo ra và
gửi đi, do đó tốc độ này sẽ có sự gia
tăng đột ngột, vượt qua mức cho phép
của Controller và sẽ được xem là dấu
hiệu của mạng bị tấn công Phương
pháp phát hiện thứ hai là dựa trên sự
biến đổi Entropy thông tin của các gói tin trong mạng Entropy thông tin là một đại lượng đo lường sự ngẫu nhiên trong các tín hiệu Ta có thể sử dụng khái niệm này để áp dụng cho các gói tin nhằm đo độ ngẫu nhiên trong địa chỉ đich của các gói tin Ở mạng hoạt
Trang 5Giải thưởng Sinh viên nghiên cứu khoa học Euréka lần 20 năm 2018 Kỷ yếu khoa học động bình thường, lưu lượng mạng
được phân phối ngẫu nhiên, phụ thuộc
vào lượng người dùng trong mạng Do
đó, độ ngẫu nhiên (tức Entropy) sẽ cao
Khi lưu lượng mạng tập trung càng
nhiều vào một đích đến nào đó trong
mạng, Entropy sẽ càng giảm Sử dụng
Entropy ta có thể phát hiện được các
lưu lượng tấn công nhắm vào một hoặc
một số đích đến trong mạng, đặc biệt là
một số lưu lượng phổ biến như TCP
SYN Flood, UDP Flood, ICMP
Flood,… Việc sử dụng kết hợp hai
phương pháp sẽ làm tăng độ chính xác
trong phát hiện tấn công, giúp phát
hiện sớm tấn công để có thể xử lý kịp
thời
Trong xử lý tấn công, chúng tôi chia
thành 4 giai đoạn: lọc lưu lượng tấn
công, xác định nguồn gốc lưu lượng
tấn công, ngăn chặn lưu lượng tấn công
và khôi phục mạng Khi phát hiện có
tấn công xảy ra, việc lọc lưu lượng
nhằm giúp phân biệt các gói tin tấn
công và gói tin hợp lệ, cung cấp khả
năng hoạt động bình thường cho các
người dùng trong mạng Xác định
nguồn gốc lưu lượng tấn công nhằm
xem xét những thiết bị ở lớp điều khiển
bị lợi dụng, thỏa hiệp để gây ra cuộc
tấn công Sau khi xác định được thiết
bị bị tấn công, chúng tôi tiến hành chặn
không cho lưu lượng tấn công tiếp tục
đi vào mạng, đồng thời theo dõi hoạt
động của mạng để xác định tấn công
còn xảy ra hay không Nếu cuộc tấn
công đã kết thúc, mạng sẽ được khôi
phục bằng cách xóa các luồng chặn,
cho phép gói tin lưu thông trở lại
Thực nghiệm và đánh giá
Giải pháp được hiện thực và tích hợp
vào OpenDayLight Controller để trở
thành một tính năng bảo mật của mạng
Chúng tôi tiến hành đánh giá kiểm thử
tính năng trên môi trường ảo và môi
trường thực tế Trên môi trường ảo,
chúng tôi sử dụng công cụ Mininet để
tạo ra các 5 OpenFlow Switch ảo, sau
đó sử dụng công cụ Hping để tạo ra các lưu lượng tấn công Trên môi trường thực tế, chúng tôi sử dụng 2 NetFPGA OpenFlow Switch với tốc độ truyền tải của mỗi cổng lên đến 10Gbps, đồng thời sử dụng Open Source Network Tester (ONST) (G.Antichi, 2014), một công cụ hỗ trợ tạo lưu lượng cho nền tảng NetFPGA để tạo ra các cuộc tấn công thử nghiệm Hệ thống được thử nghiệm qua ba trường hợp tấn công DDoS (TCP Flooding, UDP Flooding
và Random Flooding) với các tốc độ tấn công khác nhau Kết quả thực nghiệm cũng được phân tích trên nền tảng OSNT Phương pháp phân tích thống kê so sánh được sử dụng để đánh giá độ hiệu quả hệ thống
KẾT QUẢ VÀ THẢO LUẬN Thời gian phát hiện tấn công và thời gian trễ
Nhờ sử dụng các phương pháp phát hiện tấn công sớm, khối phát hiện có thể nhanh chóng phát hiện các hoạt động bất thường trong hệ thống Với N
= 100 (có nghĩa là chúng ta sử dụng
500 gói tin để phân tích), Controller có khả năng phát hiện các cuộc tấn công DDoS trong thời gian rất ngắn (0,02 giây - 0,05 giây) Có thể thấy rằng, kích thước N càng lớn thì thời gian phát hiện càng dài Do đó, cần lựa chọn giá trị N phù hợp, tùy thuộc vào quy
mô của từng hệ thống
Tài nguyên Controller
Khi tấn công DDoS bão hòa xảy ra, ở các tốc độ tấn công khác nhau thì tài nguyên Controller sẽ chịu những mức thiệt hại khác nhau Với các cuộc tấn công hệ thống bằng 400 triệu gói tin tốc độ xấp xỉ lần lượt 150Mbps, tài nguyên tính tóa n trung bình của Controller bị chiếm đến khoảng 90%, hay nói cách khác gần như toàn bộ tài nguyên Controller sẽ dành để phục vụ
Trang 6Giải thưởng Sinh viên nghiên cứu khoa học Euréka lần 20 năm 2018 Kỷ yếu khoa học
cho việc xử lý thông điệp
PACKET_IN Thông thường, một
cuộc tấn công DoS có thể kéo dài từ
10-15 phút, tốc độ tấn công, lưu lượng
tấn công và độ đa dạng trong lưu lượng
tấn công có thể lớn hơn nhiều lớn so
với thử nghiệm Do đó, việc một lượng
lớn tài nguyên bị chiếm trong một
khoảng thời gian dài như vậy có thể
khiến Controller bị mất toàn bộ tài
nguyên, từ đó mất khả năng điều khiển
mạng
Kết quả cho thấy khi các cuộc tấn công
xảy ra, tài nguyên CPU tăng đột ngột,
và đạt đỉnh (khoảng 80%) trong
khoảng 3 giây do phát sinh tài nguyên
trong suốt quá trình phát hiện tấn công
Băng thông mạng
Chúng tôi cung cấp các đường kết nối
tốc độ cao có thể đạt tốc độ tối đa
1Gbps cho giao tiếp giữa các
OpenFlow Switch và OpenDayLight
Controller Khi mạng bị tấn công, băng
thông đường truyền giữa hai lớp gần
như bị chiếm dụng hoàn toàn bởi hàng
trăm nghìn gói tin giả mạo được gửi từ
những kẻ tấn công Sự bão hòa băng
thông ngăn chặn lưu lượng mạng hợp
lệ tiếp cận bộ điều khiển Với phương
pháp phát hiện và giảm nhẹ tấn công, sau khi phát hiện các cuộc tấn công, lưu lượng truy cập tấn công sẽ bị chặn tạm thời, do đó băng thông sẽ nhanh chóng phục hồi và tiếp tục tiếp nhận các luồng lưu lượng hợp lệ
KẾT LUẬN
Kết quả thu được cho thấy, khi tấn công hệ thống không có tính năng bảo mật bằng 400 triệu gói tin được sinh ra ngẫu nhiên với các tốc độ lần lượt xấp
xỉ 500Mbps và 1Gbps, tài nguyên tính tóa n trung của Controller bị chiếm đến 90% Với hệ thống có tích hợp tính năng bảo mật, cuộc tấn công sẽ bị phát hiện trong khoảng thời gian nhỏ hơn 5s
và sẽ bị chặn ngay sau đó Do đó, tài nguyên Controller sẽ được khôi phục lại một cách nhanh chóng Qua quá trình tìm hiểu, hiện thực, triển khai và đánh giá, giải pháp ban đầu đã cho thấy một số hiệu quả nhất định trong việc phòng chống tấn công Tuy vẫn còn nhiều vấn đề tồn đọng nhưng những kết quả nghiên cứu trong đề tài này sẽ góp phần tạo ra tiền để để có thể phát triển các vấn đề liên quan đến bảo mật trong tương lai
TÀI LIỆU THAM KHẢO
C P.-Q T N T N T BAO HO A Secured Open Flow-Based Switch Architecture in Advanced Computing and Applications (ACOMP), Can
Tho, 2016
H W A K G S C JIN Hop-count filtering: An effective defense against spoofed DDoS traffic In Proceedings of the 10th ACM conference on
Computer and communications security, New York, 2003
K CHEN, A R JUNUTHULA, I K SIDDHRAU, Y XU, AND H J CHAO
SDNShield: Towards more comprehensive defense against DDoS attacks
on SDN control plane In Proc IEEE Conference on Communications and
Network Security(CNS), Philadelphia, USA, 2016