You are on page 1of 61

BỘ GIÁO DỤC VÀ ĐÀO TẠO

TRƯỜNG ĐẠI HỌC NHA TRANG


KHOA CÔNG NGHỆ THÔNG TIN

BÁO CÁO CHUYÊN ĐỀ

NGHIÊN CỨU ỨNG DỤNG SCAPY TẠO LƯU LƯỢNG TẤN


CÔNG KIỂM THỬ AN TOÀN TRONG MẠNG SDN

Giảng viên hướng dẫn: ThS. Cấn Thị Phượng

Sinh viên thực hiện: Nguyễn Hữu Tân

Mã số sinh viên: 61134319

Khánh Hòa - 2023


BỘ GIÁO DỤC VÀ ĐÀO TẠO
TRƯỜNG ĐẠI HỌC NHA TRANG
KHOA CÔNG NGHỆ THÔNG TIN

BÁO CÁO CHUYÊN ĐỀ

NGHIÊN CỨU ỨNG DỤNG SCAPY TẠO LƯU LƯỢNG TẤN


CÔNG KIỂM THỬ AN TOÀN TRONG MẠNG SDN

GVHD: ThS. Cấn Thị Phượng

SVTH: Nguyễn Hữu Tân

MSSV: 61134319

Khánh Hòa - 2023


LỜI CAM ĐOAN

Em xin cam đoan đây là bài báo cáo về “Nghiên cứu ứng dụng scapy tạo lưu
lượng tấn công kiểm thử an toàn trong mạng SDN”. Các nội dung nghiên cứu và
kết quả trong đề tài này là trung thực dựa trên tìm hiểu, nghiên cứu của cùng với sự
hướng dẫn của giảng viên Cấn Thị Phượng. Đối với các nguồn tham khảo, đánh giá,
trích luật đều được ghi nguồn và chú thích ở phần danh mục tài liệu tham khảo.

Em Nguyễn Hữu Tân xin cam đoan rằng những sự giúp đỡ khi em thực hiện
báo cáo này đã được cảm ơn và em chịu hoàn toàn trách nhiệm về bài báo cáo này.
Những thông tin được trích dẫn trong báo cáo đã được ghi rõ nguồn gốc trích dẫn.

Em xin chân thành cảm ơn!

Người thực hiện báo cáo:

Nguyễn Hữu Tân

i
LỜI CẢM ƠN

Để hoàn thành đề tài báo cáo chuyên đề này, trước hết em xin gửi đến quý thầy,
cô Khoa Công nghệ Thông tin – Trường Đại Học Nha Trang lời cảm ơn chân thành.
Em xin gửi đến cô Cấn Thị Phượng, người đã tận tình hướng dẫn, giúp đỡ em hoàn
thành báo cáo chuyên đề này lời cảm ơn sâu sắc nhất.

Trong quá trình nghiên cứu thực hiện đề tài, cũng như trong quá trình làm bài
báo cáo, khó tránh khỏi sai sót, rất mong cô bỏ qua. Đồng thời do kiến thức cũng như
kinh nghiệm thực tiễn của bản thân còn hạn chế, bài báo cáo này khó tránh khỏi những
thiếu sót, em rất mong nhận được ý kiến đóng góp từ cô để em học hỏi thêm được
nhiều kinh nghiệm, cũng như kỹ năng cần thiết.

Em xin chân thành cảm ơn!

ii
MỤC LỤC
LỜI CAM ĐOAN...........................................................................................................i
LỜI CẢM ƠN...............................................................................................................ii
MỤC LỤC....................................................................................................................iii
DANH MỤC HÌNH ẢNH.............................................................................................v
DANH MỤC CÁC TỪ VIẾT TẮT.............................................................................vii
PHẦN MỞ ĐẦU...........................................................................................................1
CHƯƠNG 1: TỔNG QUAN VỀ ĐỀ TÀI.....................................................................3
1.1. TỔNG QUAN VỀ CÁC CÔNG TRÌNH CÓ LIÊN QUAN...................................3
1.2. TÓM TẮT NỘI DUNG CÁC CHƯƠNG...............................................................3
CHƯƠNG 2: CƠ SỞ LÝ THUYẾT..............................................................................5
2.1. GIỚI THIỆU VỀ SDN............................................................................................5
2.1.1. SDN là gì?...........................................................................................................5
2.1.2. Ưu và nhược điểm của SDN................................................................................5
2.1.3. Kiến trúc SDN.....................................................................................................6
2.2. Giao thức OpenFlow...............................................................................................7
2.2.1. Tổng quan về OpenFlow......................................................................................7
2.2.2. Cấu tạo và hoạt động OpenFlow..........................................................................8
2.2.3. Lợi ích khi sử dụng..............................................................................................9
2.3. Các rủi ro an toàn bảo mật mạng SDN....................................................................9
2.3.1. Tấn công do thám................................................................................................9
2.3.2. Tấn công từ chối dịch vụ....................................................................................10
2.3.3. Tấn công xâm nhập............................................................................................10
2.3.4. Tấn công mã độc................................................................................................10
2.3.5. Đánh hơi/ nghe lén.............................................................................................11
2.4. Giới thiệu về scapy...............................................................................................12
2.4.1. Scapy là gì.......................................................................................................... 12
2.4.2. Các chức năng của Scapy:..................................................................................12
2.4.3. Cách cài đặt:......................................................................................................13
CHƯƠNG 3: KẾT QUẢ NGHIÊN CỨU....................................................................17
3.1. Kịch bản tấn công.................................................................................................17
3.1.1. Mô hình.............................................................................................................. 17
iii
3.1.2. Triển khai tấn công............................................................................................22
3.1.2.1. Kịch bản thứ nhất............................................................................................22
3.1.2.2. Kịch bản thứ hai..............................................................................................41
3.2. Kết luận................................................................................................................. 50
3.3. Hướng phát triển...................................................................................................50
TÀI LIỆU THAM KHẢO...........................................................................................51

