Đồ án tốt nghiệp đại học “thiết kế xây dựng ứng dụng tự động kiểm soát truy cập mạng”

61 1.1K 3
Đồ án tốt nghiệp đại học “thiết kế xây dựng ứng dụng tự động kiểm soát truy cập mạng”

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

MỤC LỤC MỞ ĐẦU 2 CHƯƠNG :I LÝ THUYẾT MẠNG MÁY TÍNH 4 .1 Khái niệm cơ bản: 4 .2 Kiến trúc mạng máy tính: 4 .3 Topology của mạng: 5 .4 Giao thức mạng: 6 .5 Mô hình OSI: 6 CHƯƠNG :II CÁC GIAO THỨC PHỔ BIẾN TRONG HOẠT ĐỘNG MẠNG MÁY TÍNH 9 .1 Giao thức IP: 9 .2 Giao thức TCP: 17 .3 Giao thức HTTP: 23 .4 Truyền email trên Internet –giao thức POP3: 30 .5 Giao thức POP3: 32 CHƯƠNG :III MỘT SỐ KỸ THUẬT TẤN CÔNG PHỔ BIẾN 35 .1 Kỹ thuật tấn công dựa trên phân mảnh gói tin: 35 .2 Giả mạo địa chỉ IP(IP Spoofing): 39 .3 Chiếm phiên TCP(TCP Session Hijacking): 41 .4 Giả mạo ARP(Arp Spoofing): 44 .5 Giả mạo DNS(DNS Spoofing): 45 .6 Tấn công mức ứng dụng(Application attacks): 47 .7 Tấn công từ chối dịch vụ(Denial Of Service): 49 CHƯƠNG :IV XÂY DỰNG CHƯƠNG TRÌNH HỖ TRỢ QUẢN TRỊ MẠNG 52 .1 Giới thiệu phần mềm bắt gói tin Winpcap và thư viện hỗ trợ lập trình PacketX 52 .2 Mô tả hệ thống 54 .3 Phân tích hệ thống: 56 .4 Xây dựng chương trình: 58 KẾT LUẬN 60 TÀI LIỆU THAM KHẢO 61 Sách điện tử: 61 Trang web: 61 1 MỞ ĐẦU Ngày nay, Công nghệ Thông tin đã thực sự đi vào hầu hết mọi lĩnh vực trong cuộc sống. Nó là công cụ, là phương tiện không thể thiếu được trong xã hội và đã đạt được những thành tựu to lớn trong mọi lĩnh vực như phát triển khoa học kỹ thuật, kinh tế, văn hoá,… Tuy nhiên, bên cạnh những lợi ích thiết thực do mạng Internet đem lại, chúng ta cũng không thể không kể đến những tác hại do những hacker hay các virus gây ra. Với những hoạt động truy cập mạng bất cẩn, hay sự thiếu hiểu biết về bảo mật thông tin của người quản trị mạng có thể là nguyên nhân gây ra những thiệt hại không thể lường trước được cả về mặt thời gian cũng như vật chất. Hậu quả không chỉ là những mất mát các thông tin nhậy cảm, mà có thể mất toàn bộ dữ liệu hay nghiêm trọng hơn là tê liệt toàn bộ hệ thống. Trong xu hướng hiện nay, vấn đề bảo đảm an ninh cho mạng máy tính đã trở thành một vấn đề quan tâm của các chuyên gia đầu ngành trong lĩnh vực CNTT của Việt Nam cũng như trên thế giới. Được sự hướng dẫn tận tình của, em đã chọn đề tài: “Thiết kế xây dựng ứng dụng tự động kiểm soát truy cập mạng” cho đồ án tốt nghiệp của mình. Đồ án tập trung nghiên cứu các vấn đề chính sau: - Nghiên cứu mô hình mạng OSI - Bộ giao thức TCP/IP và các điểm yếu trong hoạt động của giao thức TCP/IP. - Một số giao thức mức ứng dụng: HTTP, POP3. - Nghiên cứu phần mềm bắt gói tin trên mạng Winpcap và bộ công cụ phân tích gói tin PacketX. 2 - 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. Vấn đề chặn bắt, phân tích gói tin trên mạng là một vấn đề khó khi các bộ phần mềm hỗ trợ cho việc bắt gói tin còn ít, môi trường thực hành còn hạn chế, đồng thời do kinh nghiệm làm việc của bản thân cũng như kiến thức về lĩnh vực bảo mật còn nhiều thiếu sót. Do vậy, đề tài không tránh khỏi có những sai sót. Em rất mong nhận được sự đóng góp ý kiến của thầy cô giáo và các bạn để đề tài được hoàn thiện. Cuối cùng, em xin chân thành cảm ơn các thầy cô giáo khoa Công nghệ thông tin, đặc biệt là thầy giáo PGS-TS đã tận tình giúp đỡ em trong quá trình thực hiện đồ án. 3 CHƯƠNG :I LÝ THUYẾT MẠNG MÁY TÍNH .1 Khái niệm cơ bản: Sự kết hợp của máy tính với các hệ thống truyền thông (communication) đặc biệt là viễn thống (telecommunication) đã tạo ra một sự chuyển biến có tính cách mạng trong vấn đề tổ chức khai thác và sử dụng các hệ thống máy tính. Một môi trường làm việc nhiều người sử dụng phân tán đã hình thành cho phép nâng cao hiệu quả khai thác tài nguyên chung từ những vị trí địa lý khác nhau. Các hệ thống như thế được gọi là các mạng máy tính (computernetworks). Mạng máy tính là một tập hợp các máy tính được nối với nhau bởi đường truyền theo một cấu trúc nào đó và thông qua đó các máy tính trao đổi thông tin qua lại cho nhau. Mô hình mạng máy tính .2 Kiến trúc mạng máy tính: Kiến trúc mạng máy tính (network architecture) thể hiện cách nối các mạng máy tính với nhau ra sao và tập hợp các quy tắc, quy ước mà tất cả các thực thể tham gia truyền thông trên mạng phải tuân theo để đảm bảo cho mạng hoạt động tốt. 4 Cách nối các máy tính được gọi là hình trạng (topology) của mạng. Còn tập hợp các quy tắc, quy ước truyền thông thì được gọi là giao thức (protocol) của mạng. Topo và giao thức mạng là hai khái niệm rất cơ bản của mạng máy tính. .3 Topology của mạng: Có hai kiểu nối mạng chủ yếu là điểm - điểm (point – to – point) và quảng bá (broadcast hay point – to – multipoint). Theo kiểu điểm - điểm, các đường truyền nối từng cặp nút với nhau và mỗi nút đều có trách nhiệm lưu trữ tạm thời sau đó chuyển tiếp dữ liệu tạm thời sau đó chuyển tiếp dữ liệu đi cho tới đích. Do các thức làm việc như thế nên mạng này còn gọi là mạng “lưu và chuyển tiếp” (store – and – forward). Hình sau đây minh hoạ topo kiểu mạng điểm - điểm Theo kiểu quảng bá, tất cả các nút phân chia chung một đường truyền vật lý. Dữ liệu được gửi đi từ một nút nào đó sẽ có thể được tiếp nhận bởi tất cả các nút còn lại, bởi vậy chỉ ra địa chỉ đích của dữ liệu để mỗi nút căn cứ vào đó để kiểm tra xem dữ liệu có phải dành cho mình hay không? Hình sau minh hoạ một số topo mạng kiểu quảng bá. 5 loop(chu trình) Star (Hình sao) Tree (Cây) Ring (vòng) Bus (xa lộ) .4 Giao thức mạng: Việc trao đổi thông tin, cho dù là đơn giản nhất, cũng đều phải tuân theo những quy tắc nhất định. Việc truyền tín hiệu trên mạng, cần phải có những quy tắc, quy ước về nhiều mặt, từ khuôn dạng (cú pháp, ngữ nghĩa) của dữ liệu cho tới các thủ tục gửi, nhận dữ liệu kiểm soát hiệu quả và chất lượng truyền tin và xử lý các lỗi và các sự cố, yêu cầu về quy tắc càng nhiều và phức tạp hơn. Tập hợp tất cả những quy tắc, quy ước đó được gọi là giao thức (protocol) của mạng. Rõ ràng là các mạng có thể sử dụng các giao thức khác nhau tuỳ sự lựa chọn của người thiết kế. Trên thực tế, giao thức phổ biến hiện nay được sử dụng rộng rãi trong mạng Internet cũng như các mạng nội bộ là bộ giao thức TCP/IP. .5 Mô hình OSI: Kiến trúc phân tầng: Để giảm độ phức tạp của việc thiết kế và cài đặt mạng , hầu hết các mạng máy tính hiện có đều được phân tích thiết kế theo quan điểm phân tầng (layering). Mỗi hệ thống thành phần của mạng được xem như là một cấu trúc đa tầng, trong đó mỗi tầng được xây trên tầng trước nó. Số lượng tầng và chức năng của mỗi tầng là phụ thuộc vào các nhà thiết kế. Nguyên tắc của kiến trúc mạng phân tầng là : mỗi hệ thống trong một mạng đều có cấu trúc tầng (số lượng tầng, chức năng của mỗi tầng là như nhau). Sau khi xác định số lượng tầng và chức năng của mỗi tầng thì công việc quan trọng tiếp theo là định nghĩa mối quan hệ (giao diện) giữa hai tầng đồng mức ở hai hệ thống kết nối với nhau. Trong thực tế dữ liệu không được truyền trực tiếp từ tầng thứ i của hệ thống này sang tầng thứ i của hệ thống kia và ngược lại (trừ đối với tầng thấp nhất trực tiếp sử dụng đường truyền vật lý để truyền các xâu bít (0,1) từ hệ thống này sang hệ thống khác). Ở đây quy ước dữ liệu ở bên hệ thống gửi (sender) được 6 truyền sang hệ thống nhận (receiver) bằng đường truyền vật lý và cứ thế đi ngược lên các tầng trên. Như vậy giữa 2 hệ thống kết nối với nhau chỉ có tầng thấp nhất mới có liên kết vật lý, còn ở các tầng cao hơn chỉ là những liên kết logic (hay liên kết ảo) được đưa vào để hình thức hoá các hoạt động của mạng thuận tiện cho việc thiết kế và cài đặt các phần mềm truyền thông. Mô hình OSI: Khi thiết kế, các nhà thiết kế tự do lựa chọn kiến trúc mạng riêng của mình. Từ đó dẫn đến tình trạng không tương thích giữa các mạng: phương pháp truy nhập đường truyền khác nhau, sử dụng họ giao thức khác nhau sự không tương thích đó làm trở ngại cho sự tương tác của người sử dụng các mạng khác nhau. Nhu cầu trao đổi thông tin càng lớn thì trở ngại đó càng không thể chấp nhận được đối với người sử dụng. Năm 1984, ISO đã xây dựng xong mô hình tham chiếu cho việc nối kết các hệ thống mở (Reference Model For Open Systems Interconnection hay OSI Reference Model). Mô hình này được dùng làm cơ sở để nối kết các hệ thống mở phục vụ cho các ứng dụng phân tán. Từ “mở” ở đây nói lên khả năng hai hệ thống có thể nối kết để trao đổi thông tin với nhau nếu chúng tuân thủ mô hình tham chiếu và các chuẩn liên quan. Các nguyên tắc ISO quy định trong quá trình xây dựng mô hình OSI : • Không định nghĩa quá nhiều tầng để việc xác định và ghép nối các tầng không quá phức tạp. • Tạo các ranh giới các tầng sao cho việc giải thích các phục vụ và số các tương tác qua lại hai tầng là nhỏ nhất. • Tạo các tầng riêng biệt cho các chức năng khác biệt nhau hoàn toàn về kỹ thuật sử dụng hoặc quá trình thực hiên. • Các chức năng giống nhau được đặt trong cùng một tầng. 7 • Lựa chọn ranh giới các tầng tại các điểm mà những thử nghiệm trong quá khứ thành công. • Các chức năng được xác định sao cho chúng có thể dễ dàng xác định lại, và các nghi thức của chúng có thể thay đổi trên mọi hướng. • Tạo ranh giới các tầng mà ở đó cần có những mức độ trừu tượng khác nhau trong việc sử dụng số liệu. • Cho phép thay đổi các chức năng hoặc giao thức trong tầng không ảnh hưởng đến các tầng khác. • Tạo các ranh giới giữa mỗi tầng với tầng trên và dưới nó. Mô hình OSI bẩy tầng Trê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, bao gồm các tầng: ứng dụng, giao vận, internet, và tầng vật 8 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ý lý. 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 OSI. Dưới đây là hình ảnh ánh xạ của mô hình OSI bẩy tầng với mô hình bốn tầng được sử dụng trong mạng Internet hiện nay. Mô hình OSI Mô hình cho giao thức TCP/IP Application ApplicationPresentation Session Transport Transport Network Internet Data-link Network Interface Physical Tương quan giữa mô hình OSI và mô hình giao thức TCP/IP. CHƯƠNG :II CÁC GIAO THỨC PHỔ BIẾN TRONG HOẠT ĐỘNG MẠNG MÁY TÍNH .1 Giao thức IP: Tổng quan về giao thức IP: Mục đích chính của giao thức IP là kết nối các mạng con thành liên mạng. Giao thức IP nằm trong tầng mạng(network) của mô hình OSI. Giao thức IP là giao thức kiểu không liên kết(connectionless), tức là không có giai đoạn thiết lập liên kết trước khi truyền dữ liệu. 9 Khi một máy tính tham gia vào trao đổi dữ liệu trong mạng, nó sử dụng một bộ điều hợp mạng(network adapter). Mỗi một bộ điều hợp mạng này được gắn với một địa chỉ vật lý cố định và duy nhất, do nhà sản xuất quyết định. Trong mạng cục bộ, những nơi chỉ chú trọng vào phần cứng sẽ vận chuyển dữ liệu theo mạng vật lý nhờ sử dụng địa chỉ vật lý của bộ điều hợp. Có nhiều loại mạng và mỗi mạng có cách thức vận chuyển dữ liệu khác nhau. Ví dụ, một mạng Ethernet, một máy tính gửi thông tin trực tiếp tới bộ phận trung gian. Bộ điều phối mạng của mỗi máy tính sẽ lắng nghe tất cả các tín hiệu truyền qua lại trong mạng cục bộ để xác định thông tin nào có địa chỉ nhận giống của mình. Tất nhiên, với những mạng rộng hơn, các bộ điều hợp không thể lắng nghe tất cả các thông tin. Khi các bộ phận trung gian trở nên quá tải với số lượng máy tính được thêm mới, hình thức hoạt động này không thể hoạt động hiệu quả. Các nhà quản trị mạng thường phải chia vùng mạng bằng cách sử dụng các thiết bị như bộ định tuyến để giảm lượng giao thông. Trên những mạng có định tuyến, người quản trị cần có cách để chia nhỏ mạng thành những phần nhỏ (gọi là tiểu mạng) và thiết lập các cấp độ để thông tin có thể di chuyển tới đích một cách hiệu quả. TCP/IP cung cấp khả năng chia tiểu mạng thông qua địa chỉ logic. Một địa chỉ logic là địa chỉ được thiết lập bằng phần mềm của mạng. Trong TCP/IP, địa chỉ logic của một máy tính được gọi là địa chỉ IP. Địa chỉ IP: Địa chỉ IP là một chuỗi 32bits, được sử dụng để định danh các máy tính trong mạng. Mỗi giao diện trong một máy tính có hỗ trợ giao thức IP đều phải được gán 1 địa chỉ IP (một máy tính có thể gắn với nhiều mạng do vậy có thể có nhiều địa chỉ IP). Địa chỉ IP gồm 2 phần: địa chỉ mạng (netid) và địa chỉ máy (hostid). Mỗi địa chỉ IP có độ dài 32 bits được tách thành 4 10 [...]... khi dòng đầu tiên và cặptự CRLF được gửi đi, các dòng thêm vào được gửi đi, mỗi dòng kết thúc bằng một cặp CRLF Dòng cuỗi cùng là ký tự “.” Và cặptự CRLF Nếu có dòng nào bắt đầu bằng ký tự “.” Thì phải kiểm tra xem có cặptự kết thúc CRLF hay không Một POP3 session sẽ phải trải qua các trạng thái: xác nhận(Authorization), giao dịch(transaction), và trạng thái cập nhật(Update) Trong trạng... P: Chức năng PUSH • R: Khởi động lại (reset) liên kết • S: Đồng bộ hóa số hiệu tuần tự (sequence number) • F: Không còn dữ liệu từ trạm nguồn • Window(16 bits): Cấp phát credit để kiểm soát nguồn dữ liệu (cơ chế cửa sổ) Đây chính là số lượng các byte dữ liệu, bắt đầu từ byte được chỉ ra trong vùng ACK number, mà trạm nguồn đã sẵn sàng để nhận • Checksum(16 bits): Mã kiểm soát lỗi cho toàn bộ segment... TCP là một giao thức "có liên kết" (connection - oriented), nghĩa là cần phải thiết lập liên kết giữa hai thực thể TCP trước khi chúng trao đổi dữ 17 liệu với nhau Một tiến trình ứng dụng trong một máy tính truy nhập vào các dịch vụ của giao thức TCP thông qua một cổng (port) của TCP Số hiệu cổng TCP được thể hiện bởi 2 bytes Cổng truy cập dịch vụ TCP Một cổng TCP được kết hợp với địa chỉ IP tạo thành... tay kết thúc kết nối, Client sẽ gửi một gói tin có cờ ACK được bật, với ACK number bằng giá trị của Sequence number +1 21 FIN(S N) ACK(SN+1 ) FIN(SN) ACK(SN+1 ) Client Server Bốn bước bắt tay giải phóng liên kết TCP Các cờ của gói tin TCP: • SYN: Cờ SYN được sử dụng trong gói tin đầu tiên của kết nối, cho biết một máy tính muấn có một kết nối TCP với máy chủ nhận gói tin này • ACK: Cờ ACK được sử dụng. .. phiên kết nối Cho biết đã nhận được gói tin trước đó • FIN: Cờ FIN được sử dụng khi một trong hai máy tính đã hoàn thành quá trình gửi dữ liệu, kết nối sau đó sẽ được đóng lại một cách bình thường 22 • RST: Cờ RST được sử dụng khi một trong hai máy tính nhận được gói tin không mong muấn Gói tin có cờ RST sẽ thực hiện reset lại kết nối và hai máy tính có thể thực hiện lại kết nối nếu cần • SYN|ACK: Sự kết... SYN|ACK: Sự kết hợp hai cờ SYN và ACK được sử dụng để thông báo lại cho máy tính khác biết đã nhận được gói tin SYN trước đó và gửi lại thông tin chấp nhận kết nối • FIN|ACK: Hai cờ FIN và ACK được liên kết để thông báo đã nhận được gói tin có cờ FIN trước đó và hoàn thành việc đóng kết nối • URG: Cờ này hiếm khi được sử dụng trong kết nối thông thường Nó được sử dụng để thông báo có một vùng dữ liệu khẩn... với yêu cầu • Trạng thái đáp ứng: Một mã đáp ứng ba con số, tương tự mã đáp ứng bởi FTP và SMTP, cộng thêm thông tin văn bản • Phần thân thực thể(entity body): dữ liệu được gửi trả lại HTTP client Không phải tất cả các đáp ứng đều được gửi trả lại dữ liệu, do đó, thành phần này là tuỳ chọn Các phương pháp truy n dữ liệu: Ta chỉ quan tâm tới hai phương pháp hay được sử dụng là phương pháp GET và phương... HTTP và đáp ứng HTTP sử dụng header để gửi thông tin về thông báo HTTP Một header là một series các dòng(kết thúc bằng CRLF), mỗi dòng bao gồm tên theo sau bởi dấu “:” và dấu cách và sau đó là giá trị Các trường có thể được sắp xếp theo một trật tự bất kỳ Một số trường header được sử dụng trong cả header yêu cầu và đáp ứng, trong khi một số khác chỉ dùng trong header yêu cầu hoặc header đáp ứng Vài trường... được bắt đầu bằng ký tự X- và thông tin theo sau là cũng giống như ta thấy trên một trường chuẩn c) Phần nội dung: Để phân biệt phần tiêu đề và phần nội dung của bức mail, người ta quy định ranh giới là một dòng trắng(chuỗi ký tự “\r\n”) Kết thúc của phần nội dung là chuỗi ký tự kết thúc mail: “\r\n.\r\n” Như vậy, nội dung bức mail nằm trong khoảng giữa dòng trắng đầu tiên và ký tự kết thúc mail, và trong... dung của bức mail khôgn được phép tồn tại chuỗi ký tự kết thúc mail Mặt khác, do môi trường truy n thông là mạng Internet nên các ký tự cấu thành phần body của bức mail cũng phải là các ký tự ASCII chuẩn .5 Giao thức POP3: Giới thiệu: Post Office Protocol Version 3(POP3) là một giao thức chuẩn trên internet cho phép một workstation có thể truy xuất động đến một maildrop trên một server từ xa Có nghĩa . Được sự hướng dẫn tận tình của, em đã chọn đề tài: “Thiết kế xây dựng ứng dụng tự động kiểm soát truy cập mạng” cho đồ án tốt nghiệp của mình. Đồ án tập trung nghiên cứu các vấn đề chính sau: -. (hay liên kết ảo) được đưa vào để hình thức hoá các hoạt động của mạng thuận tiện cho việc thiết kế và cài đặt các phần mềm truy n thông. Mô hình OSI: Khi thiết kế, các nhà thiết kế tự do lựa. PUSH. • R: Khởi động lại (reset) liên kết. • S: Đồng bộ hóa số hiệu tuần tự (sequence number). • F: Không còn dữ liệu từ trạm nguồn. • Window(16 bits): Cấp phát credit để kiểm soát nguồn dữ liệu

