Xây dựng chương trình hỗ trợ thiết kế mạng, chặn bắt và phân tích gói tin trên mạng... Bộ giao thức TCP/IP.• Ba bước bắt tay tạo lập liên kết : Trước khi hai máy tính có thể truyền thô
Trang 1Báo cáo đồ án tốt ngiệp
Đề tài: “Thiết kế xây dựng ứng dụng tự động
kiểm soát truy cập mạng”
Giáo viên hướng dẫn:
Trang 2Mục đích-Yêu cầu đồ án
1 Nghiên cứu các phương thức truyền tin, phần mềm bắt
gói tin trên mạng WinPcap và công cụ phân tích gói tin PacketX
2 Thiết kế xây dựng ứng dụng hỗ trợ thiết kế mạng cho một
khu vực mạng LAN, tự động kiểm soát truy cập mạng và
hỗ trợ máy chủ có cài đặt chương trình
Trang 3Nội dung báo cáo
1 Nghiên cứu mô hình mạng OSI
2 Bộ giao thức TCP/IP và điểm yếu trong hoạt động của
bộ giao thức TCP/IP
3 Nghiên cứu phần mềm bắt gói tin WinPcap và bộ công
cụ phân tích gói tin PacketX
4 Xây dựng chương trình hỗ trợ thiết kế mạng, chặn bắt và
phân tích gói tin trên mạng
Trang 53 Mô hình mạng OSI
Mô hình mạng OSI
SESSION Các giao thức tầng phiên
APPLICATION Các giao thức tầng ứng dụng
NETWORK Các giao thức tầng mạng
PRESENTATION Các giao thức tầng trình diễn
TRANSPORT Các giao thức tầng giao vận
DATA-LINK Các giao thức tầng liên kết dữ liệu
PHYSICAL Các giao thức tầng vật lý
Trang 6Trên mạng Internet hiện nay, bộ giao thức TCP/IP sử dụng mô hình mạng bốn tầng Mỗi tầng trong mô hình bốn tầng này tương ứng với một hoặc nhiều tầng trong
mô hình mạng OSI Dưới đây là hình ảnh ánh xạ của
mô hình OSI và mô hình bộ giao thức TCP/IP
Mô hình OSI Mô hình cho giao thức TCP/IP
Application
Application Presentation
Session Transport Transport Network Internet
Data-link
Network Interface Physical
Mô hình mạng OSI
Trang 7Bộ giao thức TCP/IP
1 Giao thức IP :
Địa chỉ lớp A 0xxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx Địa chỉ lớp B 10xxxxxx xxxxxxxx xxxxxxxx xxxxxxxx Địa chỉ lớp C 110xxxxx xxxxxxxx xxxxxxxx xxxxxxxx
• Cấu trúc gói dữ liệu IP :
Ver IHL Type of Server Total Length
Identification Flags Fragment offset Time to Live Protocol Header Checksum
Source address Destination address Option + padding
Data
Trang 8• Một số giao thức sử dụng trong mạng IP:
Giao thức ARP (Address Resolution Protocol)
Giao thức RARP (Reverse Address Resolution Protocol)
Giao thức ICMP (Internet Control Message Protocol)
Bộ giao thức TCP/IP
Trang 92 Giao thức TCP :
• TCP là một giao thức có liên kết Nghĩa là cần phải
thiết lập liên kết giữa 2 thực thể TCP trước khi trao đổi DL
• Mội cổng TCP kết hợp với địa chỉ IP tạo thành một
đầu nối TCP/IP (socket) duy nhất trong liên mạng.
• Cấu trúc dữ liệu gói TCP :
Source port Destination port
Sequence number Acknowledgement number Offset Receiver U A P R S F Window
Checksum Urgent Pointer
Option + Padding
Data
Trang 10Bộ giao thức TCP/IP.
• Ba bước bắt tay tạo lập liên kết :
Trước khi hai máy tính có thể truyền thông với nhau
qua một kết nối TCP thì kết nối đó phải được thiết lập Quá trình xử lý việc thiết lập kết nối TCP được chia thành ba bước Mô hình dưới đây minh họa ba bước bắt tay tạo liên kết TCP:
Client
Server
SYN(INS A)
ACK(INS B +1) SYN(INS B) +ACK(INS A+1)
Trang 11Bộ giao thức TCP/IP
• Bốn bước bắt tay giải phóng liên kết :
Để giải phóng một kết nối TCP đã được thiết lập, hai
máy sử dụng bốn bước Mô hình dưới đây minh họa bốn bước bắt tay giải phóng liên kết :
FIN(SN )
Trang 12Một số kỹ thuật tấn công phổ biến
1 Kỹ thuật tấn công dựa trên phân mảnh gói tin :
Kỹ thuật tấn công này dựa trên yêu cầu bảo vệ của bộ lọc IP
• Kỹ thuật phân nhỏ gói tin :
Theo RFC 791, các gói tin dẫn đường có kích thước 68 byte và không có phân đoạn trong đó Kỹ thuật tấn công này sẽ yêu cầu kết nối từ một trong hai phân mảnh của gói tin
Trang 13Một số kỹ thuật tấn công phổ biến
Fragment 1
Ver IHL TOS Total Length
Identification Flags Fragment Offset=0 TTL Protocol Header checksum
Source Address Destination Address
Options Source Port Destination Port
Sequence Number
Trang 14Một số kỹ thuật tấn công phổ biến
Fragment 2
Ver IHL TOS Total Length
Identification Flags Fragment Offset=1 TTL Protocol Header checksum
Source Address Destination Address
Options Acknowlegment Number Data
offset Reserved U0 A0 P0 R0 S1 F0 Window
Checksum Urgent Pointer
Option
Trang 15Một số kỹ thuật tấn công phổ biến
Fragment 1+ Fragment 2
s
Identification Flags Fragment Offset=0TTL Protocol Header checksum
Source Address Destination Address
Options Source Port Destination Port
Sequence Number Acknowlegment Number Data offset Reserved U0 A0 P0 R0 S1 F0 Window
Checksum Urgent Pointer
Option
Trang 16Một số kỹ thuật tấn công phổ biến
• Kỹ thuật phân mảnh – ghi đè gói tin :
Theo RFC 791, nếu hai phân mảnh IP chồng chéo nhau thì phân mảnh thứ 2 sẽ được sử dụng Trong kỹ thuật này
bộ lọc IP sẽ chấp nhận phân mảnh thứ nhất gồm 68 byte Phân mảnh thứ 2 không yêu cầu kết nối TCP (SYS=0,
ACK=0), phân mảnh này chứa dữ liệu cho kết nối thực tế được chấp nhận bởi bộ lọc IP (vì bộ lọc IP xem rằng kết nối chưa được mở) Do đó gói tin tạo ra là yêu cầu kết nối không phụ thuộc vào quy tắc bộ lọc IP.
2 Giả mạo địa chỉ IP
Mục đích chính của kiểu tấn công này là chiếm dụng địa chỉ IP của một máy tính trong mạng
Trang 17Một số kỹ thuật tấn công phổ biến
Nguyên tắc cơ bản của kiểu tấn công này là: Kẻ tấn công có gói tin IP, đã làm thay đổi địa chỉ IP nguồn Do vậy gói tin trả lời sẽ không thể đến được máy tính của kẻ tấn công.
3 Giả mạo ARP:
Kiểu tấn công này còn gọi là chuyển hướng ARP, chuyển hướng giao thông mạng tới máy của kẻ tấn công.
4 Tấn công tràn SYS:
Một kết nối TCP từ client tới máy chủ sẽ được máy chủ lưu vào bộ đệm TCP/IP cho tới khi nó nhận được gói tin cuối cùng có cờ ACK từ client.Tuy nhiên thì nó sẽ không nhận được những gói tin cuối cùng đó vì vậy có rất nhiều kết nối tồn tại trong bộ nhớ của TCP/IP
Trang 18Giới thiệu phần mềm bắt gói tin trên mạng WinPcap và thư viện PacketX
Giới thiệu phần mềm bắt gói tin trên mạng WinPcap và thư viện PacketX
1 Winpcap là thư viện mã nguồn mở dùng để bắt gói tin
và phân tích gói tin trên nền Win32 Winpcap hỗ trợ một số chức năng sau :
• Thu thập những gói dữ liệu thô.
• Lọc gói DL theo yêu cầu trước khi truyền tới ứng dụng.
• Truyền những gói DL thô tới mạng.
• Thu thập thông tin thống kê lưu lượng mạng.
2 Thư viện PacketX là thư viện hỗ trợ lập trình trên cơ sở
phân tích các gói tin Nó được phát triển từ thư viện Winpcap và ẩn đi các hàm làm việc ở mức thấp thay vào
đó là các lớp làm việc ở mức cao do đó dễ dàng cho việc xây dựng các ứng dụng mạng nhanh chóng, hiệu quả
Trang 19Xây dựng chương trình hỗ trợ thiết
2 Giám sát các phiên trao đổi dữ liệu bằng giao thức TCP
3 Hỗ trợ bảo vệ máy tính có cài đặt chương trình
4 Hỗ trợ quản lý mạng Lan trong một tòa nhà
Trang 20Xây dựng chương trình hỗ trợ thiết
• Sơ đồ chức năng của hệ thống :
HỆ THỐNG CHẶN BẮT, PHÂN TÍCH GÓI TIN, HỖ TRỢ QUẢN TRỊ
OFFLINE CỦA CÁC MÁY TÍNH TRONG MẠNG.
GIÁM SÁT CÁC PHIÊN TCP/IP ĐANG HOẠT ĐỘNG.
HỖ TRỢ GIÁM SÁT TRAO ĐỔI
DỮ LIỆU TRÊN MÁY TÍNH ĐƠN CÀI ĐẶT CHƯƠNG TRÌNH.
CÁC CÔNG
CỤ TRỢ GIÚP.
Trang 21Xây dựng chương trình hỗ trợ thiết
HOSTINFO(Chi tiết về một máy tính trong mạng)
1 Hostname String Tên máy
2 ip string Địa chỉ IP
3 mac String Địa chỉ MAC
4 online Boolean Trạng thái online/offline
5 isStop Boolean Trạng thái bị chặn/không
6 Connected Boolean Trạng thái connect với máy chủ
Chi tiết về một máy tính trong mạng
Trang 22Xây dựng chương trình hỗ trợ thiết
Chi tiết về một phiên truyền nhận dữ liệu
PACKETINFO(Chi tiết về một phiên truyền nhận DL)
1 SrcIP String Địa chỉ IP nguồn
2 DesIP String Địa chỉ IP đích
3 SrcPort int Cổng nguồn
4 DesPort Int Cổng đích
5 TimeStart DateTime Thời điểm nhận được gói tin đầu
6 TimeStop DateTime Thời điểm nhận được gói tin cuối
7 Datasize Int Tổng số gói tin
8 SrcMAC String Địa chỉ mac nguồn
9 DesMAC String Địa chỉ mac đích
10 Protocol String Protocol
Trang 23Xây dựng chương trình hỗ trợ thiết
Trang 24Xây dựng chương trình hỗ trợ thiết
2 Giám sát các phiên trao đổi DL bằng giao thức TCP
Trên cơ sở các gói tin nhận được, chương trình phân tích chi tiết trong header của các gói tin, đưa ra thông tin
về những phiên trao đổi dữ liệu bằng giao thức TCP/IP diễn ra trong mạng
Trang 25Xây dựng chương trình hỗ trợ thiết
3 Hỗ trợ máy tính có cài đặt chương trình
Chức năng này cho phép người sử dụng ngăn chặn sự trao đổi DL giữa các máy tính trong mạng với máy tính
có cài đặt chương trình
Trang 26Xây dựng chương trình hỗ trợ thiết
4 Hỗ trợ quản lý mạng trong một tòa nhà:
Chức năng cho phép người dùng thiết kế mạng trong mỗi phòng của một khu vực, hỗ trợ cho người quản trị một cách trực quan hệ thống mạng trong một khu vực
Trang 27Kết luận
• Kết quả đạt được :
Nắm được nguyên lý hoạt động của mạng MT và các
vấn đề về bảo mật mạng MT
Xây dựng được một số công cụ trợ giúp quản trị mạng:
Thiết kế mạng Lan cho một khu vực (tòa nhà…)
Kiểm soát trạng thái online/offline của các MT trong
mạng
Xây dựng công cụ hỗ trợ cho máy tính có cài đặt CT
• Hướng phát triển :
Hoàn thiện các chức năng đã có
Xây dựng các công cụ tấn công máy tính trong mạng
Triển khai trên môi trường mạng không dây
Trang 28Lời cảm ơn
Cuối cùng em xin chân thành cảm ơn thầy giáo
CNTT đã tận tình giúp đỡ em trong quá trình thực hiện
đồ án