iv
DANH MỤC HÌNH ẢNH
Hình 2.1: Kiến trúc SDN...............................................................................................7
Hình 2.2: Cấu tạo OpenFlow.........................................................................................8
Hình 2.3 Chức năng của Scapy....................................................................................12
Hình 2.4: Cài đặt phần mềm pip..................................................................................14
Hình 2.5: Kiểm tra phiên bản pip.................................................................................14
Hình 2.6: Nâng cáp phiên bản pip................................................................................15
Hình 2.7: Cài đặt scapy................................................................................................15
Hình 2.8: Giao diện Scapy...........................................................................................16
Hình 3.1: Mô hình tấn công controller mạng SDN......................................................17
Hình 3.2: Mô hình tấn công trong mạng SDN.............................................................18
Hình 3.3: Chuyển đổi thức mục sang karaf..................................................................18
Hình 3.4: Chạy tệp karaf..............................................................................................19
Hình 3.5: Vào thư mục mininet...................................................................................20
Hình 3.6: Cài đặt mô hình ODL tên mininet................................................................20
Hình 3.7: Kiểm tra các host mạng................................................................................21
Hình 3.8: Giao diện OpenDaylight..............................................................................22
Hình 3.9: Mô hình mạng trong OpenDayLight............................................................22
Hình 3.10: Tạo địa chỉ tấn công...................................................................................23
Hình 3.11: Tạo cổng muốn gửi....................................................................................23
Hình 3.12: Tạo gói tin tấn công...................................................................................24
Hình 3.13: Gửi gói tin đến máy bị tấn công.................................................................24
Hình 3.14: Các gói tin tấn công của Scapy..................................................................25
Hình 3.15: Các gói tin khi dừng tấn công....................................................................26
Hình 3.16: Biểu đồ I/O Graphs của Scapy...................................................................27
Hình 3.17: Tấn công SYN Flood bằng Hping3............................................................28
Hình 3.18: Các gói tin SYN Flood của Hping3...........................................................29
Hình 3.19: Biểu đồ I/O Graphs của Hping3................................................................30
Hình 3.20: Biểu đồ Packets/s cao nhất giữa 2 công cụ.................................................30
Hình 3.21: Địa chỉ mục tiêu.........................................................................................31
Hình 3.22: Địa chỉ giả mạo..........................................................................................32
Hình 3.23: Địa chỉ cổng mạng.....................................................................................32
v
Hình 3.24: Hàm tấn công ARP Spoofing.....................................................................33
Hình 3.25: Các gói tin tấn công ARP Spoofing của Scapy..........................................34
Hình 3.26: Chế độ chuyển tiếp gói tin.........................................................................35
Hình 3.27: Lệnh tấn công ARP Spoofing bằng dsniff..................................................35
Hình 3.28: Các gói tin tấn công ARP Spoofing của dsniff...........................................36
Hình 3.29: Cổng bắt đầu quét và cổng kết thúc quét....................................................37
Hình 3.30: Vòng lặp để quét cổng...............................................................................38
Hình 3.31: Cổng mở....................................................................................................39
Hình 3.32: Cổng đóng..................................................................................................40
Hình 3.33: Quét cổng bằng Nmap...............................................................................41
Hình 3.34: Các gói tin tấn công host 2 bằng Scapy......................................................44
Hình 3.35: Biểu đồ I/O Graphs của host 2 khi tấn công bằng Scapy...........................45
Hình 3.36: Các gói tin host 2 khi tấn công bằng Hping3.............................................46
Hình 3.37: Biểu đồ I/O Graphs host 2 khi tấn công bằng Hping3................................47
Hình 3.38: Các cổng đóng của host 3..........................................................................49
Hình 3.39: Quét cổng host 3 bằng Nmap.....................................................................49

vi
DANH MỤC CÁC TỪ VIẾT TẮT

SDN Software-defined networking


DoS Denial-of-Service
DDoS Distributed Denial of Service
MitM  man-in-the middle
UDP User Datagram Protocol
TCP Transmission Control Protocol
ICMP Internet Control Message Protocol
IP Internet Protocol
MAC Media Access Control
DHCP Dynamic Host Configuration Protocol
SYN Synchronize
IDS Intrusion Detection System
IPS Intrusion Prevention System
CPU Central Processing Unit
VoIP Voice over Internet Protocol
ARP Address Resolution Protocol
VLAN Virtual Local Area Network

vii
PHẦN MỞ ĐẦU
1. Tính cấp thiết và lý do chọn đề tài
Trong những năm qua, mạng SDN đã phát triển mạnh mẽ và đang trở nên phổ
biến, được triển khai rộng rãi trong nhiều môi trường mạng. Mạng SDN tách rời phần
điều khiển và chuyển tiếp dữ liệu, cho phép quản trị viên mạng kiểm soát và quản lý
mạng toàn diện từ một bộ điều khiển trung tâm (controller). Mạng SDN linh hoạt trong
việc cấu hình và quản lý mạng, đồng thời cung cấp khả năng triển khai ứng dụng mạng
linh hoạt và nhanh chóng. Nhưng việc đảm bảo an toàn và bảo mật trong mạng SDN là
một thách thức đối với các nhà quản lý mạng, việc quản lý truy cập vào bộ điều khiển
là một vấn đề quan trọng. Bộ điều khiển cần được giám sát, kiểm tra tính toàn vẹn và
đảm bảo chỉ có những thiết bị được ủy quyền mới có thể truy cập vào. Quản lý và
giám sát hệ thống mạng SDN đóng vai trò quan trọng trong việc phát hiện và ngăn
chặn các mối đe dọa bảo mật. Do đó việc kiểm thử và đánh giá an toàn của mạng SDN
là rất cần thiết.
Với sự gia tăng của các cuộc tấn công mạng, việc nghiên cứu và ứng dụng công
cụ Scapy trong việc tạo lưu lượng tấn công kiểm thử mạng SDN nhằm cung cấp giải
pháp kiểm thử hiệu quả cho mạng SDN. Việc sử dụng công cụ Scapy để tấn công
mạng như tấn công từ chối dịch vụ (DoS), tấn công giả mạo (spoofing), tấn công quét
cổng (port scanning), hay các tấn công khác nhằm kiểm tra tính an toàn và khả năng
chống tấn công của mạng SDN, phát hiện các lỗ hổng bảo mật và đưa ra các biện pháp
cải thiện. Các kết quả của nghiên cứu này có thể được áp dụng để kiểm tra và cải thiện
bảo mật mạng SDN trong nhiều môi trường và ngành công nghiệp.
Đề tài này có tính cấp thiết cao khi mà hiện nay tấn công mạng ngày càng tăng
và mạng SDN cũng không phải ngoại lệ. Đề tài góp phần giúp nhận biết tầm quan
trọng việc bảo mật và đảm bảo an toàn trong mạng SDN, đồng thời đóng góp vào sự
phát triển và ứng dụng của công nghệ SDN trong thực tế. Vì vậy em đã chọn đề tài
“Nghiên cứu ứng dụng scapy tạo lưu lượng tấn công kiểm thử an toàn trong
mạng SDN” để triển khai việc kiểm thử an toàn mạng trong mạng SDN bằng lưu
lượng được tạo bởi Scapy.

2. Mục tiêu đề tài


- Hiểu được SDN
- Hiểu được Scapy
1
- Cài đặt/cấu hình mô phỏng được SDN
- Cài đặt/cấu hình được Scapy
- Tạo kịch bản phát lưu lượng tấn công từ Scapy
- Triển khai thử nghiệm

3. Đối tượng, phạm vi nghiên cứu


- Đối tượng nghiên cứu: An toàn mạng SDN và scapy, các rủi ro an toàn bảo mật
mạng SDN.
- Phạm vi nghiên cứu: Sử dụng Scapy để triển khai một số kiểu tấn công trong
mạng SDN.