Ngày đăng: 19/06/2014, 20:54

Từ khóa liên quan

Mục lục

  • CHƯƠNG :I LÝ THUYẾT MẠNG MÁY TÍNH

    • .1 Khái niệm cơ bản:

    • .2 Kiến trúc mạng máy tính:

    • .3 Topology của mạng:

    • .4 Giao thức mạng:

    • .5 Mô hình OSI:

    • CHƯƠNG :II CÁC GIAO THỨC PHỔ BIẾN TRONG HOẠT ĐỘNG MẠNG MÁY TÍNH

      • .1 Giao thức IP:

      • .2 Giao thức TCP:

      • .3 Giao thức HTTP:

      • .4 Truyền email trên Internet –giao thức POP3:

      • .5 Giao thức POP3:

      • CHƯƠNG :III MỘ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:

        • .2 Giả mạo địa chỉ IP(IP Spoofing):

        • .3 Chiếm phiên TCP(TCP Session Hijacking):

        • .4 Giả mạo ARP(Arp Spoofing):

        • .5 Giả mạo DNS(DNS Spoofing):

        • .6 Tấn công mức ứng dụng(Application attacks):

        • .7 Tấn công từ chối dịch vụ(Denial Of Service):

        • CHƯƠNG :IV XÂY DỰNG CHƯƠNG TRÌNH HỖ TRỢ QUẢN TRỊ MẠNG

          • .1 Giới thiệu phần mềm bắt gói tin Winpcap và thư viện hỗ trợ lập trình PacketX.

          • .2 Mô tả hệ thống

          • .3 Phân tích hệ thống:

Tài liệu cùng người dùng

Tài liệu liên quan