« Home « Kết quả tìm kiếm

Nghiên cứu các giải pháp chống tấn công DNS trong hệ thống mạng điều khiển bằng phần mềm


Tóm tắt Xem thử

- 24 1.3.1 Bản tin PacketIn.
- 24 1.3.2 Bản tin PacketOut.
- 25 1.3.3 Bản tin FlowRemoved.
- 27 1.3.4 Bản tin FlowMod.
- 32 1.3.6 Bản tin StatsResponse.
- 82 Luận văn cao học năm 2018 Vũ Thành Tựu – Khóa 2016B – Khoa ĐTVT Trang 7 DANH MỤC HÌNH VẼ Hình 1.1 Sự phân tách trong kiến trúc mạng SDN.
- 10 Hình 1.2 Kiến trúc mạng SDN.
- 11 Hình 1.3 So sánh mạng SDN với mạng truyền thống.
- 12 Hình 1.4 Kiến trúc OpenFlow Switch.
- 17 Hình 1.5 Ví dụ về Flow table trong OpenFlow Switch.
- 19 Hình 1.6 Ví dụ về hoạt động của OpenFlow Switch.
- 20 Hình 1.7 Quá trình xử lý Pipeline trong Flow Table.
- 21 Hình 1.8 Bản tin PacketIn.
- 24 Hình 1.9 Cấu trúc bản tin PacketIn.
- 24 Hình 1.10 Bản tin PacketOut.
- 25 Hình 1.11 Cấu trúc bản tin PacketOut.
- 26 Hình 1.12: Hoạt động của bản tin FlowRemoved.
- 27 Hình 1.13: Cấu trúc bản tin FlowRemoved.
- 28 Hình 1.14: Hoạt động của FlowMod.
- 29 Hình 1.15: Cấu trúc bản tin FlowMod.
- 30 Hình 1.16: Hoạt động của bản tin StatsRequest.
- 32 Hình 1.17: Cấu trúc bản tin StatsRequest.
- 32 Hình 1.18: Hoạt động của bản tin StatsResponse.
- 33 Hình 1.19: Phần body của bản tin StatsResponse.
- 33 Hình 2.1 Ví dụ về DNS.
- 36 Hình 2.3 Mô tả về DNS Server.
- 38 Hình 2.4 Cách thức hoạt động của hệ thống DNS.
- 39 Hình 3.1 Kiến trúc mạng SDN/OpenFlow giả lập.
- 54 Hình 3.2 Board mạch NetFPGA.
- 55 Hình 3.3 Kiến trúc tổng thể hệ thống giả lập.
- 57 Hình 3.4: Cấu trúc bản tin FlowMod.
- 57 Hình 3.5 Cấu trúc Agent- Collector của sFlow.
- 59 Hình 3.6 Các tùy chọn sử dụng để phát tấn công.
- 62 Hình 3.7 Giao diện phần mềm Wireshark.
- 64 Luận văn cao học năm 2018 Vũ Thành Tựu – Khóa 2016B – Khoa ĐTVT Trang 8 Hình 3.8 Cửa sổ sử dụng TCPReplay để phát lại gói tin.
- 65 Hình 3.9 Cửa sổ sử dụng TCPReplay để phát lại gói tin.
- 68 Hình 3.12: Giao diện Speedometer.
- 70 Hình 3.14 Giao diện hoạt động của Tcpdump.
- 73 Hình 3.16 Hệ thống giả lập tấn công trong mạng SDN- Security Rack.
- 77 Hình 3.17 Giao diện phần mềm Moba Xterm.
- 79 Hình 3.19 Các gói tin thu được trên Wireshark.
- 83 Luận văn cao học năm 2018 Vũ Thành Tựu – Khóa 2016B – Khoa ĐTVT Trang 9 DANH MỤC CÁC TỪ VIẾT TẤT Từ viết tắt Tiếng anh Nghĩa Tiếng Việt CapEx Capital Expenditures Chi phí triển khai CPU Center Processing Unit Bộ xử lý trung tâm DNS Domain Name System Hệ thống phân giải tên miền DNSSEC The Domain Name System Security Extensions Hệ Thống tên miền bảo mật mở rộng DoS Distributed Denial of Service Từ chối dịch vụ FPGA Field Progammable Gate Array Cấu trúc mảng phần tử logic lập trình được ID Identification Địa chỉ mạng IDS Intrution Detection System Hệ thống phát hiện xâm nhập IP Internet Protocol Giao thức Internet MAC Media Access Control Kiểm soát truy cập OpEx Operating Expenditures Chi phí hoạt động SDN Software Defined Networking Mạng định nghĩa bằng phần mềm SSL Secure Sockets Layer Lớp cổng bảo mật TCP Transmission Control Protocol Giao thức điều khiển truyền vận TLS Transport Layer Security Giao thức bảo mật TTL Time To Live Thời gian cập nhật UDP User Datagram Protocol Giao thức gói tin người dùng Luận văn cao học năm 2018 Vũ Thành Tựu – Khóa 2016B – Khoa ĐTVT Trang 10 CHƯƠNG 1.
- Hình 1.1 Sự phân tách trong kiến trúc mạng SDN Cơ chế điều khiển (Control Plane): Là thành phần điều khiển với các giải thuật và giao thức dùng để tính toán và lưu trữ các thông tin định tuyến lên bảng FIB (Forwarding Information Base) nhằm xác định đường đi cho mỗi gói tin trong Data Plane.
- Đối với Switch thì Control Plane đơn giản là cơ chế tự học MAC thông qua việc Broadcast gói tin còn đối với Router thì Control Plan là các giao thức định tuyến như OSPF, EIGRP, BGP.
- Lớp cơ sở hạ tầng: Là các thiết bị mạng thực tế (vật lý hay ảo hóa) thực hiện việc chuyển tiếp gói tin theo sự điều khiển của lớp điểu khiển.
- Secure Channel: kênh kết nối thiết bị tới bộ điều khiển (controller), cho phép các lệnh và các gói tin được gửi giữa controller và thiết bị.
- Hình 1.4 Kiến trúc OpenFlow Switch Luận văn cao học năm 2018 Vũ Thành Tựu – Khóa 2016B – Khoa ĐTVT Trang 18 Có ba loại tập hợp các flow tables.
- Một flow table sẽ ghép các gói tin tới với một flow nhất định và chỉ định các chức năng được thực hiện trên các gói tin đó.
- Chuyển các gói tin của một flow tới port (hoặc các port) đã chỉ định.
- Điều này cho phép các gói tin được định tuyến qua mạng.
- Đóng gói và chuyển tiếp các gói tin của flow tới controller.
- Gói tin sẽ được đưa tới Secure Channel, tại đó nó được đóng gói và gửi tới controller.
- Điển hình như gói tin đầu tiên của mỗi flow mới sẽ được gửi tới controller để được quyết định xem liệu flow có được đưa vào trong flow table hay không.
- Hủy các gói tin của flow.
- Luận văn cao học năm 2018 Vũ Thành Tựu – Khóa 2016B – Khoa ĐTVT Trang 19 Hình 1.5 Ví dụ về Flow table trong OpenFlow Switch Các switch hỗ trợ OpenFlow có 2 loại: OpenFLow-only và OpenFlow-hybrid.
- Switch OpenFlow-only chỉ hoạt động theo OpenFlow, ở những switch loại này, tất cả gói tin được xử lý bởi OpenFlow pipeline, và không thể xử lý theo các khác.
- Ví dụ, một switch có thể sử dụng VLAN tag hoặc cổng ra của gói tin để quyết định cách thức xử lý sử dụng pipeline hoặc cách khác, hoặc nó có thể chuyển tiếp tất cả gói tin tới OpenFlow pipeline.
- Một switch OpenFlow-hybrid có thể cho phép gói tin đi từ OpenFlow pipeline tới chuyển mạch thông thường thông qua các cổng reserved port như NORMAL hoặc FLOOD.
- Luận văn cao học năm 2018 Vũ Thành Tựu – Khóa 2016B – Khoa ĐTVT Trang 21 Hình 1.7 Quá trình xử lý Pipeline trong Flow Table Quá trình xử lý trong pipeline luôn bắt đầu với xử lý ingress ở bảng flow table đầu tiên, gói tin đầu tiên phải match với entry flow trong bảng flow table .
- Nếu không có egress table nào, gói tin phải được xử lý bởi output port, và hầy hết là chuyển tiếp gói tin ra bên ngoài switch.
- Nếu có một egress table được cấu hình là bảng egress table đầu tiên, thì gói tin phải match với các flow entry trong bảng đó, và các bảng egress còn lại có thể được sr dụng phụ thuộc vào đầu ra ở flow table.
- Khi được xử lý bởi flow table, gói tin được match với các flow entry để chọn ra flow entry phù hợp.
- Những instruction này có thể chuyển hướng gói tin tới flow table khác, nơi mà quá trình xử lý lại được lặp lại.
- Một flow entry có thể chỉ chuyển hướng một gói tin tới một bảng flow table có số lớn hơn table của chính Luận văn cao học năm 2018 Vũ Thành Tựu – Khóa 2016B – Khoa ĐTVT Trang 22 nó, hay nói cách khác là xử lý trong pipeline chỉ có chuyển tiếp chứ không có quay lại.
- Nếu flow entry match mà không chuyển hướng gói tin tới bảng khác, trạng thái hiện tại của pipeline sẽ dừng lại ở bảng này, gói tin được xử lý với action liên kết trong với nó và thường được chuyển tiếp đi.
- Nếu một gói tin không match với flow entry trong bảng, bảng sẽ bị bỏ qua.
- Các instruction trong flow entry của bảng này có thể linh hoạt xác định cách xử lý các gói tin không match, tùy chọn hữu ích là drop gói tin, đưa tới bảng khác hoặc gửi tới controller thông qua kênh control channel thông qua gói tin packet-in.
- Trong các trường hợp gói tin không được xử lý đầy đủ bởi flow entry và xử lý pipeline ngừng lại mà không xử lý action cho gói tin hoặc gửi tới một bảng khác.
- Hoặc nếu không có action với gói tin không match với flow entry thì gói tin sẽ bị drop.
- Nếu TTL vẫn còn hiệu lực, gói tin có thể được gửi tới controller.
- Quá trình xử lý trong pipeline định nghĩa cách mà các gói tin tương tác với các flow table này.
- Các flow table được đánh số để các gói tin đi qua, bắt đầu từ 0.
- Một bảng flow table gồm các flow entry: Luận văn cao học năm 2018 Vũ Thành Tựu – Khóa 2016B – Khoa ĐTVT Trang 23 Mỗi flow table gồm các cột sau: Match field: để so sánh với các gói tin.
- Counters: được cập nhật khi các gói tin được match.
- Không sử dụng khi xử lý các gói tin.
- Instruction có thể chứa các action được thực hiện trên gói tin ở một vài điểm của của pipeline.
- Luận văn cao học năm 2018 Vũ Thành Tựu – Khóa 2016B – Khoa ĐTVT Trang 24 1.3 Các bản tin trao đổi giữa OpenFlow Switch và Controller [6].
- Có hai lý do để thực hiện điều này: Một gói tin match với một flow entry và flow entry đó có action gửi lên Controller hoặc một gói tin match với table_miss và trong table_miss có action là gửi lên Controller.
- Hình 1.9 Cấu trúc bản tin PacketIn Trong đó: Header: Là header tiêu chuẩn của giao thức openflow Luận văn cao học năm 2018 Vũ Thành Tựu – Khóa 2016B – Khoa ĐTVT Trang 25 Buffer_id: Là giá trị bộ đệm –lưu trữ gói tin được match mà được sử dụng bởi các datapath để các định vị trí đệm của gói tin.
- Một gói tin được match có thể được đệm vào bộ đệm hoặc không.
- Khi một gói tin được đệm vào bộ đệm thì một phần dữ liệu của gói tin đó sẽ được nằm trong phần data của bản tin PacketIn.
- Nếu gói tin không được đệm vào bộ đệm do bộ đệm không có sẵn hoặc do yêu cầu thì toàn bộ gói tin sẽ nằm trong phần data của gói tin PacketIn và khi đó trường buffer_id sẽ có giá trị là OFP_NO_BUFFER.
- Total_len: Tổng kích thước gói tin PacketIn.
- OFPR_INVALID_TTL = 2: Gói tin có TTL không hợp lệ.
- Table_id: Table gửi gói tin này.
- Match: Phản ánh tiêu đề của gói tin.
- Data: Nội dung của gói tin.
- Trong đề tài này tôi sử dụng bản tin PacketIn để gửi toàn bộ gói tin SYN và gói tin SYN_ACK lên Controller.
- 1.3.2 Bản tin PacketOut Hình 1.10 Bản tin PacketOut Luận văn cao học năm 2018 Vũ Thành Tựu – Khóa 2016B – Khoa ĐTVT Trang 26 Bản tin PacketOut được gửi từ Controller tới Switch dung để hướng dẫn gói tin đi như thế nào trong mạng.
- Bản tin này không dùng để thiết lập entry trên Switch mà chỉ gửi gói tin ra ngoài Switch.
- Buffer_id: Là giá trị bộ đệm –lưu trữ gói tin được match mà được sử dụng bởi các datapath để các định vị trí đệm của gói tin.
- Luận văn cao học năm 2018 Vũ Thành Tựu – Khóa 2016B – Khoa ĐTVT Trang 27 In_port: Là port đầu vào mà được liên kết với gói tin.
- Là một danh sách các Action định nghĩa các gói tin nên được xử lý như thế nào bởi Switch.
- Trường dữ liệu của gói tin Trong đề tài này, tôi sử dụng bản tin này để gửi các gói tin TCP có cờ SYN, cờ SYN_ACK, cờ ACK, cờ RST ra ngoài cổng Switch mà không thiết lập entry trên Switch.
- 1.3.3 Bản tin FlowRemoved.
- Hình 1.12: Hoạt động của bản tin FlowRemoved Cấu trúc bản tin FlowRemoved được mô tả như bên dưới: Luận văn cao học năm 2018 Vũ Thành Tựu – Khóa 2016B – Khoa ĐTVT Trang 28 Hình 1.13: Cấu trúc bản tin FlowRemoved Trong đó: Header: Là header tiêu chuẩn của giao thức openflow.
- Idle_timeout được định nghĩa là khoảng thời gian lớn nhất giữa hai gói tin liên tiếp của một flow.
- Packet_count: Số lượng gói tin mà match flow entry đó trước khi bị xóa khỏi table.
- Hình 1.14: Hoạt động của FlowMod Cấu trúc bản tin FlowMod được mô tả như bên dưới: Luận văn cao học năm 2018 Vũ Thành Tựu – Khóa 2016B – Khoa ĐTVT Trang 30 Hình 1.15: Cấu trúc bản tin FlowMod Table_id: Chỉ ra table mà flow entry được chèn vào, bị sửa đổi hoặc bị xóa.
- Buffer_id: Chỉ ra gói tin được đệm ở Switch và gửi lên Controller bằng bản tin Packet_in

Xem thử không khả dụng, vui lòng xem tại trang nguồn
hoặc xem Tóm tắt