4. Phương pháp nghiên cứu


- Phương pháp nghiên cứu tài liệu.
- Phương pháp phân tích.
- Phương pháp thực hành.
- Phương pháp tổng hợp.

2
CHƯƠNG 1: TỔNG QUAN VỀ ĐỀ TÀI

1.1. TỔNG QUAN VỀ CÁC CÔNG TRÌNH CÓ LIÊN QUAN


Nhóm nghiên cứu [1] họ cung cấp một cái nhìn tổng quan về vấn đề bảo mật
trong mạng SDN, thông tin về kiến trúc SDN, các thách thức bảo mật, và các phương
pháp kiểm thử an toàn. Nhóm nghiên cứu này đã nêu ra vai trò của kiểm thử an toàn
trong mạng SDN. Tiếp theo nhóm nghiên cứu [2] tập trung vào việc đánh giá bảo mật
của mạng SDN sử dụng giao thức OpenFlow. Nhóm nghiên cứu đã đi sâu vào phân
tích các lỗ hổng bảo mật và cung cấp các kịch bản tấn công và phòng thủ. Nhóm đã
cung cấp những thông tin quan trọng về các vấn đề bảo mật trong mạng SDN.
Nghiên cứu [3] tập trung vào các cuộc tấn công phổ biến trong mạng SDN và
các biện pháp phòng ngừa. Họ cung cấp một cái nhìn tổng quan về các phương pháp
tấn công thường gặp và cách thức mà mạng SDN có thể được bảo vệ khỏi chúng.
Nhóm tác giả giúp hiểu rõ hơn về các lỗ hổng bảo mật tiềm ẩn và những gì mà công cụ
Scapy có thể giải quyết.
Trong nghiên cứu [4], tác giả đã giới thiệu công cụ Scapy một cách đầy đủ nhất,
mô tả các tính năng và khả năng của công cụ này trong việc tạo và xử lý gói tin mạng.
Tác giả còn hướng dẫn cụ thể về cách sử dụng Scapy và cú pháp để tạo lưu lượng
mạng, bao gồm cả các kịch bản tấn công. Tiếp đến nghiên cứu [5] đã tóm tắt ngắn của
nhóm nghiên cứu [4] đã trình bày. Bên cạnh đó nhóm này còn chỉ ra một số lệnh quan
trọng, những điểm mạnh và điểm yếu của Scapy. Nhóm nêu ra các giao thức được hỗ
trợ và cách sử dụng được giải thích bằng hình ảnh.
Trong đề tài “Nghiên cứu ứng dụng scapy tạo lưu lượng tấn công kiểm thử an
toàn trong mạng SDN" em sẽ triển khai một mạng SDN với mininet và controller gồm
3 switch và 3 host. Sau đó em sẽ viết một số kịch bản tấn công dùng Scapy vào mạng
SDN, sau đó phân tích và so sánh kết quả.
1.2. TÓM TẮT NỘI DUNG CÁC CHƯƠNG
Tóm tắt phần I – Tổng quan về đề tài
Nêu ra các công trình nghiên cứu trước đây và các phương pháp nghiên cứu về
ứng dụng scapy tạo lưu lượng tấn công kiểm thử an toàn trong mạng SDN.
Tóm tắt phần II – Cơ sở lý thuyết

3
Trình bày các nội dung lý thuyết về SDN, ưu và nhược điểm của SDN, kiến
trúc và ứng dụng của SDN. Trình bày tổng quan giao thức OpenFlow, cấu tạo và hoạt
động của OpenFlow, lợi ích khi sử dụng. Trình bày các rủi ro trong an toàn bảo mật
mạng SDN các kiểu tấn công phổ biến trong SDN. Giới thiệu về scapy và các chức
năng của scapy.
Tóm tắt phần III – Kết quả nghiên cứu
Lên kịch bản tấn công, kết luận và nêu ra hướng phát triển về đề tài.

4
CHƯƠNG 2: CƠ SỞ LÝ THUYẾT
2.1. GIỚI THIỆU VỀ SDN
2.1.1. SDN là gì?
SDN là viết tắt của Software-Defined Networking, là một mô hình kiến trúc
mạng trong đó phần cứng mạng (networking hardware) và phần mềm điều khiển mạng
(networking software) được tách rời và được quản lý và điều khiển bởi phần mềm điều
khiển trung tâm (centralized controller).
Trong kiến trúc SDN, điều khiển mạng (network control) được tách rời khỏi
phần cứng mạng (network data plane), điều khiển các thiết bị mạng (như switch và
router) thông qua giao tiếp đơn giản như giao thức OpenFlow hoặc các giao thức điều
khiển khác. Bằng cách tách rời điều khiển mạng, SDN cung cấp khả năng quản lý và
kiểm soát mạng trực quan, linh hoạt hơn.
2.1.2. Ưu và nhược điểm của SDN
 Ưu điểm:
- Tính linh hoạt cao: SDN cho phép các nhà quản trị mạng cấu hình và điều
khiển mạng một cách linh hoạt và dễ dàng hơn, từ đó giúp cho việc triển
khai và quản lý mạng trở nên hiệu quả hơn.
- Tăng tính khả dụng: SDN có khả năng phân chia tài nguyên mạng thông
minh hơn, đồng thời cung cấp khả năng khắc phục lỗi nhanh hơn. Khi một
thành phần của mạng gặp sự cố, nhà quản trị có thể dễ dàng xác định
nguyên nhân và sửa chữa nó một cách nhanh chóng.
- Tính mở rộng cao: SDN cho phép mạng được mở rộng dễ dàng và linh hoạt
hơn. Các nhà quản trị mạng có thể dễ dàng thêm hoặc bớt thiết bị mạng,
tăng hoặc giảm băng thông, hoặc thay đổi các chức năng mạng một cách
linh hoạt.
- Giảm chi phí: Vì các thiết bị mạng được tách ra khỏi phần cứng và chuyển
sang được quản lý bởi phần mềm, nên SDN giúp giảm chi phí về thiết bị và
bảo trì mạng.
 Nhược điểm:
