Giả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:
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:
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
174
Giả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). Ngồ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ở. Q 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 tồ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ự
175
Giải thưởng Sinh viên nghiên cứu khoa học Euréka lần 20 năm 2018
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 hồn thiện, được phát
Kỷ yếu khoa học
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 q lớn, hay
nói cách khác, Controller hồn tồ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 hồn tồ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
176
Giải thưởng Sinh viên nghiên cứu khoa học Euréka lần 20 năm 2018
đã 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à ngồ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,
Kỷ yếu khoa họ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.
A. Sơ đồ giải pháp
B. Hiện thực giải pháp trên ODL
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 biến đổi Entropy thơng tin của các gói
điệp PACKET_IN sẽ được tạo ra và tin trong mạng. Entropy thông tin là
gửi đi, do đó tốc độ này sẽ có sự gia một đại lượng đo lường sự ngẫu nhiên
tăng đột ngột, vượt qua mức cho phép trong các tín hiệu. Ta có thể sử dụng
của Controller và sẽ được xem là dấu khái niệm này để áp dụng cho các gói
hiệu của mạng bị tấn công. Phương tin nhằm đo độ ngẫu nhiên trong địa
pháp phát hiện thứ hai là dựa trên sự chỉ đich của các gói tin. Ở mạng hoạt
177
Giải thưởng Sinh viên nghiên cứu khoa học Euréka lần 20 năm 2018
độ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 để
Kỷ yếu khoa học
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
ngun 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
ngun 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ư tồn bộ tài
nguyên Controller sẽ dành để phục vụ
178
Giải thưởng Sinh viên nghiên cứu khoa học Euréka lần 20 năm 2018
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 tồn bộ tài
ngun, 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 ngun
trong suốt q 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 hồn tồ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
Kỷ yếu khoa học
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 ngun 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
ngun 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.
179