- Đòi hỏi kỹ năng cao: Triển khai SDN đòi hỏi kỹ năng kỹ thuật cao và đòi
hỏi sự hiểu biết về kiến trúc mạng và các giao thức liên quan.
5
- Tăng độ phức tạp của hệ thống: SDN tạo ra một lớp phần mềm bổ sung cho
mạng, điều này có thể làm tăng độ phức tạp của hệ thống và làm giảm hiệu
năng của mạng.
- Vấn đề bảo mật: Vì SDN cho phép các thiết bị và ứng dụng truy cập vào bộ
điều khiển trung tâm, nên việc bảo vệ mạng trở nên phức tạp hơn, đặc biệt là
trong trường hợp có các lỗ hổng bảo mật trên bộ điều khiển trung tâm.
2.1.3. Kiến trúc SDN
Ứng dụng (Applications): Là các ứng dụng được phát triển để tương tác với
mạng thông qua bộ điều khiển trung tâm (controller). Các ứng dụng này có thể được
phát triển bởi bên thứ ba hoặc do chính nhà cung cấp SDN cung cấp. Ví dụ về các ứng
dụng SDN bao gồm các ứng dụng quản lý băng thông, giám sát mạng và an ninh
mạng.
Bộ điều khiển trung tâm (Controller): Là trung tâm điều khiển của mạng SDN.
Nó là một phần mềm chạy trên một máy chủ hoặc một số máy chủ được kết nối với
mạng SDN. Bộ điều khiển trung tâm có trách nhiệm quản lý, điều khiển và phân phối
luồng dữ liệu trên mạng SDN. Nó có khả năng thu thập thông tin từ các thiết bị mạng
và cung cấp thông tin này cho các ứng dụng.
Thiết bị mạng (Network devices): Là các thiết bị mạng như switch và router
được sử dụng trong mạng SDN. Thiết bị mạng trong mạng SDN được gọi là thiết bị
thực hiện chuyển tiếp (forwarding device). Chức năng của thiết bị thực hiện chuyển
tiếp được tách ra khỏi thiết bị và chuyển sang được quản lý bởi bộ điều khiển trung
tâm. Thiết bị thực hiện chuyển tiếp sử dụng các giao thức như OpenFlow để truyền tải
các thông điệp điều khiển từ bộ điều khiển trung tâm và thực hiện chuyển tiếp dữ liệu
trên mạng.

6
Hình 2.1: Kiến trúc SDN
2.2. GIAO THỨC OPENFLOW
2.2.1. Tổng quan về OpenFlow
OpenFlow là một giao thức mạng phần mềm (SDN) được phát triển bởi Open
Networking Foundation (ONF) nhằm thay đổi cách thức điều khiển và quản lý mạng
truyền thống. Giao thức này giúp người quản trị mạng có thể quản lý toàn bộ hệ thống
mạng của họ một cách tập trung và linh hoạt hơn.
OpenFlow cho phép tách biệt hai chức năng chính của hệ thống mạng: điều
khiển (control plane) và chuyển tiếp (data plane). Thay vì việc điều khiển mạng được
thực hiện trên các thiết bị chuyển tiếp, OpenFlow cho phép điều khiển mạng được thực
hiện trên một bộ điều khiển tập trung (controller) được quản lý bởi người quản trị
mạng.
Bằng cách sử dụng OpenFlow, người quản trị mạng có thể tạo ra các luồng dữ
liệu (flow) định tuyến tùy ý trong mạng, điều khiển các luồng dữ liệu này và đảm bảo
rằng chúng được chuyển tiếp đúng cách. Điều này giúp cải thiện hiệu suất mạng và
giảm thiểu sự cố trong hệ thống mạng.
Một ứng dụng thực tế của OpenFlow đó là triển khai mạng ảo hóa
(virtualization) trong các trung tâm dữ liệu. OpenFlow cho phép người quản trị mạng
tạo ra các mạng ảo (virtual network) và điều khiển chúng, giúp tăng cường tính linh
hoạt và hiệu suất của hệ thống mạng.

7
2.2.2. Cấu tạo và hoạt động OpenFlow
OpenFlow bao gồm hai phần chính: switch và controller.
 Switch: Switch OpenFlow là một thiết bị mạng truyền thống được cài đặt phần
mềm OpenFlow để hỗ trợ việc điều khiển mạng từ bộ điều khiển tập trung.
Switch OpenFlow thường được lắp đặt trên các thiết bị chuyển mạch mạng,
chẳng hạn như switch Ethernet hoặc router.
 Controller: Bộ điều khiển tập trung (controller) là một phần mềm chạy trên một
máy tính hoặc server, chịu trách nhiệm điều khiển các switch OpenFlow trong
mạng. Bộ điều khiển tập trung sử dụng giao thức OpenFlow để điều khiển các
switch OpenFlow và quản lý toàn bộ hệ thống mạng.

Hình 2.2: Cấu tạo OpenFlow


Khi một luồng dữ liệu (flow) được tạo ra trên mạng, switch OpenFlow sẽ xác
định loại dữ liệu và gửi thông tin đến bộ điều khiển tập trung. Bộ điều khiển tập trung
sử dụng các quy tắc được cấu hình trước để điều khiển việc chuyển tiếp dữ liệu trên
mạng, và sau đó gửi thông tin điều khiển đến switch OpenFlow để chuyển tiếp luồng
dữ liệu đó.
Trong quá trình hoạt động, bộ điều khiển tập trung có thể cập nhật các quy tắc
điều khiển để thay đổi cách thức xử lý luồng dữ liệu, tạo ra các luồng dữ liệu mới hoặc
xóa các luồng dữ liệu hiện có. Việc này giúp cải thiện hiệu suất mạng và tăng tính linh
hoạt của hệ thống mạng.

8
2.2.3. Lợi ích khi sử dụng
Sử dụng OpenFlow để triển khai mạng phần mềm (SDN) mang lại nhiều lợi ích
cho mạng và người quản trị mạng, bao gồm:
- Tính quản lý: OpenFlow cho phép quản lý mạng từ một điểm tập trung duy
nhất. Thông qua giao thức này, người quản trị mạng có thể kiểm soát và điều
chỉnh các luồng dữ liệu, các chính sách mạng và cấu hình từ một bộ điều khiển
trung tâm. Điều này giúp giảm sự phức tạp của việc quản lý mạng và tăng tính
linh hoạt trong việc triển khai và cấu hình mạng.
- Tính mở rộng và tương thích: OpenFlow là một giao thức chuẩn được hỗ trợ
bởi nhiều nhà cung cấp thiết bị mạng. Điều này đảm bảo tính tương thích và
khả năng mở rộng của hệ thống. Bằng cách sử dụng OpenFlow, người dùng có
thể tận dụng các giải pháp từ nhiều nhà cung cấp và tích hợp các thành phần
mạng khác nhau một cách dễ dàng.
- Tối ưu hóa mạng: OpenFlow cho phép người quản trị mạng xác định và kiểm
soát cách luồng dữ liệu được chuyển tiếp trong mạng. Bằng cách thực hiện
quyết định thông qua bộ điều khiển trung tâm, mạng có thể được tối ưu hóa để
đáp ứng yêu cầu cụ thể. Điều này giúp tăng hiệu suất, giảm độ trễ và đảm bảo
chất lượng dịch vụ tốt hơn.
- Khả năng định tuyến linh hoạt: Với OpenFlow, người quản trị mạng có thể điều
khiển việc định tuyến dữ liệu trên mạng. Điều này cho phép triển khai các chính
sách định tuyến thông minh dựa trên nhu cầu cụ thể.
- Tính thích ứng và linh hoạt: OpenFlow cung cấp khả năng điều chỉnh và thích
ứng mạng theo thời gian thực. Khi có sự thay đổi trong môi trường hoặc yêu
cầu mạng, người quản trị có thể thay đổi chính sách mạng và cấu hình từ bộ
điều khiển trung tâm một cách nhanh chóng và dễ dàng.
2.3. CÁC RỦI RO AN TOÀN BẢO MẬT MẠNG SDN
Theo tài liệu [6] có các hình thức tấn công chủ yếu như sau:
2.3.1. Tấn công do thám
Tấn công do thám là quá trình xâm nhập hoặc thu thập thông tin một cách bí
mật từ một hệ thống hoặc tổ chức mà không có sự cho phép của chủ sở hữu hệ thống
đó. Mục đích chính của tấn công do thám là thu thập thông tin quan trọng, bí mật. Các
thông tin gồm: thông tin về mạng như địa chỉ IP, mặt nạ mạng, topo mạng, tên miền;
9
thông tin về máy như username, tên group, kiến trúc (ví dụ x86 hay SPARC), hệ điều
hành, dịch vụ TCP hay UDP đang chạy; các chính sách bảo mật: độ phức tạp của bảo
mật, chu kì thay đổi mật khẩu, tài khoản hết hạn/khóa, bảo mật vật lý, tường lửa, hệ
thống phát hiện xâm nhập IDS/IPS; thông tin về con người liên quan hệ thống: địa chỉ
nhà, số điện thoại, trình độ. Việc do thám được tiến hành theo hai phương thức bị động
và chủ động. Do thám bị động có thể sử dụng các công cụ để tìm cách “mở cửa” nhìn
vào hệ thống mạng. Một số vị dụ như ping, traceroute, netcat, quét cổng… nhưng hành
vi này sẽ bị cảnh báo, ngăn chặn bởi hệ thống IDS, tường lửa của mục tiêu. [6]
2.3.2. Tấn công từ chối dịch vụ
Tấn công từ chối dịch vụ là một hình thức tấn công mạng nhằm làm cho một
dịch vụ hoặc hệ thống trở nên không khả dụng cho người dùng bình thường. Trong tấn
công DoS, kẻ tấn công cố gắng làm cho tài nguyên (như băng thông, CPU, bộ nhớ)
của hệ thống bị quá tải, từ đó ngăn chặn hoặc gián đoạn truy cập của người dùng hợp
lệ. Nếu giám sát mạng, tấn công DoS dễ để phát hiện nhưng khó để chống lại hoặc
dừng nếu không ngắt kết nối mạng hoặc kết nối với Internet. Một biến thể khác của tấn
công từ chối dịch vụ là tấn công từ chối dịch vụ theo kiểu phân tán Distribution DoS.
Trong tấn công DDoS, kẻ tấn công sử dụng một số lượng lớn thiết bị hoặc máy tính
được kiểm soát từ xa (thường là botnet) để tạo ra một lưu lượng truy cập không thể xử
lý được cho hệ thống mục tiêu. [6]
2.3.3. Tấn công xâm nhập
Là loại tấn công nhằm xâm nhập vào hệ thống, mạng hoặc thiết bị của một tổ
chức hoặc cá nhân với mục đích lấy dữ liệu, phá hủy thông tin, kiểm soát hoặc khai
thác các tài nguyên hệ thống. Một số loại tấn công xâm nhập như: MitM (Man in the
middle), bẻ khóa mật khẩu, chuyển hướng cổng, tấn công tràn bộ đệm (Buffer
overflow), giả mạo IP, DHCP, MAC. [6]
2.3.4. Tấn công mã độc
Mã độc là một hình thức tấn công mạng mà kẻ tấn công cố gắng xâm nhập và
cài đặt phần mềm độc hại (malware) vào hệ thống, máy tính hoặc thiết bị của người
dùng mà không được sự cho phép. Mục đích của tấn công mã độc thường là lợi ích cá
nhân, như lấy cắp thông tin, gây hại hoặc kiểm soát từ xa hệ thống bị nhiễm malware.
Một số phương pháp tấn công mã độc phổ biến:

10
- Virus: là một loại phần mềm độc hại có khả năng tự nhân bản và lây lan từ
máy tính này sang máy tính khác. Khi virus được thực thi, nó có thể gây hại
cho hệ thống, xóa hoặc thay đổi dữ liệu, hoặc lây nhiễm vào các tệp tin
khác. Chúng có thể lây nhiễm khi phần mềm, tài liệu được đính kèm để
truyển từ máy này sang máy khác sử dụng mạng, ổ đĩa, chia sẻ file, hoặc file
đính kèm email,... Chúng còn có thể phá hủy dữ liệu, phần mềm, hoặc tạo
điều kiện cho tấn công từ chối dịch vụ. [6]
- Worm: là một dạng malware tự động lây lan qua mạng và không cần sự
tương tác của người dùng. Worm có thể sao chép chính mình và gửi bản sao
tới các máy tính khác, tạo ra một làn sóng lây nhiễm. Nó có thể gây tắc
nghẽn mạng và tiêu tốn tài nguyên hệ thống. [6]
- Trojan là phần mềm độc hại được ẩn trong một phần mềm hoặc tệp tin có vẻ
như là một phần mềm hợp pháp. Khi người dùng cài đặt hoặc chạy nó,
Trojan sẽ thực hiện các hành động độc hại như lấy cắp thông tin, mở cổng
để kẻ tấn công từ xa kiểm soát hệ thống hoặc cài đặt phần mềm độc hại
khác. Không giống như virus hay worm, trojan không tự nhân bản hoặc lây
nhiễm từ file.. Một số kiểu Trojan: Rootkit, Ransom Trojan, FakeAV
Trojan, DDoS Trojan, … [6]
Ransomware: Ransomware là loại malware khiến hệ thống hoặc tệp tin trở
thành không thể truy cập hoặc sử dụng bằng cách mã hóa chúng. Kẻ tấn công sau đó
yêu cầu một khoản tiền chuộc để cung cấp chìa khóa giải mã, thường thông qua tiền
điện tử. Đôi khi nạn nhân trả tiền nhưng chưa chắc đã truy cập lại được. Ransomware
có thể gây thiệt hại nghiêm trọng cho cá nhân hoặc tổ chức bằng cách tắc nghẽn truy
cập vào dữ liệu quan trọng. Một số ransomware đình đám như WannaCry và NotPetya
năm 2017, GandCrab năm 2018, … Sao lưu dữ liệu là cách để giảm thiểu hậu quả
trong tấn công Ransomware. Ngoài ra không click vào đường link lạ nào cũng là một
cách tránh được tấn công này. [6]
2.3.5. Đánh hơi/ nghe lén
Tấn công đánh hơi là kỹ thuật giả mạo thông tin nhằm lừa đảo hoặc đánh lừa
người dùng. Thông thường, tấn công đánh hơi được thực hiện bằng cách giả mạo địa
chỉ IP hoặc MAC của một thiết bị. Khi tấn công này được thực hiện, kẻ tấn công có

11
thể truy cập vào mạng hoặc hệ thống của người dùng, đánh cắp thông tin và tiến hành
các hoạt động độc hại khác.
Tấn công nghe lén là kỹ thuật giám sát và thu thập thông tin một cách bí mật.
Tấn công này thường được thực hiện bằng cách nghe trộm các giao thức truyền tải dữ
liệu như Wi-Fi, Bluetooth hoặc các kênh truyền thông khác. Khi tấn công này thành
công, kẻ tấn công có thể thu thập các thông tin nhạy cảm như tên đăng nhập, mật khẩu
hoặc các thông tin cá nhân khác.
2.4. GIỚI THIỆU VỀ SCAPY
2.4.1. Scapy là gì
Scapy là một công cụ mạng mã nguồn mở giúp cho người dùng có thể gửi, nghe
lén, phân tích và giả mạo các gói tin mạng trong môi trường Python. Các tính năng của
Scapy cho phép xây dựng các công cụ với mục đích thăm dò, quét kiểm tra và tấn
công mạng. Ngoài ra, scapy còn là một chương trình thao tác và tương tác với các gói
tin mạng một cách mạnh mẽ. Scapy có thể giả mạo hoặc giải mã các gói tin thông qua
các giao thức mạng như TCP, UDP, ICMP và nhiều giao thức khác. Scapy sẽ thực
hiện gửi các gói tin, bắt các gói tin, đưa ra tập các gói tin yêu cầu và các gói tin trả lời
tương ứng với các gói tin yêu cầu… Scapy có thể dễ dàng thực hiện các tác vụ như
scanning, tracerouting, probing, unit test, attack hoặc network discovery… Scapy có
thể dùng để thay thế các công cụ khác như hping, arpspoof, arp-sk, arping, p0f, Nmap,
tcpdump, tshark... [4]
2.4.2. Các chức năng của Scapy:

Hình 2.3 Chức năng của Scapy


Packet foring: Scapy giả mạo gói tin và gửi các gói tin giả mạo. Các công cụ
khác tương tự như packeth, packit, dnet, packetexcalibur, nemesis, tcpinject, ibnet, IP

12
sorcery, pacgen, arp-sk, arpspoof, pixiliate, irpas, sendIP, IP packet generator, sing,
aicmpsend, dpkt, libpal,…
Sniffing tool: Scapy bắt, nghe lén và phân tích các gói tin. Công cụ nghe lén
tương tự Scapy là ethereal, net2pcap, cdpsniffer, aimsniffer, vomit, tcptrace, tcptrack,
nstreams, argus, karpski, ipgrab, tcpdump, nast, cdpr, dsniff, iptraf, aldebaran, irpas,...
Testing tool: các công cụ như Scapy là ping, hping2, hping3, traceroute, tctrace,
tcptraceroute,…
Scanning tool: Scapy quét và thăm dò các thông tin trong mạng. Công cụ quét
và thăm dò khác như là nmap, amap, vmap, hping3, unicornscan, ttlscan, ikescan,
paketto, firewalk,…
Fingerprinting tool: các công cụ tương tự như là nmap, xprobe, p0f, cron-OS,
queso, ikescan, amap, synscan,…
Attacking tool: các công cụ tấn công mạng.
Scapy khá dễ để sử dụng, công cụ xây dựng trên ngôn ngữ Python và tích hợp
sẵn trên Linux. Hiện tại scapy chưa tích hợp giao diện nên chỉ có thể làm việc trên nền
core. Về cơ bản scapy gồm 2 nhiệm vụ chính: gửi các gói tin và nhận lại các gói tin trả
lời. Scapy có thể định nghĩa tập các gói tin, gửi các gói tin, nhận các gói trả lời, đưa ra
tập các gói tin tương ứng giữa yêu cầu và trả lời hay tập các gói tin không tương ứng
giữa yêu cầu và trả lời. Scapy có thể thực hiện các tác vụ đặc biệt mà các công cụ khác
không thể thực hiện được như: gửi các gói tin không hợp lệ, thực viện việc xen vào
các frame trong 802.11, kết hợp các kỹ thuật như VLAN hopping và ARP cache
poisoning, giải mã gói tin VoIP được mã hóa. Đặc biệt, Scapy có thể xây dựng được
nhiều chức năng cao cấp. [4]
2.4.3. Cách cài đặt:

13
Hình 2.4: Cài đặt phần mềm pip

Hình 1.5: Kiểm tra phiên bản pip

14
Hình 2.6: Nâng cáp phiên bản pip

Hình 2.7: Cài đặt scapy

15
Hình 2.8: Giao diện Scapy

16
CHƯƠNG 3: KẾT QUẢ NGHIÊN CỨU
Trong phần này chúng tôi sẽ triển khai mạng SDN. Chúng tôi sẽ sử dụng Scapy để tạo
lưu lượng tấn công DoS, quét cổng, giả mạo vào mạng SDN. Để đánh giá hiệu quả của
Scapy chúng tôi có so sánh với công cụ tạo lưu lượng tấn công tương ứng.
3.1. KỊCH BẢN TẤN CÔNG
Kịch bản 1:
Sử dụng máy ảo cài đặt lưu lượng kiểm thử Scapy tiến hành tấn công vào
controller của mạng SDN bằng nhiều phương thức tấn công khác nhau như tấn công
DoS, ARP Spoofing quét cổng. Tiếp tục tiến hành tấn công với nhiều công cụ khác
như Hping3, Nmap, ... để so sánh giữa các công cụ với nhau.
Kịch bản 2:
Sử dụng host 1 trong mô hình mạng SDN để tấn công các host còn lại. Sử dụng
scapy để tiến hành tấn công khác như DoS, quét cổng. Sau đó sử dụng các công cụ tấn
công khác để so sánh với Scapy.
3.1.1. Mô hình

Hình 3.1: Mô hình tấn công controller mạng SDN

17
Hình 3.2: Mô hình tấn công trong mạng SDN
Cài đặt OpenDayLight:

Hình 3.3: Chuyển đổi thức mục sang karaf

18
Hình 3.4: Chạy tệp karaf

19
Hình 3.5: Vào thư mục mininet

Hình 3.6: Cài đặt mô hình ODL tên mininet


20
Hình 3.7: Kiểm tra các host mạng

21
Hình 3.8: Giao diện OpenDaylight

Hình 3.9: Mô hình mạng trong OpenDayLight


3.1.2. Triển khai tấn công
3.1.2.1. Kịch bản thứ nhất
Tấn công DoS
Sử dụng Scapy tấn công DoS

22
Tạo địa chỉ IP của mục tiêu bị tấn công

Hình 3.10: Tạo địa chỉ tấn công


Tạo cổng đích muốn gửi

Hình 3.11: Tạo cổng muốn gửi


Tạo gói tin tấn công

23
Hình 3.12: Tạo gói tin tấn công
Gửi gói tin liên tục

Hình 3.13: Gửi gói tin đến máy bị tấn công


Dùng Wireshark để kiểm tra gói tin

24
Hình 3.14: Các gói tin tấn công của Scapy
Sau khi dừng tấn công:

25
Hình 3.15: Các gói tin khi dừng tấn công
Biểu đồ I/O Graphic của Scapy

26
Hình 3.16: Biểu đồ I/O Graphs của Scapy
Sử dụng Hping3 tấn công DoS

27
Hình 3.17: Tấn công SYN Flood bằng Hping3
hping3: Công cụ dòng lệnh được sử dụng để kiểm tra và tấn công mạng.
-S: Cờ SYN trong gói tin TCP để tấn công SYN flood
111.111.111.10: Địa chỉ IP mục tiêu sẽ tràn ngập các gói SYN.
111.111.111.11: Địa chỉ IP nguồn sẽ được giả mạo trong gói tin tấn công.
-p 80: Cổng đích là 80 nơi các gói SYN sẽ được gửi.
--flood: Tham số chỉ định cuộc tấn công SYN flood sẽ được thực hiện với tốc độ tối
đa, gửi nhiều gói tin SYN liên tục mà không chờ phản hồi.
Kiểm tra máy bị tấn công bằng Wireshark

28
Hình 3.18: Các gói tin SYN Flood của Hping3
Biểu đồ I/O Graphic của Hping3:

29
Hình 3.19: Biểu đồ I/O Graphs của Hping3
Biểu đồ đo số packets/s cao nhất của Hping3 và Scapy:

Hình 3.20: Biểu đồ Packets/s cao nhất giữa 2 công cụ

30
So sánh giữa Scapy và Hping3:
- Hping3 có thể thực hiện tấn công SYN flood, ICMP flood, UDP flood và nhiều hình
thức tấn công khác. Với Scapy, xây dựng các gói tin tùy chỉnh để thực hiện tấn công
DoS hoặc tùy chỉnh tấn công mạng khác theo ý muốn. Scapy có thể gửi và nhận các
gói tin mạng trực tiếp từ code Python. Câu lệnh của Hping3 đơn giản hơn so với
Scapy. Qua kiểm tra biểu đồ I/O Graphs sau 5 lần đo cho thấy Hping3 gửi gói tin/s
nhiều hơn so với Scapy.
Kết luận Hping3 tập trung vào việc kiểm tra mạng và tấn công, trong khi Scapy ưu tiên
cho việc tạo và tùy chỉnh gói tin mạng.
Tấn công ARP Spoofing:
Sử dụng Scapy để tấn công ARP Spoofing
Khai báo địa chỉ IP mục tiêu

Hình 3.21: Địa chỉ mục tiêu


Khai báo địa chỉ IP giả mạo

31
Hình 3.22: Địa chỉ giả mạo
Khai báo địa chỉ IP cổng mạng

Hình 3.23: Địa chỉ cổng mạng


Sử dụng hàm để thực hiện ARP Spoofing

32
Hình 3.24: Hàm tấn công ARP Spoofing
Hàm arp_spoof(target_ip, spoofed_ip) để thực hiện tấn công ARP Spoofing. Trong
hàm này, chúng ta sử dụng getmacbyip(target_ip) để lấy địa chỉ MAC của mục tiêu.
Sau đó, chúng ta tạo một gói tin ARP Reply giả mạo(arp_response) bằng cách sử dụng
ARP() với tham số tương ứng. Cuối cùng, chúng ta sử dụng send(arp_response,
verbose=False) để gửi gói tin ARP Spoofing. Trong vòng lặp chính (while True),
chúng ta lặp lại việc gọi hàm arp_spoof(target_ip, spoofed_ip) và
arp_spoof(spoofed_ip, target_ip) để thực hiện ARP Spoofing giữa mục tiêu và địa chỉ
IP giả mạo. Thời gian nghỉ là 1 giây giữa mỗi lần gửi gói tin ARP Spoofing.
Chúng ta sử dụng except KeyboardInterrupt để bắt sự kiện. Khi muốn dừng tấn
công nhấn Ctrl+C. Trong phần này, chúng ta lấy địa chỉ MAC của mục tiêu và địa chỉ
MAC của cổng mạng, sau đó tạo gói tin ARP Reply để khôi phục bảng ARP bằng cách
gửi nó từ cổng mạng đến mục tiêu. Chúng ta sử dụng send(arp_response, count=5) để
gửi 5 gói tin ARP Reply để đảm bảo khôi phục bảng ARP.
Kiểm tra tấn công ARP Spoofing bằng Wireshark

33
Hình 3.25: Các gói tin tấn công ARP Spoofing của Scapy
Sử dụng dsniff tấn công ARP Spoofing
Bật chế độ chuyển tiếp gói tin (IP forwarding)

34
Hình 3.26: Chế độ chuyển tiếp gói tin
Giả mạo địa chỉ IP mục tiêu thành địa chỉ IP của cổng mạng và gửi các gói tin ARP
Spoofing liên tục

Hình 3.27: Lệnh tấn công ARP Spoofing bằng dsniff

35
arpspoof: Tên của công cụ trong gói dsniff, một bộ công cụ bảo mật mạng. Công cụ
này cho phép tấn công ARP spoofing.
-i ens33: Chỉ định giao diện mạng để sử dụng cho tấn công.
-t 111.111.111.10: Chỉ định địa chỉ IP mục tiêu giả mạo gói tin ARP.
111.111.111.1: Địa chỉ IP của máy chủ mạng muốn giả mạo gói tin ARP
Vào Wireshark để kiểm tra

Hình 3.28: Các gói tin tấn công ARP Spoofing của dsniff
So sánh Scapy và dsniff:
Cả hai công cụ đều có thể được sử dụng để thực hiện tấn công ARP Spoofing
nhưng dsniff có sẵn các tính năng và chức năng liên quan đến an ninh mạng rộng hơn
và dễ sử dụng hơn cho việc thực hiện tấn công mạng cụ thể. Trong khi đó, Scapy linh
hoạt hơn trong việc xây dựng các tấn công mạng tùy chỉnh và tương tác trực tiếp với
các gói tin mạng.
Quét cổng TCP Scan
Sử dụng Scapy để quét cổng
Địa chỉ IP của mục tiêu được quét cổng

36
Khai báo cổng bắt đầu và cổng kết thúc

Hình 3.29: Cổng bắt đầu quét và cổng kết thúc quét
Khai báo danh sách các cổng mở và cổng đóng

37
Thực hiện vòng lặp để quét từ cổng bắt đầu đến cổng kết thúc

Hình 3.30: Vòng lặp để quét cổng


Trong vòng lặp này, chúng ta gửi một gói tin TCP SYN đến từng cổng trong phạm vi
quét. Nếu nhận được phản hồi từ máy đích, chúng ta kiểm tra các cờ TCP để xác định
liệu cổng đó là mở ("SA") hay đóng ("RA"). Sau đó, chúng ta thêm cổng tương ứng
vào danh sách open_ports hoặc closed_ports.

38
In ra cổng mở

Hình 3.31: Cổng mở


In ra cổng đóng

39
Hình 3.32: Cổng đóng
Sử dụng Nmap để quét cổng

40
Hình 3.33: Quét cổng bằng Nmap
-p 1-80: Phạm vi cổng muốn quét
111.111.111.10: Địa chỉ IP muốn quét cổng
Xuất hiện 1 cổng mở: Port 22 là ssh
So sánh quét cổng giữa Scapy và Nmap:
Kết quả quét cổng giữa Nmap và Scapy giống nhau. Nmap là một công cụ tập trung
vào việc quét cổng và phân tích mạng, trong khi Scapy tập trung vào việc tạo và phân
tích gói tin mạng. Nmap có giao diện dòng lệnh và cung cấp các tùy chọn mạnh mẽ,
trong khi Scapy cũng có giao diện dòng lệnh nhưng yêu cầu người dùng có kiến thức
cao hơn về giao thức mạng. Kết quả của Nmap thường được hiển thị dễ hiểu và tổ
chức, trong khi Scapy yêu cầu người dùng phân tích kết quả trực tiếp từ các gói tin trả
về.
3.1.2.2. Kịch bản thứ hai
Tấn công DoS
41
Sử dụng Scapy tấn công DoS
Vào máy host 1:

Khai báo địa chỉ IP của host 2

Khai báo port mục tiêu

42
Tạo gói tin tấn công

Gửi gói tin liên tục

Sử dụng wireshark để kiểm tra:

43
Hình 3.34: Các gói tin tấn công host 2 bằng Scapy
Biểu đồ I/O Graph của Scapy

44
Hình 3.35: Biểu đồ I/O Graphs của host 2 khi tấn công bằng Scapy
Sử dụng Hping3 tấn công DoS

-S: Sử dụng giao thức SYN để tạo các gói tin trong cuộc tấn công SYN flood.
10.0.0.2: Đây là địa chỉ IP host 2.
-a 10.0.0.1: Đây là địa chỉ IP host 1 được giả mạo trong gói tin tấn công.

45
-p 80: Đây là số hiệu cổng đích mà cuộc tấn công SYN flood sẽ tấn công. Trong
trường hợp này, cổng đích là 80.
--flood: Tham số này chỉ định rằng cuộc tấn công SYN flood sẽ được thực hiện với tốc
độ tối đa.
Sử dụng Wireshark kiểm tra

Hình 3.36: Các gói tin host 2 khi tấn công bằng Hping3
Biểu đồ I/O Graphs của Hping3

46
Hình 3.37: Biểu đồ I/O Graphs host 2 khi tấn công bằng Hping3
So sánh Scapy và Hping3: Kết quả thu được tương tự như kịch bản tấn công 1. Hping3
vẫn cho gói tin/s cao hơn so với Scapy.
Quét cổng TCP Scan
Sử dụng Scapy để quét cổng:
Khai báo địa chỉ IP host 3

Cổng bắt đầu


47
Cổng kết thúc

Tiến hành quét cổng:

Hiển thị cổng mở:

48
Hiển thị cổng đóng

Hình 3.38: Các cổng đóng của host 3


Sử dụng Nmap để quét cổng TCP Scan:

Hình 3.39: Quét cổng host 3 bằng Nmap


49
-p 1-80: Phạm vi cổng muốn quét.
10.0.0.3: Địa chỉ IP có host 3.
So sánh Scapy và Nmap: cả hai công cụ đều cho ra kết quả giống nhau. Tuy nhiên
khác với kịch bản 1, kịch bản 2 quét cổng vào các host cho ra kết quả các cổng đều
đóng.
3.2. KẾT LUẬN
Bài báo cáo đã thực hiện được một số yêu cầu đã đặt ra như tiến hành tấn công
DoS vào controller, tấn công DoS giữa các host trong mạng SDN. Quét cổng
controller và quét cổng các host. Tấn công Spoofing trong controller. So sánh Scapy
với các công cụ khác như Hping3, dsniff và Nmap. Tuy vậy bài báo cáo vẫn còn nhiều
thiếu sót khi chưa khai thác hết những chức năng mà Scapy mang lại. Chưa thực hiện
được nhiều phương thức tấn công khác. Trong tương lai hi vọng sẽ có cơ hội được tiếp
cận với công cụ Scapy để có thể nghiên cứu và triển khai thực tế với mô hình mạng
SDN.

50
CHƯƠNG 4
4.1. Kết luận
Đề tài đẵ đạt được mục tiêu đề ra:
--
-
-
Qua quá trinh fnghieen cứu chúng tôi đa ….

4.2. HẠN CHẾ VÀ HƯỚNG PHÁT TRIỂN


Đề tài " Nghiên cứu ứng dụng Scapy tạo lưu lượng tấn công kiểm thử an toàn
trong mạng SDN " mở ra nhiều hướng phát triển tiềm năng để nghiên cứu và phát triển
trong tương lai. Chúng ta có thể sử dụng Scapy để phát triển các kịch bản tấn công và
kiểm tra khả năng bảo mật của các mô hình hỗn hợp (hybrid) mạng SDN và công nghệ
khác. Sử dụng Scapy cùng với phương pháp mới như Machine Learning và Deep
Learning để phát hiện tấn công trong mạng SDN. Sử dụng Scapy để tạo dữ liệu mô
phỏng và phát triển các thuật toán phát hiện tấn công dựa trên mô hình học máy. Bằng
cách nghiên cứu các hướng đi trên, chúng ta có thể đóng góp phần vào việc nâng cao
tính bảo mật và khả năng chống tấn công của mạng SDN trong tương lai.

51
TÀI LIỆU THAM KHẢO

[1] Y. W. D. (. Y. Shuai Hao, "SDN Security: A Survey".


[2] C. G. S. F. A. F. M. J. a. X. F. Saad Arshad, "Security Evaluation of OpenFlow-
enabled Software-Defined Networks".
[3] S. E. S. M. M. E. Adel Zaalouk, "SDN-Based Network Attacks and Defense
Mechanisms: A Survey".
[4] P. Biondi, "Scapy: an interactive packet manipulation program".
[5] S. G. R. R. M. M. Rohith Raj S, "SCAPY- A powerful interactive packet".
[6] C. T. Phượng, An toàn mạng.
[7] "https://scapy.net/," [Online].
[8] "https://www.snort.org/," [Online].
[9] Đ. h. G. Định, Đại cương Khoa học máy tính.
[10] K. Z. Y. B. ·. M. B. M. D. E. E. K. Anass Sebbar, "MitM detection and defense
mechanism CBNA-RF based on machine".
[11] G. O. S. S. Sandra Scott-Hayward, "SDN Security: A Survey".

52

You might also like