kỹ thuật tấn công giao thức tcp/ip

141
Đồ Án Tốt Nghiệp Nghiên cứu, tìm hiểu các điểm yếu giao thức TCP/IP xây dựng Module tấn công và giải pháp phòng chống. LỜI CẢM ƠN Trước hết , em xin bày tỏ lòng biết ơn chân thành nhất đến thầy Chu Minh Yên đã tận tân giúp đỡ, hướng dẫn em trong suốt thời gian làm đồ án tốt nghiệp. Em cũng xin chân thành cảm ơn quý thầy cô trong khoa An Toàn Thông Tin, Học Viện Kỹ Thuật Mật Mã đã tận tình giảng dạy chúng em, truyền đạt cho chúng em những kiến thức quý báu trong quá trình học tập. Xin cảm gia đình và tất cả bạn bè đã động viên giúp đỡ tôi trong quá trình học tập và hoàn thành đồ án tốt nghiệp. Mặc dù đã cố gắng hết sức, song chắc chán đồ án tốt nghiệp không tránh khỏi những hạn chế. Em rất mong nhận được sự thông cảm và chỉ bảo tận tình của quý thầy cô và các bạn. Hà Nội, tháng 6 năm 2011 Sinh viên thực hiện Doãn Thị Nhung GVHD: Th.S Chu Minh Yên SVTH: Doãn Thị Nhung 1

Upload: an-ninh-mang

Post on 19-Jan-2016

66 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: kỹ thuật tấn công giao thức tcp/ip

Đồ Án Tốt Nghiệp Nghiên cứu, tìm hiểu các điểm yếu giao thức TCP/IP xây dựng Module tấn công và giải pháp phòng chống.

LỜI CẢM ƠN

Trước hết , em xin bày tỏ lòng biết ơn chân thành nhất đến thầy Chu

Minh Yên đã tận tân giúp đỡ, hướng dẫn em trong suốt thời gian làm đồ án tốt

nghiệp.

Em cũng xin chân thành cảm ơn quý thầy cô trong khoa An Toàn

Thông Tin, Học Viện Kỹ Thuật Mật Mã đã tận tình giảng dạy chúng em,

truyền đạt cho chúng em những kiến thức quý báu trong quá trình học tập.

Xin cảm gia đình và tất cả bạn bè đã động viên giúp đỡ tôi trong quá trình học

tập và hoàn thành đồ án tốt nghiệp.

Mặc dù đã cố gắng hết sức, song chắc chán đồ án tốt nghiệp không

tránh khỏi những hạn chế. Em rất mong nhận được sự thông cảm và chỉ bảo

tận tình của quý thầy cô và các bạn.

Hà Nội, tháng 6

năm 2011

Sinh viên thực

hiện

Doãn Thị Nhung

GVHD: Th.S Chu Minh Yên SVTH: Doãn Thị Nhung1

Page 2: kỹ thuật tấn công giao thức tcp/ip

Đồ Án Tốt Nghiệp Nghiên cứu, tìm hiểu các điểm yếu giao thức TCP/IP xây dựng Module tấn công và giải pháp phòng chống.

MỤC LỤC

MỤC LỤC.........................................................................................................2

DANH MỤC HÌNH VẼ....................................................................................5

DANH MỤC BẢNG.........................................................................................7

LỜI MỞ ĐẦU...................................................................................................8

Chương I : TỔNG QUAN VỀ GIAO THỨC TCP/IP VÀ CÁC ĐIỂM YẾU

MẤT AN TOÀN CỦA GIAO THỨC.............................................................10

I.1 Tổng quan về giao thức TCP/IP.............................................................10

I.1.1 Giao thức IPv4.................................................................................10

I.1.1.1 Giới thiệu về giao thức IP..........................................................10

I.1.1.2 Cấu trúc gói tin IP.....................................................................10

I.1.1.3 Các tính chất của IP...................................................................12

I.1.1.4 Các bước hoạt động của giao thức IP........................................15

I.1.2 Giao thức TCP.................................................................................16

I.1.2.1 Giới thiệu về TCP......................................................................16

I.1.2.2 Cấu trúc của gói tin TCP...........................................................17

I.1.2.3 Các tính chất của TCP...............................................................18

I.1.2.4 Nguyên tắc hoạt động................................................................20

I.1.3 Bộ Giao Thức TCP/IP......................................................................23

I.1.3.1 Giới thiệu...................................................................................23

I.1.3.2 Tổng quát...................................................................................23

I.1.3.3 Các thuộc tính của bộ giao thức TCP/IP...................................25

I.1.3.4 So sánh TCP/IP với OSI............................................................26

I.1.3.5 Nguyên lý hoạt động.................................................................27

I.1.3.6 Thiết lập một liên kết TCP/IP....................................................28

I.2 Các điểm yếu mất an toàn của giao thức................................................29

I.2.1 Điểm yếu trong quá trình bắt tay 3 bước.........................................29

I.2.2 Điểm yếu của giao thức ARP...........................................................34

I.2.3 Điểm yếu trong giao thức ICMP......................................................38

I.2.4 Điểm yếu trong RIP.........................................................................39

I.2.5 Thiếu định danh duy nhất................................................................39

I.2.6 Điểm yếu về ISN (Initial Sequence Number)..................................40

I.2.7 Điểm yếu trong việc xác thực gói tin IP..........................................40

GVHD: Th.S Chu Minh Yên SVTH: Doãn Thị Nhung2

Page 3: kỹ thuật tấn công giao thức tcp/ip

Đồ Án Tốt Nghiệp Nghiên cứu, tìm hiểu các điểm yếu giao thức TCP/IP xây dựng Module tấn công và giải pháp phòng chống.

Chương II :GIẢI PHÁP ĐẢM BẢO AN TOÀN CHO HỆ THỐNG MẠNG

SỬ DỤNG TCP/IP..........................................................................................42

II.1 Các giải pháp không sử dụng mật mã...................................................42

II.1.1 Phòng chống kiểu tấn công giả mạo IP Spoofing...........................42

II.1.1.1 Sử dụng bộ lọc gói tin TCP/IP.................................................42

II.1.1.2 Sử dụng Firewall......................................................................43

II.1.1.3 Sử dụng ACLs..........................................................................44

II.1.2 Phòng chống kiểu tấn công giả mạo ARP......................................44

II.1.3 Phòng chống kiểu tấn công TCP SYN Flood.................................46

II.2 Các giải pháp sử dụng mật mã..............................................................47

II.2.1 Sử dụng phương pháp xác thực......................................................47

II.2.2 Mã hóa từng gói tin IP (SKIP)........................................................47

II.2.3 Sử dụng IPSEC...............................................................................48

II.2.4 Sử dụng SSL/TLS...........................................................................53

II.2.5 Sử dụng chứng thực RIP ngăn chặn tấn công điểm yếu RIP.........55

II.3 Tìm hiểu chức năng an toàn trong IPv6................................................55

II.3.1 Tổng quan về IPv6..........................................................................55

II.3.2 Cấu trúc địa chỉ IPv6......................................................................56

II.3.3 Các loại địa chỉ IPv6.......................................................................56

II.3.4 So sánh IPv4 và IPv6......................................................................59

II.3.5 Tính năng an toàn trong IPv6.........................................................64

Chương III: MỘT SỐ CÔNG PHỔ BIẾN DỰA TRÊN ĐIỂM YẾU GIAO

THỨC VÀ XÂY DỰNG MODULE TẤN CÔNG.........................................67

III.1 Tấn công từ chối dịch vụ.....................................................................67

III.1.1 Tấn công từ chối dịch vụ (DOS)...................................................67

III.1.1.1 Các dạng tấn công DOS..........................................................67

III.1.1.2 Các công cụ tấn công DOS.....................................................69

III.1.2 Tấn công từ chối dịch vụ phân tán (DDOS).................................69

III.1.2.1 Các dạng tấn công DDOS.......................................................69

III.1.2.2 Các công cụ tấn công DDOS..................................................72

III.1.2.3 Giải pháp phòng chống DDOS...............................................73

III.2 Nghe lén (Sniff) trên đường truyền.....................................................75

III.2.1 Mục đích của Sniffer.....................................................................75

III.2.2 Hoạt động của Sniffer trên đường truyền......................................76

GVHD: Th.S Chu Minh Yên SVTH: Doãn Thị Nhung3

Page 4: kỹ thuật tấn công giao thức tcp/ip

Đồ Án Tốt Nghiệp Nghiên cứu, tìm hiểu các điểm yếu giao thức TCP/IP xây dựng Module tấn công và giải pháp phòng chống.

III.2.3 Module tấn công nghe lén Password.............................................76

III.2.4 Phương pháp phòng chống Sniffer...............................................78

III.3 Xây dựng Module tấn công từ chối dịch vụ DOS...............................81

III.3.1 Kỹ thuật tấn công..........................................................................81

III.3.2 Mô hình tấn công..........................................................................81

III.3.3 Xây dựng Module tấn công...........................................................82

III.3.4 Chạy thử chương trình..................................................................84

III.3.5 Ưu, nhược điểm.............................................................................86

III.3.6 Giải pháp phòng chống tấn công DOS..........................................86

KẾT LUẬN.....................................................................................................88

TÀI LIỆU THAM KHẢO...............................................................................90

GVHD: Th.S Chu Minh Yên SVTH: Doãn Thị Nhung4

Page 5: kỹ thuật tấn công giao thức tcp/ip

Đồ Án Tốt Nghiệp Nghiên cứu, tìm hiểu các điểm yếu giao thức TCP/IP xây dựng Module tấn công và giải pháp phòng chống.

DANH MỤC HÌNH VẼ

Hình 1.1 Cấu trúc phần Header của gói tin IP...............................................11

Hình 1.3 Cấu trúc Header của TCP................................................................17

Hình 1.4 Giao tiếp 3 lượt trong tính kết nối...................................................18

Hình 1.5 Nguyên tắc hoạt động của TCP.......................................................21

Hình 1.7 Mô hình tham chiếu TCP/IP và OSI.................................................26

Hình 1.8 Nguyên lý hoạt động của TCP/IP....................................................28

Hình 1.9 Qúa trình bắt tay 3 bước..................................................................30

Hình 1.10 Tấn công TCP SYN flood..............................................................31

Hình 1.11 Tấn công giả mạo IP......................................................................32

Hình 1.12 Tấn công giả mạo IP từ xa với kỹ thuật định tuyến theo nguồn.....33

Hình 1.13 Tấn công man-in-the-middle..........................................................34

Hình 1.14 Tấn công ARP................................................................................36

Hình 2.1 Địa chỉ MAC.....................................................................................44

Hình 2.2 Xóa địa chỉ MAC..............................................................................44

Hình 2.3 Gán địa chỉ IP vào địa chỉ MAC......................................................45

Hình 2.4 Giao diện của chương trình Netcut..................................................46

Hình 2.5 Giao diện của chương trình Anti Netcut..........................................46

Hình 2.6 Mô hình của AH Header..................................................................49

Hình 2.7 Mô hình Encapsulating Security Payload........................................50

Hình 2.8 Mô hình hoạt động của IPSec trong Active Directory Domain.......52

Hình 2.9 Giải pháp IPSec VPN......................................................................52

Hình 2.10 Mô hình SSL..................................................................................53

Hình 2.11 Giải pháp SSL VPN........................................................................54

Hình 2.12 Cấu trúc IPv6.................................................................................56

Hình 2.13 Global Unicast Address trong IPv6...............................................56

Hình 2.14 Link-local Addresses trong IPv6....................................................57

Hình 2.15 Ví dụ về Link-Local Address..........................................................57

Hình 2.16 Mô tả 64 bits cuối cùng của IPv6...................................................57

Hình 2.17 Site-Local Addresses trong IPv6....................................................58

Hình 2.18 Unique Local Address....................................................................58

Hình 2.19 Multicast Address...........................................................................59

Hình 2.20 So sánh Header IPv4 Với Header IPv6..........................................62

Hình 2.21 Thực hiện bảo mật kết nối giữa hai mạng trong IPv4....................65

GVHD: Th.S Chu Minh Yên SVTH: Doãn Thị Nhung5

Page 6: kỹ thuật tấn công giao thức tcp/ip

Đồ Án Tốt Nghiệp Nghiên cứu, tìm hiểu các điểm yếu giao thức TCP/IP xây dựng Module tấn công và giải pháp phòng chống.

Hình 3.1 Tấn công Smurf...............................................................................68

Hình 3.2 Sơ đồ dạng tấn công DDOS...........................................................70

Hình 3.3 Sơ đồ các mô hình tấn công DDOS.................................................70

Hình 3.4 Mô hình Agent – Handler................................................................71

Hình 3.5 Mô hình IRC – Based......................................................................71

Hình 3.6 Giao diện công cụ Cain and Able.................................................77

Hình 3.7 Tài khoản đăng nhập cho giao thức HTTP......................................77

Hình 3.8 Hiển thị kết quả sniff với giao thức http...........................................77

Hình 3.9 tài khoản đăng nhập cho giao thức HTTPS.....................................78

Hình 3.10 Hiển thị kết quả với giao thức https...............................................78

Hình 3.11 Capture monitoring khi chưa cấu hình IPsec................................79

Hình 3.12 Dữ liệu khi chưa cấu hình Ipsec.....................................................79

Hình 3.13 Cấu hình IPSEC.............................................................................80

Hình 3.14 Capture monitoring khi đã cấu hình IPsec....................................80

Hình 3.16 Mô hình tấn công DOS...................................................................81

Hình 3.17 Code nút Test..................................................................................83

Hình 3.18 Code nút Start.................................................................................83

Hình 3.19 Code thực hiện tấn công.................................................................83

Hình 3.20 Giao diện tool tấn công DOS.........................................................84

Hình 3.21 Test chạy trình duyệt website.........................................................84

Hình 3.22 Kết quả tấn công DOS bằng module xây dựng..............................85

Hình 3.23 Kết quả tấn công trên trình duyệt website......................................85

GVHD: Th.S Chu Minh Yên SVTH: Doãn Thị Nhung6

Page 7: kỹ thuật tấn công giao thức tcp/ip

Đồ Án Tốt Nghiệp Nghiên cứu, tìm hiểu các điểm yếu giao thức TCP/IP xây dựng Module tấn công và giải pháp phòng chống.

DANH MỤC BẢNG

Bảng 1.1 Cấu trúc mỗi nhóm Bits trong IP.....................................................12

Bảng 1.2 Cấu trúc các nhóm Bits trong IP....................................................13

Bảng 1.3 Bảng liệt kê danh sách các địa chỉ riêng........................................14

Bảng 1.4 Phân mảnh gói tin...........................................................................16

GVHD: Th.S Chu Minh Yên SVTH: Doãn Thị Nhung7

Page 8: kỹ thuật tấn công giao thức tcp/ip

Đồ Án Tốt Nghiệp Nghiên cứu, tìm hiểu các điểm yếu giao thức TCP/IP xây dựng Module tấn công và giải pháp phòng chống.

LỜI MỞ ĐẦU Internet-một thuật ngữ không còn xa lạ gì hiện nay- đang ngày càng

trở nên một công cụ hết sức hữu ích trong đời sống xã hội hiện đại. Tại Việt

Nam, từ năm 1997, với sự triển khai dịch vụ Internet trong cộng đồng, một

loại hình thông tin mới dần thịnh hành và trở nên hết sức tiện lợi. Tuy nhiên,

ở những thời kỳ đầu của công nghiệp máy tính, việc truyền thông tin giữa các

máy tính, giữa các mạng là hết sức bất tiện và mất thời gian, công sức. Hơn

nữa, khi công nghiệp máy tính phát triển, các nhà sản xuất cho ra đời các loại

phần cứng, phần mềm khác nhau để đáp ứng với nhu cầu riêng lẻ của từng

doanh nghiệp. Nhưng cũng chính từ điều đó, đã dẫn đến một vấn đề lớn: Các

thiết bị phần cứng và phần mềm đó chỉ làm việc với các thiết bị cùng chủng

loại, cùng nhà sản xuất và làm việc trên mạng diện hẹp và có giới hạn, các

thiết bị đôi khi quá phức tạp và cần các phần mềm riêng biệt đi kèm cho mỗi

thiết bị và ứng dụng, đồng thời thiếu đi tính mềm dẻo và khả chuyển của các

mạng con, làm cho việc chuyển đổi, kết nối chúng trở lên phức tạp khó khăn

và đôi khi không thể thực hiện đợc.

Xuất phát từ những khó khăn thực tế đó, cùng với nhu cầu trao đổi

thông tin bộ giao thức liên kết mạng TCP/IP (Transmision Control

Protocol/Internet Protocol) ra đời, cùng với nó là kỹ thuật routing (định tuyến)

mạng để kết nối các mạng với nhau. Từ sự ra đời của chúng, ngày nay, một

mạng máy tính cho một tổ chức đã trở thành một hệ thống thống nhất, những

mạng LAN ( Local Area Netwwork-mạng cục bộ ) đã có thể kết nối với nhau,

trở thành những hệ thống lớn hơn, tiêu biểu là mạng Internet hiện nay, với

khả năng liên kết không giới hạn và là nguồn tài nguyên về thông tin khổng lồ

lớn nhất thế giới.

Từ những lợi ích của việc ra đời giao thức TCP/IP,nhiều ứng dụng dựa

vào nó đó được phát triển.Hacker đó lợi dụng những phỏt triển trờn để thực

hiện những tấn công vào hệ thống mạng nhằm phục vụ lợi ích cho họ. Cỏc

chuyờn gia về bảo mật cho biết họ đó phỏt hiện ra một lỗi bảo mật trong cơ

chế vận hành của bộ giao thức TCP/IP cho phộp tấn cụng bất kỡ thiết bị nào

cú kết nối băng rộng. Phỏt hiện này cú thể mang lại thiệt hại cho hàng triệu

người cú cụng việc phụ thuộc vào cỏc website, hệ thống mail và hệ thống

mạng núi chung

GVHD: Th.S Chu Minh Yên SVTH: Doãn Thị Nhung8

Page 9: kỹ thuật tấn công giao thức tcp/ip

Đồ Án Tốt Nghiệp Nghiên cứu, tìm hiểu các điểm yếu giao thức TCP/IP xây dựng Module tấn công và giải pháp phòng chống.

Sau một thời gian nghiên cứu và tìm hiểu về TCP/IP, em đã quyết định

chọn đề tài về TCP/IP để làm đồ án tốt nghiệp. Đối với sinh viên học An

Toàn Thông Tin nói chung và bản thân em nói riêng thì tìm hiểu về TCP/IP là

điều hết sức quan trọng. Nó là nền tảng đầu tiên và không thể thiếu để nghiên

cứu về An Toàn Thông Tin.

Đồ án tốt nghiệp :” Nghiên cứu, tìm hiểu các điểm yếu giao thức

TCP/IP, xây dựng module tấn công và giải pháp phòng chống” với mục đích

là tìm hiểu về bộ giao thức TCP/IP, điểm yếu, một số phương pháp tấn công

vào bộ giao thức TCP/IP và giải pháp phòng chống đối với các phương pháp

tấn công. Với mục đích đã đề ra cần giải quyết, nội dung của đồ án bao gồm :

Chương I. Tổng quan về giao thức TCP/IP và các điểm yếu mất an

toàn của giao thức: Giới thiệu tổng quan về giao thức IP, TCP và bộ giao

thức TCP/IP. Cấu trúc, các tính chất và cơ chế hoạt động của các giao thức

đó.Tìm hiểu một số điểm yếu trong bộ giao thức TCP/IP, các phương pháp

tấn công .

Chương II. Các giải pháp đảm bảo an toàn cho các hệ thống mạng

sử dụng bộ giao thức TCP/IP: Giới thiệu về các giải pháp khi không sử

dụng mật mã và các giải pháp sử dụng mật mã mã hóa gói tin để đảm bảo an

toàn trong hệ thống mạng có sử dụng bộ giao thức TCP/IP. giới thiệu các tính

năng an toàn mới trong IPv6.

Chương III. Một số tấn công dựa trên điểm yếu giao thức và xây

dựng Module tấn công : Tìm hiểu về hai loại tấn công phổ biến dựa vào

điểm yếu giao thức TCP/IP là tấn công từ chối dịch vụ và nghe lén trên đường

truyền. Xây dựng module tấn công đối với hệ thống thực tế và giải pháp

phòng chống cụ thể với từng loại tấn công đó.

Kết luận: Tổng kết những mặt đã làm được, những hạn chế và hướng

phát triển của đồ án.

GVHD: Th.S Chu Minh Yên SVTH: Doãn Thị Nhung9

Page 10: kỹ thuật tấn công giao thức tcp/ip

Đồ Án Tốt Nghiệp Nghiên cứu, tìm hiểu các điểm yếu giao thức TCP/IP xây dựng Module tấn công và giải pháp phòng chống.

Chương I : TỔNG QUAN VỀ GIAO THỨC TCP/IP VÀ

CÁC ĐIỂM YẾU MẤT AN TOÀN CỦA GIAO THỨC.I.1 Tổng quan về giao thức TCP/IP

I.1.1 Giao thức IPv4

I.1.1.1 Giới thiệu về giao thức IP

Giao thức IP (Internet Protocol - Giao thức liên mạng) là một giao thức

hướng dữ liệu được sử dụng bởi các máy chủ nguồn và đích để truyền dữ liệu

trong một liên mạng chuyển mạch gói. Dữ liệu trong một liên mạng IP được

gửi theo các khối được gọi là các gói (packet hoặc datagram). Cụ thể, IP

không cần thiết lập các đường truyền trước khi một máy chủ gửi các gói tin

cho một máy khác mà trước đó nó chưa từng liên lạc. [2]

Giao thức IP cung cấp một dịch vụ gửi dữ liệu không đảm bảo (còn gọi

là cố gắng cao nhất), nghĩa là nó hầu như không đảm bảo gì về gói dữ liệu.

Gói dữ liệu có thể đến nơi mà không còn nguyên vẹn, nó có thể đến không

theo thứ tự (so với các gói khác được gửi giữa hai máy nguồn và đích đó), nó

có thể bị trùng lặp hoặc bị mất hoàn toàn. Nếu một phần mềm ứng dụng cần

được bảo đảm, nó có thể được cung cấp từ nơi khác, thường từ các giao thức

giao vận nằm phía trên IP. Các thiết bị định tuyến liên mạng chuyển tiếp các

gói tin IP qua các mạng tầng liên kết dữ liệu được kết nối với nhau. Việc

không có đảm bảo về gửi dữ liệu có nghĩa rằng các chuyển mạch gói có thiết

kế đơn giản hơn. (nếu mạng bỏ gói tin, làm đổi thứ tự hoặc làm hỏng nhiều

gói tin, người dùng sẽ thấy hoạt động mạng trở nên kém đi. Hầu hết các thành

phần của mạng đều cố gắng tránh để xảy ra tình trạng đó. Đó là lý do giao

thức này còn được gọi là cố gắng cao nhất.) [7]

I.1.1.2 Cấu trúc gói tin IP

Cấu trúc gói tin IP gồm 2 phần:

- Header

- DATA

+Header:

GVHD: Th.S Chu Minh Yên SVTH: Doãn Thị Nhung10

Page 11: kỹ thuật tấn công giao thức tcp/ip

Đồ Án Tốt Nghiệp Nghiên cứu, tìm hiểu các điểm yếu giao thức TCP/IP xây dựng Module tấn công và giải pháp phòng chống.

Hình 1.1 Cấu trúc phần Header của gói tin IP

IP header có chiều dài tối thiểu là 20 bytes, trường Options có chiều dài

tối đa là 40 bytes. Thông tin cụ thể về các trường như sau:

- Version: Phiên bản hiện thời là 4.

- IHL (Internet Length Header): Độ dài của phần header. Giá trị độ dài được

thể hiện dưới dạng 32-bit words (4-byte words).

- TOS (Type of Service):  Kiểu dịch vụ.

- Total Length: Tổng chiều dài. Số lượng byte của gói tin IP bao gồm cả phần

header và phần dữ liệu..

- Identification, flags, and fragment offset: được dùng cho mục đích phân

mảnh và ghép gói tin IP.

- TTL (Time To Live): Số lượng các đường kết nối (links) mà một gói tin IP

có thể được chuyển tiếp tới trên Internet. Mỗi router giảm TTL đi một giá trị.

- Protocol: Giao thức: TCP, UDP (User Datagram Protocol), ICMP (Internet

Control Message Protocol)

- Header Checksum: Dùng để phát hiện lỗi trong quá trình truyền trong một

header của gói tin. Do giá trị TTL được thay đổi ở mỗi router, do đó

checksum được tính lại tại mỗi router.

- Source IP address: Địa chỉ IP nguồn. Được viết dưới dạng thập phân dùng

dấu chấm để phân cách các trường, ví dụ 202.128.53.31.

- Destination IP address: Địa chỉ IP đích.

- Options: Tùy chọn. Dùng để yêu cầu các tính năng đặc biệt cho gói tin IP, ví

dụ như mức độ bảo mật, đường (route) mà gói tin được gửi đi, và timestamp ở

mỗi router.

GVHD: Th.S Chu Minh Yên SVTH: Doãn Thị Nhung11

Page 12: kỹ thuật tấn công giao thức tcp/ip

Đồ Án Tốt Nghiệp Nghiên cứu, tìm hiểu các điểm yếu giao thức TCP/IP xây dựng Module tấn công và giải pháp phòng chống.

+DATA (Dữ liệu): Chứa thông tin lớp trên, chiều dài thay đổi đến 64Kb.

Trong khi địa chỉ IP của nguồn và đích là quan trọng của hoạt động của IP,

các trường khác làm cho IP rất linh hoạt. Các Header Field là thông tin được

cung cấp cho các giao thức lớp trên xác định dữ liệu đóng gói.

I.1.1.3 Các tính chất của IP

Định tuyến trong mạng IP

Trong ngành mạng máy tính, định tuyến (routing) là quá trình chọn lựa

các đường đi trên một mạng máy tính để gửi dữ liệu qua đó. Việc định tuyến

được thực hiện cho nhiều loại mạng, trong đó có mạng điện thoại, liên mạng,

Internet, mạng giao thông. Routing chỉ ra hướng, sự di chuyển của các gói (dữ

liệu) được đánh địa chỉ từ mạng nguồn của chúng, hướng đến đích cuối thông

qua các node trung gian, thiết bị phần cứng chuyên dùng được gọi là router

(bộ định tuyến). [1]

Tiến trình định tuyến thường chỉ hướng đi dựa vào bảng định tuyến, đó

là bảng chứa những lộ trình tốt nhất đến các đích khác nhau trên mạng. Vì

vậy việc xây dựng bảng định tuyến, được tổ chức trong bộ nhớ của router, trở

nên vô cùng quan trọng cho việc định tuyến hiệu quả. Các mạng nhỏ có thể có

các bảng định tuyến được cấu hình thủ công, còn những mạng lớn hơn có

topo mạng phức tạp và thay đổi liên tục thì xây dựng thủ công các bảng định

tuyến là vô cùng khó khăn. Tuy nhiên, hầu hết mạng điện thoại chuyển mạch

chung sử dụng bảng định tuyến được tính toán trước, với những tuyến dự trữ

nếu các lộ trình trực tiếp đều bị nghẽn. Định tuyến động (dynamic routing) cố

gắng giải quyết vấn đề này bằng việc xây dựng bảng định tuyến một cách tự

động, dựa vào những thông tin được giao thức định tuyến cung cấp, và cho

phép mạng hành động gần như tự trị trong việc ngăn chặn mạng bị lỗi và

nghẽn. [1]

Địa chỉ IP

Đơn vị thông tin cơ bản trong máy tính được biểu diễn dưới dạng số

nhị phân bao gồm 2 giá trị đếm là 0 và 1. Đôi khi còn được biểu diễn bằng số

bát phân, hay số thập lục phân. Cấu trúc địa chỉ IP gồm 32bits, chia thành 4 nhóm, mỗi nhóm 8 bits:

1 1 1 1 1 1 1 1

128 64 32 16 8 4 2 1

Bảng 1.1 Cấu trúc mỗi nhóm Bits trong IP

GVHD: Th.S Chu Minh Yên SVTH: Doãn Thị Nhung12

Page 13: kỹ thuật tấn công giao thức tcp/ip

Đồ Án Tốt Nghiệp Nghiên cứu, tìm hiểu các điểm yếu giao thức TCP/IP xây dựng Module tấn công và giải pháp phòng chống.

Vậy giá trị 8 bits khi tất cả được bật lên 1 hiểu ở giá trị thập phân là:

255. Những giá trị thập phân có thể gán 4 nhóm của 32 Bits là:

00000000-

11111111

00000000-

11111111

00000000-

11111111

00000000-

11111111

0-255 0-255 0-255 0-255

Bảng 1.2 Cấu trúc các nhóm Bits trong IP

Vậy địa chỉ IP có cấu trúc được chia làm hai hoặc ba phần là

network_id và host_id hoặc network_id và subnet_id và host_id. Là một con

số có kích thước 32 bit. Khi trình bày, 32 bit này thành bốn phần, mỗi phần có

kích thước 8 bit, gọi là octet hoặc byte. Có các cách trình bày sau:

- Ký pháp thập phân có dấu chấm (dotted-decimal notation).Ví dụ:

172.16.30.56

- Ký pháp nhị phân. Ví dụ: 10101100   00010000  00011110  00111000.

- Ký pháp thập lục phân. Ví dụ :82  39  1E  38

Không gian địa chỉ IP ( gồm 232 địa chỉ ) được chia thành 5 lớp (class)

để dễ quản lý đó là: A,B ,C,D và E. Trong đó các lớp A,B và C được triển

khai để đặt cho các host trên mạng Internet, lớp D dùng cho các nhóm

multicast, còn lớp E phục vụ cho mục đích nghiên cứu.

Các lớp địa chỉ IP

Hình 1.2 : Các lớp địa chỉ IP

GVHD: Th.S Chu Minh Yên SVTH: Doãn Thị Nhung13

Page 14: kỹ thuật tấn công giao thức tcp/ip

Đồ Án Tốt Nghiệp Nghiên cứu, tìm hiểu các điểm yếu giao thức TCP/IP xây dựng Module tấn công và giải pháp phòng chống.

Địa chỉ riêng (private address) và cơ chế chuyển đổi địa chỉ mạng

( Network Address Translation –NAT )

Tất cả các IP host khi kết nối vào mạng Internet đều phải có một địa chỉ

IP do tổ chức IANA (Internet Assigned Numbers Authority ) cấp phát – gọi là

địa chỉ hợp lệ (hay là được đăng ký ). Tuy nhiên số lượng host kết nối vào

mạng ngày càng gia tăng dẫn đến tình trạng khan hiếm địa chỉ IP. Một giải

pháp đưa ra là sử dụng cơ chế NAT kèm theo RFC (Request For Comment)

1918 quy định danh sách địa chỉ riêng. Các địa chỉ này sẽ không được IANA

cấp phát – hay còn gọi là địa chỉ không hợp lệ. Bảng sau liệt kê danh sách các

địa chỉ này:

Nhóm địa chỉ Lớp Số lượng mạng

10.0.0.0 đến

10.255.255.255

A 1

172.16.0.0 đến

172.32.255.255

B 16

192.168.0.0 đến

192.168.255.255

C 256

Bảng 1.3 Bảng liệt kê danh sách các địa chỉ riêng

Các giao thức trong mạng IP

Để mạng với giao thức IP hoạt động được tốt, phải cần một số giao

thức bổ sung, không phải là bộ phận của giao thức IP và dùng đến chúng khi

cần.

Giao thức ARP (Address Resolution Protocol): Địa chỉ IP được dùng

để định danh các host và mạng ở tầng mạng của mô hình OSI, và chúng

không phải là các địa chỉ vật lý của các trạm trên đó một mạng cục bộ

(Ethernet, Token Ring.). Trên một mạng cục bộ hai trạm chỉ có thể liên lạc

với nhau nếu chúng biết địa chỉ vật lý của nhau. Như vậy vấn đề đặt ra là phải

tìm được ánh xạ giữa địa chỉ IP (32 bits) và địa chỉ vật lý của một trạm. Giao

thức ARP đã được xây dựng để tìm địa chỉ vật lý từ địa chỉ IP khi cần thiết.

[8]

Giao thức RARP (Reverse Address Resolution Protocol): Là giao

thức ngược với giao thức ARP. Giao thức RARP được dùng để tìm địa chỉ IP

từ địa chỉ vật lý. [8]

GVHD: Th.S Chu Minh Yên SVTH: Doãn Thị Nhung14

Page 15: kỹ thuật tấn công giao thức tcp/ip

Đồ Án Tốt Nghiệp Nghiên cứu, tìm hiểu các điểm yếu giao thức TCP/IP xây dựng Module tấn công và giải pháp phòng chống.

Giao thức ICMP (Internet Control Message Protocol): Giao thức

này thực hiện truyền các thông báo điều khiển (báo cáo về các tình trạng các

lỗi trên mạng.) giữa các gateway hoặc một nút của liên mạng. Tình trạng lỗi

có thể là: một gói tin IP không thể tới đích của nó, hoặc một router không đủ

bộ nhớ đệm để lưu và chuyển một gói tin IP, Một thông báo ICMP được tạo

và chuyển cho IP. IP sẽ "bọc" (encapsulate) thông báo đó với một IP header

và truyền đến cho router hoặc trạm đích. [8]

I.1.1.4 Các bước hoạt động của giao thức IP

Khi giao thức IP được khởi động nó trở thành một thực thể tồn tại trong

máy tính và bắt đầu thực hiện những chức năng của mình, lúc đó thực thể IP

là cấu thành của tầng mạng, nhận yêu cầu từ các tầng trên nó và gửi yêu cầu

xuống các tầng dưới nó. nó thực hiện các bước sau đây [3]:

1) Tạo một IP datagram dựa trên tham số nhận được.

2) Tính checksum và ghép vào header của gói tin.

3) Ra quyết định chọn đường: hoặc là trạm đích nằm trên cùng mạng hoặc

một Gateway sẽ được chọn cho chặng tiếp theo.

4) Chuyển gói tin xuống tầng dưới để truyền qua mạng.

Đối với router, khi nhận được một gói tin đi qua, nó thực hiện các động tác

sau:

1) Tính chesksum, nếu sai thì loại bỏ gói tin.

2) Giảm giá trị tham số Time - to Live. nếu thời gian đã hết thì loại bỏ gói tin.

3) Ra quyết định chọn đường.

4) Phân đoạn gói tin, nếu cần.

5) Kiến tạo lại IP header, bao gồm giá trị mới của các vùng Time - to -Live,

Fragmentation và Checksum.

6) Chuyển datagram xuống tầng dưới để chuyển qua mạng.

Cuối cùng khi một datagram nhận bởi một thực thể IP ở trạm đích, nó sẽ thực

hiện bởi các công việc sau:

1) Tính checksum. Nếu sai thì loại bỏ gói tin.

2) Tập hợp các đoạn của gói tin (nếu có phân đoạn).

3) Chuyển dữ liệu và các tham số điều khiển lên tầng trên.

Phân mảnh và ghép một gói tin IP

Giá trị Maximum Transmission Unit (MTU) của một mạng là kích

thước tối đa của một gói tin IP được chuyển đi  trong mạng đó (bao gồm của

GVHD: Th.S Chu Minh Yên SVTH: Doãn Thị Nhung15

Page 16: kỹ thuật tấn công giao thức tcp/ip

Đồ Án Tốt Nghiệp Nghiên cứu, tìm hiểu các điểm yếu giao thức TCP/IP xây dựng Module tấn công và giải pháp phòng chống.

phần header và phần dữ liệu). Ví dụ: MTU của Ethernet là 1500 byte, các

giao thức trên data link layer khác có thể có các giá trị MTU khác, ví dụ:

Token ring có MTU là 4464 byte, X.25 là 576 byte. Khi một gói tin IP được

gửi từ một mạng có MTU lớn hơn sang một mạng có MTU nhỏ hơn, gói tin

này phải được phân mảng thành nhiều phần nhỏ hơn. Tất cả các phần phân

mảnh sẽ được ghép lại tại đích đến của gói tin. Các thông tin trong phần

header hỗ trợ cho việc phân mảnh gói tin như sau:

- Identification: 16 bit. Dùng để định danh gói tin gốc của phân mảnh.

- Flags: 3 bit. Trong đó có 1 bit không được sử dụng. Có một "Do not

fragment" (DF) bit với ý nghĩa "Không phân mảnh gói tin này". Nếu chiều dài

gói tin lớn hơn MTU của mạng, router sẽ loại bỏ gói tin này. Có một "More

fragment" (MF) bit với ý nghĩa "Còn có thêm các phân mảnh khác thuộc về

cùng một gói tin IP với phân mảnh này". Gói tin cuối cùng có MF=0 (không

còn phân mảnh nào nữa)

- Fragment Offset: 13 bit. Chứa giá trị vị trí của phân mảnh trong gói tin gốc

(chỉ tính phần dữ liệu). Để chứa được chiều dài của gói tin IP (giá trị tối đa là

65535 byte) với 13 bit, IP sử dụng thông tin về vị trí với đơn vị là 8 byte. Do

đó, chiều dài của mỗi phân mảnh phải là bội số của 8, trừ phân mảnh cuối

cùng. Ví dụ: Phân mảnh một gói tin. Một gói tin được truyền tới một mạng

với MTU là 576 byt. Gói tin này có IP header chiếm 20 byte và phần dữ liệu

chiếm 1484 byte. Gói tin này cần được phân mảnh như sau: Chiều dài tối đa

của một phân mảnh là 576-20=556 byte. Thiết lập giá trị tối đa này là 552 để thỏa

mãn yêu cầu về bội số của 8

Tổng chiều dài ID MF Fragment Offset

Gói tin gốc 1504 x 0 0

Phân mảnh 1 572 x 1 0

Phân mảnh 2 572 x 1 69

Phân mảnh 3 400 x 0 138

Bảng 1.4 Phân mảnh gói tin

I.1.2 Giao thức TCP

I.1.2.1 Giới thiệu về TCP

Giao thức TCP (Transmission Control Protocol - Giao thức điều khiển

truyền vận) là một trong các giao thức cốt lõi của bộ giao thức TCP/IP. Sử

GVHD: Th.S Chu Minh Yên SVTH: Doãn Thị Nhung16

Page 17: kỹ thuật tấn công giao thức tcp/ip

Đồ Án Tốt Nghiệp Nghiên cứu, tìm hiểu các điểm yếu giao thức TCP/IP xây dựng Module tấn công và giải pháp phòng chống.

dụng TCP, các ứng dụng trên các máy chủ được nối mạng có thể tạo các "kết

nối" với nhau, mà qua đó chúng có thể trao đổi dữ liệu hoặc các gói tin. [1]

Giao thức này đảm bảo chuyển giao dữ liệu tới nơi nhận một cách đáng

tin cậy và đúng thứ tự. TCP còn phân biệt giữa dữ liệu của nhiều ứng đồng

thời chạy trên cùng một máy chủ. TCP hỗ trợ nhiều giao thức ứng dụng phổ

biến nhất trên Internet và các ứng dụng kết quả, trong đó có WWW, thư điện

tử và Secure Shell. Trong bộ giao thức TCP/IP, TCP là tầng trung gian giữa

giao thức IP bên dưới và một ứng dụng bên trên. Các ứng dụng thường cần

các kết nối đáng tin cậy kiểu đường ống để liên lạc với nhau. [8]

I.1.2.2 Cấu trúc của gói tin TCP

Một gói tin TCP bao gồm 2 phần:

- Header

- Data (Dữ liệu)

Phần header có 11 trường trong đó 10 trường bắt buộc. Trường thứ 11 là tùy

chọn có tên là: options

Hình 1.3 Cấu trúc Header của TCP

+Header:

- Source port: Số hiệu của cổng tại máy tính gửi.

- Destination port: Số hiệu của cổng tại máy tính nhận.

- Sequence number: có 2 nhiệm vụ. Nếu cờ SYN bật thì là số thứ tự gói ban

đầu và byte đầu tiên được gửi có số thứ tự này cộng thêm 1. Nếu không có cờ

SYN thì là thứ tự của byte đầu tiên.

- Acknowledgement number: Nếu cớ ACK bật thì giá trị của trường chính là

số thứ tự gói tin tiếp theo mà bên nhận cần.

GVHD: Th.S Chu Minh Yên SVTH: Doãn Thị Nhung17

Page 18: kỹ thuật tấn công giao thức tcp/ip

Đồ Án Tốt Nghiệp Nghiên cứu, tìm hiểu các điểm yếu giao thức TCP/IP xây dựng Module tấn công và giải pháp phòng chống.

- Data offset: Trường có độ dài 4 bít qui định độ dài của phần header

- Reserved: Dành cho tương lai và có giá trị là 0.

- Flags (hay Control bits). Bao gồm 6 cờ: URG: Cờ cho trường Urgent

pointer. ACK: Cờ cho trường Acknowledgement. PSH: Hàm Push. RST:

Thiết lập lại đường truyền. SYN: Đồng bộ lại số thứ tự. FIN: Không gửi thêm

số liệu.

- Window: Số byte có thể nhận bắt đầu từ giá trị của trường báo nhận (ACK).

- Checksum: 16 bít kiểm tra cho cả phần header và dữ liệu.

- Urgent pointer: Nếu cờ URG bật thì giá trị trường này chính là số từ 16 bít

mà số thứ tự gói tin (sequence number) cần dịch trái.

- Options: Đây là trường tùy chọn. Nếu có thì độ dài là bội số của 32 bít.

+Data (Dữ liệu)

Trường cuối cùng không thuộc về header. Giá trị của trường này là

thông tin dành cho các tầng trên (trong mô hình 7 lớp OSI). Thông tin về giao

thức của tầng trên không được chỉ rõ trong phần header mà phụ thuộc vào

cổng được chọn.

I.1.2.3 Các tính chất của TCP

1. Quá trình bắt tay 3 bước.

TCP là một giao thức có tính kết nối. Điều này có nghĩa là mọi kết nối

đều có sự thông tin trước. Ví dụ A muốn kết nối tới B thì A phải thong báo

cho B biết trước và đợi trả lời đồng ý từ B. Sự thông tin này diễn ra theo 3

bước : [3]

Hình 1.4 Giao tiếp 3 lượt trong tính kết nối

GVHD: Th.S Chu Minh Yên SVTH: Doãn Thị Nhung18

Page 19: kỹ thuật tấn công giao thức tcp/ip

Đồ Án Tốt Nghiệp Nghiên cứu, tìm hiểu các điểm yếu giao thức TCP/IP xây dựng Module tấn công và giải pháp phòng chống.

A gửi thông điệp muốn kết nối tới B. (SYN)

B gửi thông điệp đồng ý kết nối lại cho A. (ACK, SYN)

A gửi thông điệp đã nhận được sự đồng ý lại cho B. (ACK)

SYN: synchronize, đồng bộ hoá kết nối.

ACK: acknowledgement, sự nhận biết.

Diễn giải quá trình:

Bước 1: A gửi một SYN message tới B, thông báo cổng (port) cần kết

nối tới, dung lượng đường truyền của A, khả năng gửi bao nhiêu thông điệp

không cần nhận biết, và các thông tin khác.

Bước 2: B nhận được thông tin từ A, nếu chấp nhận kết nối sẽ gửi trả

thông báo đã nhận được yêu cầu kết nối từ A và chấp nhận sự kết nối, đồng

thời cũng gửi thêm thông tin về B như khả năng gửi bao nhiêu thông điệp

không cần nhận biết

Bước 3: A gửi trả ACK cho B báo rằng A đã nhận được. Kết nối thành

công.

Ngoài ra, khi muốn chấm dứt kết nối, bốn bước sau sẽ được thực

hiện:

- A gửi tín hiệu chấm dứt kết nối. (SYN).

- B nhận tín hiệu và gửi trả tín hiệu cho biết đã nhận. (ACK).

- B gửi tín hiệu cho Application layer thông báo kết nối sẽ bị chấm dứt

đồng thời gửi trả cho A tín hiệu thông báo đồng ý chấm dứt.

- A gửi lại cho B tín hiệu cho biết A đã nhận được thông điệp từ B.

2. Reliability (sự tin cậy)

TCP đảm bảo độ tin cậy bằng 1 số byte sắp xếp cùng với 1 số xác nhận

được chuyển đến. Những Byte mà không được xác nhận trong 1 thời gian xác

định trước thì sẽ được chuyển.

3. Efficient flow control (điều khiển dữ liệu một cách hiệu quả)

TCP cung cấp khả năng điều khiển dòng dữ liệu một cách hiệu quả.

Khi thông báo đã nhận được quay trở về nguồn, TCP sẽ báo chỉ số cao nhất

mà nó có thể nhận được mà không bị tràn bộ đệm.

4. Full-duplex operation (hoạt động song song)

Khả năng hoạt động song song sẽ cho phép TCP gửi hoặc nhận dữ liệu

cùng một lúc.

GVHD: Th.S Chu Minh Yên SVTH: Doãn Thị Nhung19

Page 20: kỹ thuật tấn công giao thức tcp/ip

Đồ Án Tốt Nghiệp Nghiên cứu, tìm hiểu các điểm yếu giao thức TCP/IP xây dựng Module tấn công và giải pháp phòng chống.

5. Kiểm soát lỗi

Qua các phần trên, quá trình dữ liệu đi trên mạng đã khá rõ ràng nhưng

trên một mạng rộng lớn như Internet thì có gì đảm bảo dữ liệu sẽ tới đích một

cách an toàn. Điều gì xảy ra nếu trên đường đi các gói dữ liệu bị mất, tắc

nghẽn, lạc đường. Đây chỉ đơn thuần là các sự cố, nhưng thật đáng tiếc là nó

lại rất hay xảy ra trên thực tế, do đó một yêu cầu đặt ra là phải có cơ chế

thông báo và sửa lỗi trên mạng. Khi có lỗi, tầng IP đơn thuần huỷ bỏ dữ liệu

và thông báo lỗi. Thông báo lỗi được thực hiện qua một giao thức gọi là

ICMP (Internet Control Message Protocol). ICMP có thể coi là bạn đồng hành

với IP và có một số đặc điểm sau:

- Dùng IP để truyền thông báo qua mạng.

- Không có chức năng sửa lỗi mà chỉ đơn thuần là máy thông báo lỗi.

- Thông báo lỗi về gói dữ liệu IP nhưng lại không thể thông báo lỗi về

gói dữ liệu của chính mình.

- Nếu gói dữ liệu IP bị phân mảnh thì khi xảy ra lỗi, ICMP chỉ thông

báo lỗi của mảnh đầu tiên.

Khi có lỗi xảy ra trên đường truyền và phải truyền lại dữ liệu thì TCP

không chờ đợi thông báo xác nhận từ phía máy B mà nó làm theo cách sau:

khi truyền một gói dữ liệu, TCP bấm giờ và nếu thời gian hết mà không thấy

thông báo xác nhận thì nó tiến hành truyền lại. Như vậy thời gian để bấm giờ

hết sức quan trọng. Ban đầu thời gian này được thiết lập xung quanh khoảng

thời gian kể từ khi TCP A gửi dữ liệu đi đến khi nhận được thông báo xác

nhận. Nhưng về sau do cách tính này không hợp lý nên đã có nhiều cách thiết

lập khác nhau. Một trong các cách tính được dùng phổ biến hiện nay là thuật

toán của Phil Karn. Nội dung căn bản của thuật toán là mỗi khi hết thời gian

thì khoảng thời gian bấm đồng hồ tăng lên gấp một số lần cho trước.[3]

I.1.2.4 Nguyên tắc hoạt động

Không như giao thức UDP - giao thức có thể lập tức gửi gói tin mà

không cần thiết lập kết nối, TCP đòi hỏi thiết lập kết nối trước khi bắt đầu gửi

dữ liệu và kết thúc kết nối khi việc gửi dữ liệu hoàn tất.

GVHD: Th.S Chu Minh Yên SVTH: Doãn Thị Nhung20

Page 21: kỹ thuật tấn công giao thức tcp/ip

Đồ Án Tốt Nghiệp Nghiên cứu, tìm hiểu các điểm yếu giao thức TCP/IP xây dựng Module tấn công và giải pháp phòng chống.

Hình 1.5 Nguyên tắc hoạt động của TCP

Cụ thể, các kết nối TCP có ba pha:

- Thiết lập kết nối

- Truyền dữ liệu

- Kết thúc kết nối

Trước khi miêu tả các pha, cần lưu ý các trạng thái khác nhau của một socket:

-LISTEN: Đang đợi yêu cầu kết nối từ một TCP và cổng bất kỳ ở xa

(trạng thái này thường do các TCP server đặt).

-SYN-SENT: Đang đợi TCP ở xa gửi một gói tin TCP với các cờ SYN

và ACK được bật (trạng thái này thường do các TCP client đặt).

-SYN-RECEIVED: Đang đợi TCP ở xa gửi lại một tin báo nhận sau

khi đã gửi cho TCP ở xa đó một tin báo nhận kết nối (connection

acknowledgment)

GVHD: Th.S Chu Minh Yên SVTH: Doãn Thị Nhung21

Page 22: kỹ thuật tấn công giao thức tcp/ip

Đồ Án Tốt Nghiệp Nghiên cứu, tìm hiểu các điểm yếu giao thức TCP/IP xây dựng Module tấn công và giải pháp phòng chống.

-ESTABLISHED: Cổng đã sẵn sàng nhận/gửi dữ liệu với TCP ở xa

(đặt bởi TCP client và server).

-TIME-WAIT: Đang đợi qua đủ thời gian để chắc chắn là TCP ở xa đã

nhận được tin báo nhận về yêu cầu kết thúc kết nối của nó. Theo RFC 793,

một kết nối có thể ở tại trạng thái TIME-WAIT trong vòng tối đa 4 phút.

Thiết lập kết nối [3]

Để thiết lập một kết nối, TCP sử dụng một quy trình bắt tay 3 bước.

Trước khi client thử kết nối với một server, server phải đăng ký một cổng và

mở cổng đó cho các kết nối: đây được gọi là mở bị động. Một khi mở bị động

đã được thiết lập thì một client có thể bắt đầu mở chủ động. Để thiết lập một

kết nối :

1> SYN: Các chương trình máy con bắt đầu connection với máy chủ

bằng cách gửi 1 packet với cờ "SYN" đến máy chủ. Chương trình trên máy

con sẽ hỏi hệ điều hành cho 1 cổng để mở connection với máy chủ. Những

cổng trong vùng này được gọi là "cổng máy con" . Tương tự như vậy, máy

chủ sẽ hỏi HĐH (hệ điều hành ) để nhận được quyền chờ tín hiệu trong máy

chủ, vùng cổng 1 - 1023. Vùng cổng này được gọi là "vùng cổng dịch vụ"

( service port ).

2> SYN/ACK: khi yêu cầu mở connection được máy chủ nhận được tại

cổng đang mở, server sẽ gửi lại packet chấp nhận với 2 bit SYN và ACK:

SYN/ACK packet được gửi ngược lại bằng cách đổi 2 IP của server và client,

client IP sẽ thành IP đích và server IP sẽ thành IP bắt đầu. Tương tự n, cổng

cũng sẽ thay đổi, server nhận được packet ở cổng nào thì cũng sẽ dùng cổng

đó để gủi lại packet vào cổng mà client đã gửi. Server gửi lại packet này để

thông báo là server đã nhận được tín hiệu và chấp nhận connection, trong

trường hợp server không chấp nhận connection, thay vì SYN/ACK bits được

bật, server sẽ bật bit RST/ACK ( Reset Acknowledgement ) và gởi ngược lại

RST/ACK packet.

3> ACK Khi client nhận được SYN/ACK packet thì sẽ trả lời bằng

ACK packet: packet này được gởi với mục đích duy nhất báo cho máy chủ

biết rằng client đã nhận được SYN/ACK packet và lúc này connection đã

được thiết lập và dữ liệu sẽ bắt đầu lưu thông tự do giữa connection. Đến đây,

cả client và server đều đã nhận được một tin báo nhận (acknowledgement) về

kết nối.

GVHD: Th.S Chu Minh Yên SVTH: Doãn Thị Nhung22

Page 23: kỹ thuật tấn công giao thức tcp/ip

Đồ Án Tốt Nghiệp Nghiên cứu, tìm hiểu các điểm yếu giao thức TCP/IP xây dựng Module tấn công và giải pháp phòng chống.

I.1.3 Bộ Giao Thức TCP/IP

I.1.3.1 Giới thiệu

Bộ giao thức TCP/IP(bộ giao thức liên mạng), là một bộ các giao thức

truyền thông cài đặt chồng giao thức mà Internet và hầu hết các mạng máy

tính thương mại đang chạy trên đó. Bộ giao thức này được đặt tên theo hai

giao thức chính của nó là TCP và IP. Chúng cũng là hai giao thức đầu tiên

được định nghĩa. Như nhiều bộ giao thức khác, bộ giao thức TCP/IP có thể

được coi là một tập hợp các tầng, mỗi tầng giải quyết một tập các vấn đề có

liên quan đến việc truyền dữ liệu, và cung cấp cho các giao thức tầng cấp trên

một dịch vụ được định nghĩa rõ ràng dựa trên việc sử dụng các dịch vụ của

các tầng thấp hơn. Về mặt lôgic, các tầng trên gần với người dùng hơn và làm

việc với dữ liệu trừu tượng hơn, chúng dựa vào các giao thức tầng cấp dưới

để biến đổi dữ liệu thành các dạng mà cuối cùng có thể được truyền đi một

cách vật lý.[2]

I.1.3.2 Tổng quát

Để cho các máy tính trao đổi dữ liệu với nhau TCP/IP sử dụng mô hình

truyền thông 4 tầng hay còn gọi là mô hình DoD (Department of Defense- Mô

hình của Bộ Quốc Phòng Mỹ). Các tầng trong mô hình này là (Theo thứ tự từ

trên xuống):

+ Tầng ứng Dụng (Application Layer)

+ Tầng Giao Vận (Transport Layer)

+ Tầng Liên Mạng (Internet Layer)

+ Tầng Giao Diện Mạng (Network Interface Layer)

Hình 1.6 Mô hình TCP/IP

GVHD: Th.S Chu Minh Yên SVTH: Doãn Thị Nhung23

Page 24: kỹ thuật tấn công giao thức tcp/ip

Đồ Án Tốt Nghiệp Nghiên cứu, tìm hiểu các điểm yếu giao thức TCP/IP xây dựng Module tấn công và giải pháp phòng chống.

Tầng giao diện mạng

Tầng giao diện mạng có trách nhiệm đưa dữ liệu tới và nhận dữ liệu từ

phương tiện truyền dẫn. Tầng này gồm các thiết bị phần cứng vật lí chẳng hạn

như card mạng và cáp. MAC đóng vai trò quan trọng trong việc gán địa chỉ và

truyền dữ liệu.

Tầng liên mạng

Nằm bên trên tầng giao diện mạng. Tầng này có chức năng gán địa chỉ,

đóng gói và định tuyến (Route) dữ liệu. Bốn giao thức quan trọng nhất trong

tầng này gồm:

+ IP (Internet Protocol): Có chức năng gán địa chỉ cho dữ liệu trước khi

truyền và định tuyến chúng tới đích.

+ ARP (Address Resolution Protocol): Có chức năng biên dịch địa chỉ IP của

máy đích thành địa chỉ MAC.

+ ICMP (Internet Control Message Protocol): Có chức năng thông báo lỗi

trong trường hợp truyền dữ liệu bị hỏng.

+ IGMP (Internet Group Management Protocol): Có chức năng điều khiển

truyền đa hướng (Multicast).

Tầng giao vận

Có trách nhiệm thiết lập phiên truyền thông giữa các máy tính và quy

định cách truyền dữ liệu. Hai giao thức chính trong tầng này gồm:

+ UDP (User Datagram Protocol): Còn gọi là giao thức gói người dùng. UDP

cung cấp các kênh truyền thông phi kết nối nên nó không đảm bảo truyền dữ

liệu 1 cách tin cậy. Các ứng dụng dùng UDP thường chỉ truyền những gói có

kích thước nhỏ, độ tin cậy dữ liệu phụ thuộc vào từng ứng dụng.

+ TCP (Transmission Control Protocol): Ngược lại với UDP, TCP cung cấp

các kênh truyền thông hướng kết nối và đảm bảo truyền dữ liệu 1 cách tin

cậy. TCP thường truyền các gói tin có kích thước lớn và yêu cầu phía nhận

xác nhận về các gói tin đã nhận.

Tầng ứng dụng

Gồm nhiều giao thức cung cấp cho các ứng dụng người dùng. Được sử

dụng để định dạng và trao đổi thông tin người dùng. Một số giao thức thông

dụng trong tầng này là:

+ DHCP (Dynamic Host Configuration Protocol): Giao thức cấu hình trạm

động.

GVHD: Th.S Chu Minh Yên SVTH: Doãn Thị Nhung24

Page 25: kỹ thuật tấn công giao thức tcp/ip

Đồ Án Tốt Nghiệp Nghiên cứu, tìm hiểu các điểm yếu giao thức TCP/IP xây dựng Module tấn công và giải pháp phòng chống.

+ DNS (Domain Name System): Hệ thống tên miền.

+ SNMP (Simple Network Management Protocol): Giao thức quản lý mạng

đơn giản.

+ FTP (File Transfer Protocol): giao thức truyền tập tin.

+ TFTP (Trivial File Transfer Protocol): Giao thức truyền tập tin bình thường.

+ SMTP (Simple Mail Transfer Protocol): Giao thức truyền thư đơn giản.

+ TELNET

I.1.3.3 Các thuộc tính của bộ giao thức TCP/IP

1. Định tuyến

Bộ định tuyến là thiết bị đặc biệt có thể đọc được thông tin địa chỉ logic

và điều khiển dữ liệu trên mạng tới được đích của nó ở mức độ đơn giản nhất,

bộ định tuyến phân chia tiểu vùng từ hệ thống mạng. Dữ liệu cần chuyển tới

địa chỉ nằm trong tiểu vùng đó, nên không qua bộ định tuyến. Nếu dữ liệu cần

tới máy tính nằm ngoài tiểu vùng của máy gửi đi (máy chủ), thì bộ định tuyến

sẽ làm nhiệm vụ của mình. Trong những mạng có quy mô rộng lớn hơn, như

Internet chẳng hạn, sẽ có vô vàn bộ định tuyến và cung cấp các lộ trình khác

nhau từ nguồn tới đích. TCP/IP bao gồm các giao thức có chức năng xác định

cách các bộ định tuyến tìm lộ trình trong mạng.[6]

2. Giải pháp địa chỉ dạng tên

Mặc dù địa chỉ IP số có thể thân thiện hơn với địa chỉ vật lý của adapter

mạng, nhưng IP được thiết kế chỉ đơn giản là nhằm tạo sự thuận tiện cho máy

tính chứ không phải con người. Mọi người chắc chắn sẽ gặp phải khó khăn

khi nhớ các địa chỉ như dạng số.TCP/IP cung cấp một địa chỉ dạng ký tự

tương ứng với địa chỉ số, những địa chỉ ký tự này được gọi là tên miền hay

DNS (Dịch vụ tên miền.[6]

2. Kiểm tra lỗi và kiểm soát giao thông

Bộ giao thức TCP/IP cung cấp các thuộc tính đảm bảo mức độ tin cậy

của việc vận chuyển dữ liệu trên mạng. Những thuộc tính này bao gồm việc

kiểm tra lỗi trong quá trình vận chuyển (để xác định dữ liệu đã tới nơi chính

là cái đã được gửi đi) và xác nhận việc thông tin đã được nhận. Lớp vận

chuyển của TCP/IP xác định các việc kiểm tra lỗi và xác nhận thông qua giao

thức TCP. Nhưng giao thức ở cấp thấp hơn, Lớp truy cập mạng, cũng đóng

một vai trò trong toàn bộ quá trình kiểm tra lỗi.[6]

GVHD: Th.S Chu Minh Yên SVTH: Doãn Thị Nhung25

Page 26: kỹ thuật tấn công giao thức tcp/ip

Đồ Án Tốt Nghiệp Nghiên cứu, tìm hiểu các điểm yếu giao thức TCP/IP xây dựng Module tấn công và giải pháp phòng chống.

4. Hỗ trợ ứng dụng

Bộ giao thức phải cung cấp giao diện cho ứng dụng trên máy tính để

những ứng dụng này có thể tiếp cận được phần mềm giao thức và có thể vào

mạng. Trong TCP/IP, giao diện từ mạng cho tới ứng dụng chạy trên máy ở

mạng cục bộ được thực hiện thông qua các kênh logic gọi là cổng (Port). Mỗi

cổng có một số đánh dấu.[6]

I.1.3.4 So sánh TCP/IP với OSI

Mô hình tham chiếu giữa TCP/IP và OSI

Hình 1.7 Mô hình tham chiếu TCP/IP và OSI

Mô hình TCP/IP gọn nhẹ hơn mô hình tham chiếu OSI, đồng thời có

những biến đổi phù hợp thực tế hơn. Ví dụ: lớp vận chuyển của mô hình OSI

quy định việc truyền dữ liệu phải đảm bảo độ tin cậy hoàn toàn. Tuy nhiên,

một số ứng dụng mới phát triển sau này như Voice over IP, video conference

(hội nghị truyền hình),đòi hỏi tốc độ cao và cho phép bỏ qua một số lỗi nhỏ.

Nếu vẫn áp dụng mô hình OSI vào thì độ trễ trên mạng rất lớn và không đảm

bảo chất lượng dịch vụ. Trong khi đó, mô hình TCP/IP, ngoài giao thức chính

của lớp vận chuyển là TCP (Transmission Control Protocol), còn cung cấp

thêm giao thức UDP (User Datagram Protocol) để thích ứng với các ứng dụng

cần tốc độ cao.[5]

So sánh mô hình OSI và mô hình TCP/IP:

Nếu so sánh mô hình OSI và TCP/IP, sẽ thấy chúng có những điểm

giống và cũng có những điểm khác nhau.

* Các điểm giống nhau:

GVHD: Th.S Chu Minh Yên SVTH: Doãn Thị Nhung26

Page 27: kỹ thuật tấn công giao thức tcp/ip

Đồ Án Tốt Nghiệp Nghiên cứu, tìm hiểu các điểm yếu giao thức TCP/IP xây dựng Module tấn công và giải pháp phòng chống.

- Cả hai đều là phân lớp.

- Cả hai đều có lớp ứng dụng, qua đó chúng có nhiều dịch vụ khác

nhau.

- Cả hai có các lớp mạng và lớp vận chuyển có thể so sánh được.

- Kỹ thuật chuyển mạch gói được chấp nhận.

- Chuyên viên lập mạng cần phải biết cả hai.

*Các điểm khác nhau:

- TCP/IP tập hợp các lớp trình bày và lớp phiên vào trong lớp ứng dụng

của nó.

- TCP/IP tập hợp lớp vật lý và lớp liên kết dữ liệu trong OSI thành một

lớp.

- Các giao thức TCP/IP là các chuẩn cơ sở cho Internet phát triển, như

vậy mô hình TCP/IP chiếm được niềm tin chỉ vì các giao thức của nó. Ngược

lại, các mạng thông thường không được xây dựng dựa trên nền OSI, ngay cả

khi mô hình OSI được dùng như một hướng dẫn.[5]

I.1.3.5 Nguyên lý hoạt động

Giả sử máy A muốn gửi một thông điệp tới máy B. Dùng một trình

soạn thảo văn bản để soạn thư, sau đó nhấn nút Send. Tính từ thời điểm đó dữ

liệu được xử lý lần lượt như sau:

Đầu tiên, dữ liệu được xử lý bởi tầng application. Tầng này có nhiệm

vụ tổ chức dữ liệu theo khuôn dạng và trật tự nhất định để tầng application ở

máy B có thể hiểu được. Tầng application gửi dữ liệu xuống tầng dưới theo

dòng byte nối byte. Cùng với dữ liệu, tầng application cũng gửi xuống các

thông tin điều khiển khác giúp xác định địa chỉ đến, đi của dữ liệu.

Khi xuống tới tầng TCP, dòng dữ liệu sẽ được đóng thành các gói có

kích thước không nhất thiết bằng nhau nhưng phải nhỏ hơn 64 KB. Cấu trúc

của gói dữ liệu TCP gồm một phần header chứa thông tin điều khiển và sau

đó là dữ liệu. Sau khi đóng gói xong ở tầng TCP, dữ liệu được chuyển xuống

cho tầng IP.

Gói dữ liệu xuống tới tầng IP sẽ tiếp tục bị đóng gói lại thành các gói

dữ liệu IP nhỏ hơn sao cho có kích thước phù hợp với mạng chuyển mạch gói

mà nó dùng để truyền dữ liệu. Trong khi đóng gói, IP cũng chèn thêm phần

header của nó vào gói dữ liệu rồi chuyển xuống cho tầng Datalink/Physical.

GVHD: Th.S Chu Minh Yên SVTH: Doãn Thị Nhung27

Page 28: kỹ thuật tấn công giao thức tcp/ip

Đồ Án Tốt Nghiệp Nghiên cứu, tìm hiểu các điểm yếu giao thức TCP/IP xây dựng Module tấn công và giải pháp phòng chống.

Hình 1.8 Nguyên lý hoạt động của TCP/IP

Khi các gói dữ liệu IP tới tầng Datalink sẽ được gắn thêm một header

khác và chuyển tới tầng physical đi vào mạng. Gói dữ liệu lúc này gọi là

frame. Kích thước của một frame hoàn toàn phụ thuộc vào mạng mà máy A

kết nối.

Trong khi chu du trên mạng Internet, frame được các router chỉ dẫn để

có thể tới đúng đích cần tới. Router thực ra là một module chỉ có hai tầng là

Network và Datalink/Physical. Các frame tới router sẽ được tầng

Datalink/Physical lọc bỏ header mà tầng này thêm vào và chuyển lên tầng

Network (IP). Tầng IP dựa vào các thông tin điều khiển trong header mà nó

thêm vào để quyết định đường đi tiếp theo cho gói IP. Sau đó gói IP này lại

được chuyển xuống tầng Datalink/Physical để đi vào mạng. Quá trình cứ thế

tiếp tục cho đến khi dữ liệu tới đích là máy B. Khi tới máy B các gói dữ liệu

được xử lý theo quy trình ngược lại với máy A. Theo chiều mũi tên, đầu tiên

dữ liệu qua tầng Datalink/Physical. Tại đây frame bị bỏ đi phần header và

chuyển lên tầng IP. Tại tầng IP, dữ liệu được bung gói IP, sau đó lên tầng

TCP và cuối cùng lên tầng application để hiển thị ra màn hình.[7]

I.1.3.6 Thiết lập một liên kết TCP/IP

Các bước thực hiện để thiết lập một liên kết TCP/IP: Thiết lập một

liên kết mới có thể được mở theo một trong 2 phương thức:

- Phương thức bị động, người sử dụng yêu cầu TCP chờ đợi một yêu

cầu liên kết gửi đến từ xa thông qua một đầu nối TCP/IP . Người sử dụng

dùng hàm passive Open có khai báo cổng TCP và các thông số khác (mức ưu

tiên, mức an toàn).

GVHD: Th.S Chu Minh Yên SVTH: Doãn Thị Nhung28

Page 29: kỹ thuật tấn công giao thức tcp/ip

Đồ Án Tốt Nghiệp Nghiên cứu, tìm hiểu các điểm yếu giao thức TCP/IP xây dựng Module tấn công và giải pháp phòng chống.

- Với phương thức chủ động, người sử dụng yêu cầu TCP mở một liên

kết với một một đầu nối TCP/IP ở xa. Liên kết sẽ được xác lập nếu có một

hàm Passive Open tương ứng đã được thực hiện tại đầu nối TCP/IP ở xa đó.

Khi người sử dụng gửi đi một yêu cầu mở liên kết sẽ được nhận hai

thông số trả lời từ TCP:

- Thông số Open ID được TCP trả lời ngay lập tức để gán cho một liên

kết cục bộ (local connection name) cho liên kết được yêu cầu. Thông số này

về sau được dùng để tham chiếu tới liên kết đó. (Trong trường hợp nếu TCP

không thể thiết lập được liên kết yêu cầu thì nó phải gửi tham số Open Failure

để thông báo.).

- Khi TCP thiết lập được liên kết yêu cầu nó gửi tham số Open Sucsess

được dùng để thông báo liên kết đã được thiết lập thành công. Thông báo này

dược chuyển đến trong cả hai trường hợp bị động và chủ động. Sau khi một

liên kết được mở, việc truyền dữ liệu trên liên kết có thể được thực hiện.

Các bước thực hiện khi truyền và nhận dữ liệu: Sau khi xác lập

được liên kết người sữ dụng gửi và nhận dữ liệu. Việc gửi và nhận dữ liệu

thông qua các hàm Send và receive.

Các bước thực hiện khi đóng một liên kết: Việc đóng một liên kết

khi không cần thiết được thực hiên theo một trong hai cách: dùng hàm Close

hoặc dùng hàm Abort.

I.2 Các điểm yếu mất an toàn của giao thức.

Bộ giao thức TCP/IP cũng có những điểm yếu trong bảo mật vì nó

được thiết kế như một tiêu chuẩn mở để giúp cho việc trao đổi thông tin được

dễ dàng. Điều đó làm cho nó trở nên sử dụng rộng rãi nhưng cũng làm cho nó

dễ dàng bị tấn công vì hầu hết mọi người đều thân thuộc với cách thức

TCP/IP làm việc.

Ở phần trên ta đã đi tìm hiểu các thành phần và cách thức hoạt động

của bộ giao thức TCP/IP, qua tìm hiểu có thể nhận thấy rằng các điểm yếu

gây mất an toàn cho hệ thống có sử dụng giao thức TCP/IP như sau :

I.2.1 Điểm yếu trong quá trình bắt tay 3 bước

TCP sử dụng cơ chế bắt tay 3 chiều để thiết lập kết nối giữa 2 máy

muốn trao đổi dữ liệu.

GVHD: Th.S Chu Minh Yên SVTH: Doãn Thị Nhung29

Page 30: kỹ thuật tấn công giao thức tcp/ip

Đồ Án Tốt Nghiệp Nghiên cứu, tìm hiểu các điểm yếu giao thức TCP/IP xây dựng Module tấn công và giải pháp phòng chống.

Hình 1.9 Qúa trình bắt tay 3 bước

A gửi thông điệp muốn kết nối tới B. (SYN)

B gửi thông điệp đồng ý kết nối lại cho A. (ACK, SYN)

A gửi thông điệp đã nhận được sự đồng ý lại cho B. (ACK)

SYN: synchronize, đồng bộ hoá kết nối.

ACK: acknowledgement, sự nhận biết.

Phương pháp tấn công

Kiểu tấn công chủ yếu thông qua điểm yếu này là TCP SYN flood.

Kiểu tấn công TCP SYN flood là một kiểu tấn công trực tiếp vào máy chủ

bằng cách tạo ra một số lượng lớn các kết nối TCP nhưng không hoàn thành

các kết nối này. Phía kẻ tấn công sẽ khởi tạo nhiều TCP, trong mỗi kết nối chỉ

để cờ TCP SYN. Máy chủ sẽ gửi lại trả lời vớI TCP SYN và ACK. Nhưng

sau đó máy tấn công đơn giản là không trả lời thông điệp thứ ba như mong

đợi của server theo tiến trình bắt tay ba chiều. Server lúc này sẽ tốn bộ nhớ và

tài nguyên trong khi chờ các phiên TCP timeouts hoặc trước khi các kết nối

đang thiết lập dang dở được dọn dẹp. Máy server lúc này có thể từ chối các

kết nối TCP khác và các thiết bị cân bằng tải trong các server farm lúc này có

thể chia tải không cân bằng.[4]

GVHD: Th.S Chu Minh Yên SVTH: Doãn Thị Nhung30

Page 31: kỹ thuật tấn công giao thức tcp/ip

Đồ Án Tốt Nghiệp Nghiên cứu, tìm hiểu các điểm yếu giao thức TCP/IP xây dựng Module tấn công và giải pháp phòng chống.

Hình 1.10 Tấn công TCP SYN flood

Giả mạo IP (IP SPOOFING)

IP spoofing là một kiểu tấn công mà trong đó kẻ tấn công sẽ giả vờ gửi

dữ liệu từ một địa chỉ không phải là của chúng. Tầng IP sẽ mặc định rằng địa

chỉ IP nguồn của bất kỳ gói tin nào mà nó nhận được cũng chính là địa chỉ IP

của hệ thống đã thực hiện việc gửi gói tin này, không có sự xác thực nào cả.

Rất nhiều giao thức ở mức trên IP và các ứng dụng cũng không thực hiện xác

thực điều này. Do vậy, một người nào đó hoàn toàn có thể giả mạo địa chỉ IP

nguồn của một gói tin để đạt được quyền ưu tiên mà trước đó không được

phép. Để khai thác triệt để điểm yếu này, kẻ tấn công cần phải sử dụng giá trị

TCP sequence number hợp lệ nếu muốn thiết lập một kết nối TCP với máy bị

tấn công (hầu hết các dịch vụ thông dụng như Telnet, FTP, và r-command đều

dựa trên TCP).[4]

Trong header của TCP có 2 trường quan trọng cần phải nhắc tới, đó là:

- Sequence Number (32 bits): số hiệu của byte đầu tiên của segment trừ

khi bit SYN được thiết lập. Nếu bit SYN được thiết lập thì Sequence Number

là số hiệu tuần tự khởi đầu (ISN) và byte dữ liệu đầu tiên là ISN+1.

- Acknowledgment Number (32 bits): số hiệu của segment tiếp theo mà

trạm nguồn đang chờ để nhận. Ngầm ý báo nhận tốt (các) segment mà trạm

đích đã gửi cho trạm nguồn.

TCP sử dụng cơ chế bắt tay 3 bước để thiết lập kết nối giữa 2 máy

muốn trao đổi dữ liệu.

Phương pháp tấn công

GVHD: Th.S Chu Minh Yên SVTH: Doãn Thị Nhung31

Page 32: kỹ thuật tấn công giao thức tcp/ip

Đồ Án Tốt Nghiệp Nghiên cứu, tìm hiểu các điểm yếu giao thức TCP/IP xây dựng Module tấn công và giải pháp phòng chống.

Ý tưởng cơ bản đầu tiên là máy của kẻ tấn công (attacker) sẽ tự biến

chính mình thành một máy tin cậy. Ví dụ: Nếu attacker thuyết phục được một

máy khác rằng nó là một client tin cậy, thì từ đó có thể chiếm quyền truy cập

host đó. Máy tấn công cũng có thể lấy được username và password. Để hiểu

tấn công giả mạo IP là một cách tấn công khả thi, hãy xem xét hoạt động của

IP và TCP. Tại lớp mạng (network) trong mô hình OSI, máy tấn công có thể

dễ dàng chỉnh sửa gói tin của mình,thay đổi IP nguồn trong gói tin đó trở

thành một IP tin cậy. Tuy nhiên, với TCP hoạt động ở tầng truyền vận có thể

có nhiều khó khăn hơn.[4]

Trong phần đầu của những gói dữ liệu luôn có địa chỉ IP của nguồn

xuất phát dữ liệu và chỉ số thứ tự (sequence number-dùng để sắp xếp các

gói dữ liệu nhận được theo một thứ tự định sẵn). Để có thể lấy quyền điều

khiển một phiên làm việc đang thiết lâp giữa nguồn hợp pháp và một host

đích, kẻ tấn công cần biết về số thứ tự đó. Nếu kẻ tấn công dự đoán đúng số

thứ tự, kẻ tấn công có thể gửi tới host đích một ACK segment chính xác. Khi

đó, chỉ cần ACK segment của attacker tới dc đích trước AKC segement gốc,

thì attacker sẽ dc tin cậy bởi host đích, như trong hình dưới :

Hình 1.11 Tấn công giả mạo IP

Làm thế nào attacker có thể biết chính xác số TCP sequence dựa trên

cách giả mạo địa chỉ IP dc sử dụng? Có 2 loại giả mạo địa chỉ IP, với mỗi loại

như vậy thì attacker có kỹ thuật tấn công khác nhau:[4]

-Giả mạo bằng cách bắt gói (non-blind spoofing): Diễn ra khi máy tấn công

và mục tiêu ở trên cùng một subnet.Khi đó, attacker có thể sử dụng công cụ

bắt gói, phân tích gói tin để có thể có dc số thứ tự.

GVHD: Th.S Chu Minh Yên SVTH: Doãn Thị Nhung32

Page 33: kỹ thuật tấn công giao thức tcp/ip

Đồ Án Tốt Nghiệp Nghiên cứu, tìm hiểu các điểm yếu giao thức TCP/IP xây dựng Module tấn công và giải pháp phòng chống.

-Giả mạo địa chỉ IP từ xa (blind spoofing): Diễn ra khi máy tấn công khác

subnet với mục tiêu. Khi đó, việc có dc số TCP sequence chính xác là rất khó.

Tuy nhiên, với một số kĩ thuật, chẳng hạn như định tuyến theo địa chỉ nguồn,

máy tấn công cũng có thể xác định chính xác dc chỉ số đó.

Các phương pháp tấn công bằng kỹ thuật giả mạo địa chỉ IP gồm:

1. Tấn công giả mạo IP từ xa với kỹ thuật định tuyến theo nguồn

IP source routing phép một máy nguồn là một cơ chế cho chỉ ra

đường đi một cách cụ thể và không phụ thuộc vào bảng định tuyến của các

router. Nếu attacker dũng kỹ thuật IP source routing, attacker có thể nhắm

tới một đường định tuyến thành công đã có sẵn. Máy tấn công lúc này có thể

gởi một gói IP với địa chỉ nguồn tự tạo trong IP header. Và khi host đích nhận

dc gói tin này, nó sẽ gửi traffic ngược lại đến địa chỉ IP giả mạo thông qua

đường router mà attacker muốn. Cách tiếp cận này có thể vượt qua những khó

khăn khi thực hiện việc tấn công blind spoofing. [5]

Hình 1.12 Tấn công giả mạo IP từ xa với kỹ thuật định tuyến theo nguồn

2. Tấn công giả mạo địa chỉ IP cục bộ dùng kỹ thuật tấn công man-in-

the-middle

Nếu một máy tấn công có cùng subnet với máy nạn nhân, attacker có

thể sử dụng cách tấn công này. Một trong những cách tấn công người ở giữa

(man-in-the-middle) là kẻ tấn công làm cách nào đó để hệ thống gởi frame

qua PC của mình. Chẳng hạn, attacker có thể gửi hàng loạt những gói ARP vu

vơ tới hệ thống. Những frame ARP đó có thể thông báo rằng địa chỉ MAC

GVHD: Th.S Chu Minh Yên SVTH: Doãn Thị Nhung33

Page 34: kỹ thuật tấn công giao thức tcp/ip

Đồ Án Tốt Nghiệp Nghiên cứu, tìm hiểu các điểm yếu giao thức TCP/IP xây dựng Module tấn công và giải pháp phòng chống.

của attacker là địa chỉ MAC của router kế tiếp (next-hop). Do đó attacker sẽ

nhận dc traffic, rồi sau đó chuyển traffic đến router kế tiếp thật sự. Và kết

quả, người dùng đầu cuối không hề biết traffic của mình đều đi qua một PC

khác. Một dạng khác của việc tấn công man-in-the-middle là khi attacker nối

thiết bị hub đến một vùng mạng có mạng traffic mà attacker muốn bắt lấy,như

trong hình dưới.Cách khác là attacker có thể kết nối tới một Switch Port

Analyzer(SPAN) port trên Catalyst switch. Switch này sao chép traffic và

chuyển chúng đến port đã cấu hình tính năng SPAN. Tính năng SPAN của

switch là tính năng trong đó qui định tất cả các lưu lượng vào ra một cổng

trên switch sẽ dc chép một phiên bản gửi về máy đích. Kẻ tấn công có thể sử

dụng một công cụ bắt gói và phân tích để bắt lưu lượng đang di chuyển giữa

hệ thống đầu và cuối. Nếu traffic bắt dc là dạng plain text, attacker hoàn toàn

có thể thu dc những thông tin nhạy cảm, chẳng hạn như thông tin người dùng

và mật khẩu.[5]

Hình 1.13 Tấn công man-in-the-middle

I.2.2 Điểm yếu của giao thức ARP

Một trong những mối đe doạ được coi là lớn nhất đối với một mạng

máy tính đó là một *kẻ lừa đảo* nằm trong hệ thống mạng của nạn nhân và

giả vờ *thủ vai* như một trạm được tin cậy (trusted host). Một khi kẻ đó giả

mạo thành công một trạm khác trong mạng để tham gia vào quá trình trao đổi

thông tin thì hậu quả của nó thật khó mà lường hết được. ARP spoofing giới

hạn phạm vi hoạt động trong một mạng cục bộ và khai thác cách các địa chỉ

GVHD: Th.S Chu Minh Yên SVTH: Doãn Thị Nhung34

Page 35: kỹ thuật tấn công giao thức tcp/ip

Đồ Án Tốt Nghiệp Nghiên cứu, tìm hiểu các điểm yếu giao thức TCP/IP xây dựng Module tấn công và giải pháp phòng chống.

IP được chuyển đổi sang địa chỉ MAC. Khi một IP datagram được gửi đi từ

trạm này sang trạm khác trong cùng một mạng vật lý, địa chỉ IP của trạm đích

phải được chuyển đổi sang địa chỉ MAC. Giao thức ARP sẽ giúp làm việc

chuyển đổi này. Khi một trạm muốn biết địa chỉ vật lý của trạm khác, nó sẽ

gửi broadcast cho toàn mạng một frame có nội dung như sau:

Gói request được gửi đến các thiết bị trong đoạn mạng, trong khi gửi nó

nói rằng (đây chỉ là nhân cách hóa để giải thích theo hướng dễ hiểu nhất)

“Hey, địa chỉ IP của tôi là XX.XX.XX.XX, địa chỉ MAC của tôi là

XX:XX:XX:XX:XX:XX. Tôi cần gửi một vài thứ đến một người có địa chỉ

XX.XX.XX.XX, nhưng tôi không biết địa chỉ phần cứng này nằm ở đâu trong

đoạn mạng của mình. Nếu ai đó có địa chỉ IP này, xin hóy đáp trả lại kèm với

địa chỉ MAC của mình!” Đáp trả sẽ được gửi đi trong gói ARP reply và cung

cấp câu trả lời, “Hey thiết bị phát. Tôi là người mà bạn đang tìm kiếm với địa

chỉ IP là XX.XX.XX.XX. Địa chỉ MAC của tôi là XX:XX:XX:XX:XX:XX.”

Khi quá trình này hoàn tất, thiết bị phát sẽ cập nhật bảng ARP cache của nó

và hai thiết bị này cú thể truyền thông với nhau. Vì bản thân ARP request đã

chứa địa chỉ vật lý của sender trong Ethernet frame nên receiver nhận được

ARP request này hoàn toàn có thể trả lời cho sender mà không cần phải tạo

một ARP request nữa. Tuy nhiên, điểm yếu lớn nhất của giao thức ARP là ở

chỗ nó làm một stateless protocol, có nghĩa là nó sẽ không theo dõi các frame

trả lời cho các request mà nó đã gửi, và vì thế sẽ chấp nhận các ARP reply mà

trước đó không có request. Nếu một kẻ nào đó muốn lấy cắp thông tin từ một

trạm khác, attacker sẽ gửi các ARP reply giả mạo phù hợp một địa chỉ IP nào

đó đã chọn trước với địa chỉ MAC của chúng. Trạm nhận được các ARP reply

giả mạo này không thể phân biệt được nó là ARP reply hợp lệ hay không, và

bắt đầu gửi dữ liệu tới địa chỉ MAC của attacker. [8]

Một điểm yếu nữa của giao thức ARP đó là bảng thông tin ARP được

lưu trữ cục bộ tại mỗi trạm trong một mạng. Điều này nhằm mục đích tăng

tốc độ truyền dữ liệu bởi vì địa chỉ MAC sẽ không cần phải kiểm tra mỗi lần

một thiết bị này muốn liên lạc với một thiết bị khác. Một kẻ tấn công muốn

tiếp tục giả mạo một địa chỉ IP nào đó, nó cần phải làm *ngập lụt* trạm đó

với các ARP reply ghi đè lên các ARP hợp lệ từ trạm nguồn. Kiểu tấn công

này thường được biết đến với cái tên ARP cache poisoning Có nhiều tool sử

GVHD: Th.S Chu Minh Yên SVTH: Doãn Thị Nhung35

Page 36: kỹ thuật tấn công giao thức tcp/ip

Đồ Án Tốt Nghiệp Nghiên cứu, tìm hiểu các điểm yếu giao thức TCP/IP xây dựng Module tấn công và giải pháp phòng chống.

dụng kỹ thuật này để *thu bắt* thông tin trên các mạng dùng switch hoặc thực

hiện kiểu tấn công *man-in-the-middle*, có thể đơn cử tool Ettercap.[8]

Phương pháp tấn công

Giả sử có mạng Lan như mô hình trên gồm các host

Hình 1.14 Tấn công ARP

Attacker: là máy hacker dùng để tấn công ARP attack

IP: 10.0.0.11

Mac: 0000:0000:0111

HostA

IP: 10.0.0.09

MAC: 0000:0000:0109

HostB

IP: 10.0.0.08

MAC: 0000:0000:0108

Victim: là máy bị tấn công ARP attack

IP: 10.0.0.10

MAC: 0000:0000:0110

Attacker muốn thực hiện ARP attack đối với máy Victim. Attacker muốn mọi

gói tin HostA truyền tới máy Victim đều có thể chụp lại được để xem trộm.

Làm thế nào để Attacker có thể hiện được điều đó?

- Đầu tiên, HostA muốn gởi dữ liệu cho Victim. HostA cần phải biết địa chỉ

MAC của Victim để liên lạc. HostA sẽ gửi broadcast ARP Request tới tất cả

các máy trong cùng mạng Lan để hỏi xem IP 10.0.0.10 (IP của Victim) có địa

chỉ MAC là bao nhiêu.

GVHD: Th.S Chu Minh Yên SVTH: Doãn Thị Nhung36

Page 37: kỹ thuật tấn công giao thức tcp/ip

Đồ Án Tốt Nghiệp Nghiên cứu, tìm hiểu các điểm yếu giao thức TCP/IP xây dựng Module tấn công và giải pháp phòng chống.

- HostB, Attacker, Victim đều nhận được gói tin ARP Request, nhưng

chỉ có Victim là gửi lại gói tin ARP Reply lại cho HostA. ARP Reply chứa

thông tin về IP của Victim, MAC Victim, MAC HostA. Sau khi nhận được

gói tin ARP Reply từ Victim, HostA đã biết được địa chỉ MAC của Victim.

HostA bắt đầu thực hiện liên lạc, truyền dữ liệu tới Victim. HostB, Attacker

không thể xem nội dung dữ liệu được truyền giữa 2 máy HostA và Victim.

- Attacker muốn xem dữ liệu truyền giữa HostA và Victim. Attacker sử

dụng kiểu tấn công ARP Spoof. Attacker thực hiện gửi liên tục ARP Reply

chứa thông tin về IP Victim, MAC Attacker, MAC HostA. ở đây, thay vì là

MAC Victim, Attacker đã đổi thành địa chỉ MAC của mình.

- HostA nhận được ARP Reply và nghĩ là IP Victim 10.0.0.10 sẽ có địa

chỉ MAC là 0000:0000:0111 ( MAC của Attacker). HostA lưu thông tin này

vào bảng ARP Cache.

- Bây giờ mọi thông tin, dữ liệu HostA gửi tới 10.0.0.10 (Victim),

Attacker đều có thể nhận được, Attacker có thể xem tòan bộ nội dung HostA

gửi cho Victim , Attacker còn có thể kiểm sóat tòan bộ quá trình liên lạc giữa

HostA và Victim thông qua ARP Attack.

- Attacker thường xuyên gửi các gói tin ARP Reply chứa địa chỉ IP của

HostA và Victim nhưng có địa chỉ MAC là của Attacker.

- HostA nhận được gói tin này thì cứ nghĩ Victim sẽ có địa chỉ MAC là

0000:0000:0111 (MAC của Attacker).

- Victim nhận đươc gói tin này thì cứ nghĩ HostA sẽ có địa chỉ MAC là

0000:0000:0111 (MAC của Attacker).

- Mọi thông tin trao đổi giữa HostA và Victim, Attacker đều có thể

nhận được. Như vậy là Attacker có thể biết được nội dung trao đổi giữa

HostA và Victim.

Sau khi bị tấn công ARP attack, sẽ rất nguy hiểm cho người dùng vì

mọi thông tin trao đổi của họ đều bị lộ, nhất là những thông tin đó là quan

trọng, cần phải giữ bí mật.

Giới hạn và điểm yếu của kiểu tấn công ARP Spoof:

Chỉ có những máy nằm trong cùng đường mạng với máy Attacker mới

bị tấn công. Các máy nằm khác mạng sẽ không thể bị tấn công bằng hình thức

này vì:

GVHD: Th.S Chu Minh Yên SVTH: Doãn Thị Nhung37

Page 38: kỹ thuật tấn công giao thức tcp/ip

Đồ Án Tốt Nghiệp Nghiên cứu, tìm hiểu các điểm yếu giao thức TCP/IP xây dựng Module tấn công và giải pháp phòng chống.

+ Trong cùng một đường mạng LAN, các máy sẽ thực hiện trao đổi dữ

liệu với nhau dựa vào địa chỉ MAC. HostA muốn trao đổi dữ liệu với HostB.

HostA sẽ dò tìm trong bảng ARP cache xem IP của HostB sẽ có địa chỉ MAC

tương ứng là gì. HostA đóng gói dữ liệu cần truyền với MAC nguồn là MAC

HostA, MAC đích là MAC HostB. Sau đó HostA sẽ truyền dữ liệu tới HostB

dựa vào MAC đích của gói tin.[5]

+ Trong trường hợp HostA, HostB khác đường mạng muốn liên lạc với

nhau, thì sẽ phải dựa vào địa chỉ IP để truyền dữ liệu và phải thông qua một

thiết bị định tuyến, đó là router. HostA sẽ đóng gói dữ liệu cần truyền với

MAC nguồn là HostA, MAC đích là router. Gói tin đó sẽ được truyền đến

router, router sẽ dựa vào địa chỉ IP đích (IP HostB)và dò tìm trong bảng định

tuyến nhằm xác định con đường đi đến HostB. Router có khả năng ngăn chặn

các gói tin broadcast.

Hình thức tấn công này không thể thực hiện được trong mạng WAN,

trên Internet mà chỉ thực hiện được trên cùng mạng LAN.[5]

I.2.3 Điểm yếu trong giao thức ICMP

TCP/IP không thể xác thực một cách đầy đủ các thông báo lỗi của giao

thức Internet Control Message Protocol (ICMP). Do đó, hacker có thể cài đặt

lại (reset) hoặc làm chậm kết nối đã thiết lập bằng cách sử dụng những thông

báo lỗi ICMP giả mạo. Các ứng dụng phụ thuộc vào kết nối TCP thông lượng

cao hoặc thấp nhưng kéo dài bị nguy cơ lớn nhất từ những vụ tấn công này.

Để giả mạo một thông báo ICMP, hacker chỉ cần biết hoặc đoán ra cổng TCP

nguồn và đích đến. Một gói ping thông thường là 64 bytes (84 bytes nếu tính

đến IP header). Nhiều hệ thống máy tính không thể "nắm" được 1 gói ping

lớn hơn kích cỡ gói IP lớn nhất (65,535 bytes), vì vậy send gói ping với kích

cỡ lớn như vậy có thể làm crash máy tính đích. Nói chung, send 1 gói ping có

kích cỡ quá lớn là bất hợp pháp về mặt giao thức mạng nhưng có thể thực

hiện được nếu chia gói ping ra làm nhiều phần (phân mảnh - fragment). Khi

máy tính đích nhận được gói ping đã bị phân mảnh nó phải hợp lại các mảnh

đó thành gói ban đầu, việc này có thể gây ra lỗi tràn bộ đệm và làm crash máy

tính đích. Ping of death ảnh hưởng rất lớn đến các hệ điều hành như Unix,

Linux, Mac, Windows và các thiết bị như printer và router.[5]

Phương pháp tấn công

GVHD: Th.S Chu Minh Yên SVTH: Doãn Thị Nhung38

Page 39: kỹ thuật tấn công giao thức tcp/ip

Đồ Án Tốt Nghiệp Nghiên cứu, tìm hiểu các điểm yếu giao thức TCP/IP xây dựng Module tấn công và giải pháp phòng chống.

Kẻ tấn công gửi những gói tin IP lớn hơn số lương bytes cho phép của

tin IP là 65.536 bytes.Quá trỡnh chia nhỏ gúi tin IP thành những phần nhỏ

được thực hiện ở layer II.Quá trỡnh chia nhỏ cú thể thực hiện với gúi IP lớn

hơn 65.536 bytes. Nhưng hệ điều hành không thể nhận biết được độ lớn của

gói tin này và sẽ bị khởi động lại, hay đơn giản là sẽ bị gián đoạn giao tiếp.Để

nhận biết kẻ tấn công gửi gói tin lớn hơn gói tin cho phép thỡ tương đối dễ

dàng.[5]

I.2.4 Điểm yếu trong RIP

Mặc dù không “chính thức” là một thành phần của TCP/IP, nhưng RIP

(Routing Information Protocol) thường được coi là một thành phần “thiết

yếu” trong TCP/IP. Một cách tổng quát, vai trò của RIP dùng để cung cấp các

thông tin về đường đi trong các mạng, chẳng hạn như cung cấp thông tin về

đường đi ngắn nhất, và quảng bá thông tin về đường đi từ mạng nội bộ tới các

mạng khác. Giống như TCP/IP, RIP không xây dựng cơ chế xác thực, và các

thông tin được cung cấp trong RIP packet thường được sử dụng mà không có

sự kiểm tra nào. Việc tấn công vào RIP không giống với các cách tấn công

thông thường bởi vì nó sẽ thay đổi đích đến của dữ liệu. Ví dụ, một kẻ tấn

công có thể giả mạo một gói tin RIP, thông báo máy của attacker là đường đi

nhanh nhất ra mạng ngoài. Khi đó, tất cả các gói tin gửi từ mạng đó sẽ bị điều

hướng qua máy của attacker. Tại đây chúng có thể bị thay đổi, hay lấy cắp nội

dung.[9]

Phương pháp tấn công

Một dạng tấn công đối RIP dạng tấn công từ chối dịch vụ. Dạng này có

thể thực hiện bằng rất nhiều cách. Ví dụ, việc ngăn cản các thông điệp cập

nhật router gửi đi hay nhận và sẽ dẫn đến sự hạ xuống của vài phần của mạng.

Một kẻ công có thể gửi dữ liệu tới nhiều bộ định tuyến, hay làm tràn ngập bộ

định tuyến dẫn đến ngập lụt mạng.[4]

I.2.5 Thiếu định danh duy nhất

Trước kia, một địa chỉ IP được dùng để định danh một host trên mạng.

Tuy nhiên, do TCP/IP ngày càng trở nên phổ biến, dẫn đến không gian địa chỉ

IP ngày càng trở nên bị thu hẹp. Đó là chưa kể đến các Firewall, Proxy server,

Network Address Translator ngày càng trở nên phức tạp hơn để có thể sử

dụng IP Address làm định danh để quản lý, chuyển đổi các địa chỉ IP giữa

mạng nội bộ và mạng ngoài. Các host khác nhau có thể cùng chung một địa

GVHD: Th.S Chu Minh Yên SVTH: Doãn Thị Nhung39

Page 40: kỹ thuật tấn công giao thức tcp/ip

Đồ Án Tốt Nghiệp Nghiên cứu, tìm hiểu các điểm yếu giao thức TCP/IP xây dựng Module tấn công và giải pháp phòng chống.

chỉ IP, hoặc các địa chỉ IP khác nhau có thể thuộc về cùng một host nào đó.

Vì thế, địa chỉ IP có thể sẽ không còn được dùng để định danh duy nhất một

host nữa, thậm chí chỉ trong một khoảng thời gian ngắn nữa thôi.[9]

I.2.6 Điểm yếu về ISN (Initial Sequence Number)

Có thể coi đây là một trường hợp con của IP Spoofing về bản chất,

nhưng khác về cách thức thực hiện. Do trường squence number trong TCP

header là một số 32 bit nên việc đoán đúng giá trị ISN là rất khó và chậm.

Tuy nhiên, nếu số hiệu ISN của một connection nào đó được chỉ định bằng

một phương pháp nào đó có thể thuận lợi cho việc đoán trước, thì việc dự

đoán sẽ trở nên dễ dàng hơn. Điểm yếu này được phát hiện đầu tiên vào năm

1985. Bằng cách ban đầu thiết lập một kết nối thật sự tới máy nạn nhân

(victim), kẻ tấn công có thể xác định trạng thái hiện tại của bộ đếm của hệ

thống. Sau đó, attacker sẽ biết được giá trị ISN kế tiếp được khai báo bởi

victim sẽ tương tự như giá trị ISN đã xác định trước đó, cộng thêm 64. Tuy

nhiên, khi victim nhận được các gói tin giả mạo hoàn thành việc nhận gói tin

SYN, nó sẽ gửi một gói tin SYN+ACK cho trạm bị giả mạo. Khi đó, trạm này

sẽ loại bỏ gói tin SYN+ACK, vì nó chưa bao giờ khởi tạo một connection. Nó

sẽ gửi một lệnh reset (RST) để thông báo tình trạng này, và kết nối của

attacker sẽ bị bỏ qua. Để tránh tình trạng này, kẻ tấn công có thể sử dụng cách

tấn công SYN như đã nói ở bài trước để *làm ngập lụt* host mà nó đang mạo

nhận. Khi đó, gói tin SYN+ACK được gửi bởi victim tới nó sẽ bị bỏ qua,

cùng với bất kỳ gói tin nào khác vì bản thân nó lúc này đang ở tình trạng

*ngập lụt*. Và bây giờ, attacker có toàn quyền để hoàn thành kết nối của nó

với victim mà không sợ bị RESET giữa chừng. Việc thường xuyên tăng bộ

đếm ISN, như một số hệ điều hành khác đang thực hiện, dường như cũng

không trợ giúp được gì nhiều trong việc hạn chế kẻ tấn công đoán được giá trị

ISN. Ngay cả khi bộ đếm được tăng 250.000 lần trong một giây (như đề xuất

trong chuẩn TCP), attacker vẫn có thể ước lượng được giá trị ISN. Bằng cách

liên tục lặp lại việc dự đoán, kẻ tấn công có thể thiết lập được kết nối với một

giá trị ISN hợp lệ chỉ trong một vài giờ đồng hồ.[9]

I.2.7 Điểm yếu trong việc xác thực gói tin IP

Việc hoàn toàn thiếu tính xác thực cho các gói tin IP là điểm yếu chung

nhất đối với TCP/IP. Với việc không có cơ chế xác thực dẫn đến không có

một sự bảo đảm nào cho biết gói tin này có xuất phát từ nguồn gốc thật sự của

GVHD: Th.S Chu Minh Yên SVTH: Doãn Thị Nhung40

Page 41: kỹ thuật tấn công giao thức tcp/ip

Đồ Án Tốt Nghiệp Nghiên cứu, tìm hiểu các điểm yếu giao thức TCP/IP xây dựng Module tấn công và giải pháp phòng chống.

nó hay không. Đây chính là bản chất của tất cả các phương pháp tấn công giả

mạo địa chỉ IP và cũng là điểm yếu chính của vấn đề bảo mật IP.[9]

Kết luận :

Chương một đã tìm hiểu được tổng quan thành phần và hoạt động của

bộ giao thức TCP/IP từ đó đã thấy được những điểm yếu mất an toàn của giao

thức TCP/IP và những phương pháp tấn công vào điểm yếu đó.

Mặc dù TCP/IP tồn tại cùng với những điểm đó mà giao thức vẫn được

sử dụng phổ biến ở các hệ thống mạng hiện nay. Lý do là vì bên cạnh những

điểm yếu mất an toàn đó lại có những giải pháp phòng chống tương ứng.

Ở chương tiếp theo sẽ đi sâu tìm hiểu những giải pháp bảo đảm an toàn

cho những hệ thống có sử dụng giao thức TCP/IP.

GVHD: Th.S Chu Minh Yên SVTH: Doãn Thị Nhung41

Page 42: kỹ thuật tấn công giao thức tcp/ip

Đồ Án Tốt Nghiệp Nghiên cứu, tìm hiểu các điểm yếu giao thức TCP/IP xây dựng Module tấn công và giải pháp phòng chống.

Chương II : GIẢI PHÁP ĐẢM BẢO AN TOÀN CHO

HỆ THỐNG MẠNG SỬ DỤNG TCP/IPII.1 Các giải pháp không sử dụng mật mã

II.1.1 Phòng chống kiểu tấn công giả mạo IP Spoofing

Để làm giảm nguy cơ tấn công giả mạo địa chỉ IP cho một hệ thống

mạng,ta có thể sử dụng các phương pháp sau:

II.1.1.1 Sử dụng bộ lọc gói tin TCP/IP

Có thể cài đặt bộ lọc dữ liệu đi vào và đi ra khỏi hệ thống mạng để

kiểm soát luồng dữ liệu. Một bộ lọc gói tin cho các dịch vụ TCP/IP điều khiển

việc vận chuyển dữ liệu giữa các mạng dựa vào các giao thức và các địa chỉ.

Các router có thể dùng các bộ lọc theo những cách khác nhau. Một vài router

có các bộ lọc tác động vào các dịch vụ mạng theo cả chiều đi vào và đi ra,

trong khi số khác có các bộ lọc chỉ tác động theo một chiều. Nhiều dịch vụ

mang tính hai chiều. Ví dụ, một người dùng ở hệ thống A telnet tới hệ thống

B, và hệ thống B gửi một vài kiểu trả lời lại cho hệ thống A. Vì vậy, một số

router cần có hai bộ lọc để xử lý các dịch vụ hai chiều này. Hầu hết các router

có thể lọc một hoặc nhiều thông tin sau: địa chỉ IP nguồn, cổng nguồn, địa chỉ

IP đích, cổng đích với kiểu giao thức. Một vài router còn có thể lọc bất kỳ bit

nào hay bất kỳ mẫu hình bit nào trong IP header. Tuy nhiên, các router

thường không có khả năng lọc nội dung của các dịch vụ( như tên tập tin FTP

chẳng hạn).[9]

Các bộ lọc gói tin đặc biệt quan trọng đối với các router khi chúng giữ

vai trò một gateway giữa các mạng được tin cậy và không được tin cậy. Trong

vai trò đó, router có thể áp đặt chính sách bảo mật, loại bỏ các giao thức và từ

chối các cổng dựa theo các chính sách của mạng được tin cậy. Các bộ lọc

cũng quan trọng bởi khả năng áp đặt sự ràng buộc địa chỉ. [9]

Hai đặc điểm chính của các bộ lọc gói tin TCP/IP là việc sắp xếp và độ

dài. Một bộ lọc có một hoặc nhiều quy tắc, mỗi quy tắc hoặc chấp nhận hoặc

ngăn cấm một tập hợp gói tin nào đó. Số quy tắc trong một gói tin quy định

độ dài của nó. Nói chung, khi độ dài tăng lên thì bộ lọc càng phức tạp và càng

khó để gỡ rối. Trật tự các quy tắc trong một bộ lọc gói tin là xác định (tới

hạn). Khi router phân tích một gói tin dựa vào bộ lọc, gói tin sẽ được so sánh

với từng quy tắc lọc tin theo tuần tự. Nếu có sự trùng hợp thì gói tin hoặc

GVHD: Th.S Chu Minh Yên SVTH: Doãn Thị Nhung42

Page 43: kỹ thuật tấn công giao thức tcp/ip

Đồ Án Tốt Nghiệp Nghiên cứu, tìm hiểu các điểm yếu giao thức TCP/IP xây dựng Module tấn công và giải pháp phòng chống.

được cho phép hoặc bị ngăn cấm và phần còn lại của bộ lọc được bỏ qua. Nếu

không có sự trùng hợp gói tin sẽ bị ngăn cấm do quy tắc ngăn cấm tuyệt đối ở

cuối bộ lọc. Dùng các bộ lọc gói tin: chỉ cho phép các dịch vụ và các giao

thức theo quy định. Xem xét cẩn thận dịch vụ mạng nào sẽ được phép đi qua

router (đi vào và đi ra) và được phép đi đến router. Nếu có thể, hăy dùng

nguyên tắc sau để tạo ra các bộ lọc: các dịch vụ nào không được cho phép

một cách rõ ràng đều phải bị cấm. Nguyên tắc này đặt biệt quan trọng đối với

các border router. Lập danh sách các dịch vụ và các giao thức phải đi qua

router, các dịch vụ và các giao thức mà router cần đến cho chính hoạt động

của nó. Tạo ra một tập các quy tắc lọc tin cho phép hoạt động giao thông nằm

trong danh sách và cấm tất cả các hoạt động giao thông khác. [9]

Trong trường hợp các mạng hay các host nào đó cần truy xuất các dịch

vụ đặt biệt, thêm vào một quy tắc lọc tin cho phép dịch vụ đó nhưng chỉ cho

các địa chỉ host cụ thể hay các vùng địa chỉ cụ thể. Ví dụ, firewall host mạng

có thể lọc địa chỉ duy nhất được phép kích hoạt các kết nối web (TCP cổng

80) thông qua router. [9]

II.1.1.2 Sử dụng Firewall

Firewall có thể coi là một công cụ hữu hiệu trong việc phòng chống các

kiểu tấn công giả mạo trên. Các *proxy service* thông thường được nói đến

như các firewall (mức ứng dụng). Nhiệm vụ quan trọng của firewall nhằm

chống lại kiểu tấn công giả mạo là chúng vạch ra ranh giới rõ ràng vùng bên

ngoài (outside) firewall và bên trong(inside) firewall, những gì thuộc vùng

inside phải qua cổng *inside* trên firewall, và những gì thuộc vùng outside

phải đi vào qua cổng *outside*. Điều này có nghĩa là bộ lọc gói tin được cài

đặt trong firewall sẽ làm nhiệm vụ lọc bỏ các gói tin bị coi là nguy hiểm. Giả

sử bộ lọc này *nhận thấy* có một gói tin có nguồn gốc từ outside nhưng lại

có địa chỉ IP nằm trong vùng inside. Đó đích thị là một gói tin giả mạo và cần

phải lọc bỏ. Tương tự, nếu một gói tin nào đó có nguồn gốc không thuộc vùng

inside mà firewall quản lý, nó cũng có thể bị lọc bỏ ngay lập tức. Nói cách

khác, kiểu lọc này phân chia mạng Internet ra thành các vùng nhỏ hơn mà

trong đó không có vùng nào có thể giả mạo lẫn nhau được. Tuy nhiên, việc

giả mạo trong nội bộ vùng inside thì firewall không thể ngăn chặn được. Có

thể sử dụng kết hợp cả firewall mềm và firewall cứng. Hiện nay có rất nhiều

sản phẩm firewall cứng có tích hợp tính năng anti IP Spoofing. [5]

GVHD: Th.S Chu Minh Yên SVTH: Doãn Thị Nhung43

Page 44: kỹ thuật tấn công giao thức tcp/ip

Đồ Án Tốt Nghiệp Nghiên cứu, tìm hiểu các điểm yếu giao thức TCP/IP xây dựng Module tấn công và giải pháp phòng chống.

II.1.1.3 Sử dụng ACLs

Có thể dùng danh sách kiểm tra truy cập (Access Control List-ACL)

trên các interface của router. Một ACL có thể dc dùng để loại bỏ những traffic

từ bên ngoài mà lại được đóng gói bởi một địa chỉ trong mạng cục bộ khi bị

lôi cuốn vào một cuộc tấn công DDoS. Vì thế một ACL có thể loại bỏ các

traffic rời khỏi mạng cục bộ có địa chỉ nguồn khác với không gian địa chỉ IP

bên trong mạng nội bộ. [5]

II.1.2 Phòng chống kiểu tấn công giả mạo ARP

Cách phát hiện và phòng chống:

Dùng lệnh: Gắn cố định địa chỉ IP vào địa chỉ MAC

+ ipconfig /all xem MAC của mình.

+ arp -a xem bảng ARP trên máy mình, kiểm tra MAC của B có phải đúng là

MAC B hay không.

Hình 2.1 Địa chỉ MAC

+ arp -d * xóa toàn bộ ARP table trên máy mình, như vậy các địa chỉ MAC bị

tấn công cũng mất, và máy tính sẽ bắt đầu học lại. Nhưng nếu máy tấn công

vẫn tiếp tục bơm các gói tin ARP đầu độc thì việc xóa ARP table này cũng vô

ích.

Hình 2.2 Xóa địa chỉ MAC

GVHD: Th.S Chu Minh Yên SVTH: Doãn Thị Nhung44

Page 45: kỹ thuật tấn công giao thức tcp/ip

Đồ Án Tốt Nghiệp Nghiên cứu, tìm hiểu các điểm yếu giao thức TCP/IP xây dựng Module tấn công và giải pháp phòng chống.

+ arp -s gắn cố định IP đích vào MAC thật của nó, như vậy kẻ tấn công không

đầu độc được IP này nữa. Nhưng việc này không khả thi cho mạng lớn, nhiều

máy tính, và có sự thay đổi IP (ví dụ dùng DHCP).

Hình 2.3 Gán địa chỉ IP vào địa chỉ MAC

Dùng thiết bị: Sử dụng switch có chức năng port security. Chức năng này

mục tiêu là để gắn cứng 1 hoặc 1 số MAC vào 1 port, như vậy máy tấn công

không thể giả danh nhiều địa chỉ MAC được nữa. Port Security giới hạn số

lượng của địa chỉ MAC hợp lệ được cho phép trên Port. Tất cả những port

trên Switch hoặc những interface nên được đảm bảo trước khi triển khai.Theo

cách này, những đặt tính được cài đặt hoặc gỡ bỏ như là những yêu cầu để

thêm vào hoặc làm dài thêm những đặt tính 1 cách ngẫu nhiên hoặc là những

kết quả bảo mật vốn dã có sẵn. Port Security không sử dụng cho những Port

access động hoặc port đích cho người phân tích Switch Port. Và cho đến khi

đó Port security để bật tính năng Port trên Switch nhiều nhất có thể. [7]

Dùng phần mềm anti ARP Spoofing

Trên mạng có rất nhiều phần mêm anti arp như : anti netcut, antiarp...

Đặc biệt là phần mềm netcut. Hiện nay rất nhiều người thường sử dụng phần

mềm netcut. Phần mềm này sẽ giúp tìm tất cả các địa chỉ IP của các máy đang

chạy trên mạng LAN và có thể tùy ý tắt hay bật mạng cho các máy đó ngay

trên máy của mình. Thời gian gần đây rất nhiều người sử dụng phần mềm

dùng để nghịch trong văn phòng, quán net.

GVHD: Th.S Chu Minh Yên SVTH: Doãn Thị Nhung45

Page 46: kỹ thuật tấn công giao thức tcp/ip

Đồ Án Tốt Nghiệp Nghiên cứu, tìm hiểu các điểm yếu giao thức TCP/IP xây dựng Module tấn công và giải pháp phòng chống.

Hình 2.4 Giao diện của chương trình Netcut

Cách sử dụng rất đơn giản chỉ cần chọn ip và nhấn vào Cut Off là máy

đó sẽ không thể vào mạng được. Cơ chế tấn công dựa vào giả mạo địa chỉ

ARP.

Phần mềm anti netcut được dùng để phát hiện xem máy nào đang bị sử

dụng phần mềm netcut, giao diện của chương trình anti netcut:

Hình 2.5 Giao diện của chương trình Anti Netcut

Nhìn vào chương trình sẽ thấy phần mềm đã phát hiện máy có địa chỉ

ip 196.219.118.153 đang bị sử dụng phần mềm netcut.

II.1.3 Phòng chống kiểu tấn công TCP SYN Flood

Cách phát hiện kiểu tấn công SYN Flood:

- Các hoạt động mạng tăng cao.

- CPU của router tăng cao.

- Không trả lời từ các host.

- Các máy bị treo ở vài thời điểm.

Một cách để ngăn ngừa kiểu tấn công SYN attack là đơn giản loại bỏ

các gói TCP header trong đó chỉ có cờ SYN được thiết lập. Nói cách khác,

loại bỏ tất cả các gói tin đầu tiên trong một kết nối TCP mới. Trong nhiều

trường hợp, một router không nên cho phép các kết nối TCP được thiết lập

GVHD: Th.S Chu Minh Yên SVTH: Doãn Thị Nhung46

Page 47: kỹ thuật tấn công giao thức tcp/ip

Đồ Án Tốt Nghiệp Nghiên cứu, tìm hiểu các điểm yếu giao thức TCP/IP xây dựng Module tấn công và giải pháp phòng chống.

bởi client. Trong trường hợp này, việc lọc các TCP segment ban đầu giúp

ngăn ngừa SYN attack.[9]

II.2 Các giải pháp sử dụng mật mã

II.2.1 Sử dụng phương pháp xác thực

Một phương pháp khác để giảm thiểu khả năng giả mạo của kẻ tấn

công là thêm quá trình xác thực ở tầng Application. Dĩ nhiên nếu chỉ thêm

phần xác thực đơn thuần thì chưa đủ nếu không thêm phần mã hoá. Mặt khác,

sau quá trình xác thực mức ứng dụng, kiểu tấn công bắt cóc phiên (hijacking)

vẫn có thể xảy ra. Rất may là vấn đề này có thể được giải quyết bởi hệ thống

xác thực Kerberos (Kerberos Authentication System). Hệ thống Kerberos sử

dụng mô hình client/server và cung cấp cơ chế xác thực user-to-server hơn là

kiểu xác thực host-to-host đơn thuần. Một khi được cài đặt, hệ thống

Kerberos sử dụng khoá phiên (session key) để mã hoá quá trình truyền của bất

kỳ dịch vụ nào mà người dùng đó yêu cầu. Kẻ tấn công sẽ không thể giả mạo

quá trình truyền tin nếu không biết khoá phiên này. Do khoá phiên được sinh

ra dựa trên khoá mật (secret key) - là khoá mà chỉ người dùng thực sự và

server được tin cậy (trusted server) biết đến nên việc lấy được khoá mật sẽ rất

khó. Tuy nhiên, sẽ rất khó quản lý nếu như mỗi trạm trên mạng cần phải biết

thông tin về khoá của tất cả các trạm khác nên cần thiết phải tồn tại một

trusted host (nằm ở một nơi nào đó trên mạng), gọi là trung tâm phân phối

khoá (Key Distribution Center - KDC) quản lý khoá cho tất cả các trạm trên

mạng, hoặc một phần của một mạng nào đó. Theo đó, khi một trạm mới

online, chỉ có KDC và trạm này cần phải cấu hình với khoá của nó; khoá có

thể được phân phối một cách vật lý hoặc bằng các phương tiện bảo mật khác.

Ngoài ra, hệ thống Kerberos còn có khả năng chống lại kiểu tấn công phát lại

(replay attack). Mặc dù còn một số vấn đề liên quan đến việc sử dụng hệ

thống Kerberos để xác thực giữa 2 trạm làm việc nhưng nhìn chung Kerberos

được xem như một phương pháp tăng cường an ninh hiệu quả cho các mạng

máy tính.[9]

II.2.2 Mã hóa từng gói tin IP (SKIP)

Thay vì phải trao đổi khoá phiên trong quá trình truyền tin như đã bàn

ở phần nói về Kerberos cho một phiên sử dụng dịch vụ telnet chẳng hạn, có

thể lựa chọn giải pháp mã hoá tất cả các gói tin IP tại tất cả các thời điểm ở

tầng IP. Tất nhiên là giải pháp mã hoá này phải thống nhất theo một cách nào

GVHD: Th.S Chu Minh Yên SVTH: Doãn Thị Nhung47

Page 48: kỹ thuật tấn công giao thức tcp/ip

Đồ Án Tốt Nghiệp Nghiên cứu, tìm hiểu các điểm yếu giao thức TCP/IP xây dựng Module tấn công và giải pháp phòng chống.

đó để phía đích có thể giải mã chúng một cách thành công. Hiện tại có một

giải pháp thực hiện mã hoá mức *gói tin* (packet-level) được gọi là Simple

Key Management for IP (SKIP). SKIP giả thiết rằng mỗi bên tham gia quá

trình truyền tin đều có một khóa công khai (public key) dùng để tạo nhiều

khoá giữa 2 phía. ý tưởng cơ bản của thuật toán này là đóng gói packet-key

(khoá để giải mã gói tin này) vào bên trong gói tin, và mã hoá nó với một

khoá đã được thoả thuận giữa 2 bên (shared key). SKIP cũng cung cấp một

phương thức trao đổi shared key giữa 2 phía. Vì phương pháp này không dựa

trên từng phiên làm việc nên nó có thể áp dụng cho tất cả các loại truyền

thông dựa trên TCP/IP.[9]

II.2.3 Sử dụng IPSEC

Tổng quan

Giao thức IPsec được làm việc tại tầng Network Layer (layer 3) của mô hình

OSI.Điều này tạo ra tính mềm dẻo cho IPsec, giao thức này có thể hoạt động

từ tầng 4 với TCP, UDP, hầu hết các giao thức sử dụng tại tầng này. IPsec có

một tính năng cao cấp hơn SSL và các phương thức khác hoạt động tại các

tầng trên của mô hình OSI. Với một ứng dụng sử dụng IPsec mã (code) không

bị thay đổi, nhưng nếu ứng dụng đó bắt buộc sử dụng SSL và các giao thức

bảo mật trên các tầng trên trong mô hình OSI thì đoạn mã ứng dụng đó sẽ bị

thay đổi lớn. IPsec đã được giới thiệu và cung cấp các dịch vụ bảo mật:

1. Mã hoá quá trình truyền thông tin

2. Đảm bảo tính nguyên vẹn của dữ liệu

3. Phải được xác thực giữa các giao tiếp

4. Chống quá trình replay trong các phiên bảo mật

Kiến trúc của IPSEC

Giao thức IPSec cung cấp 3 phần tổng thể hay còn gọi là 3 công nghệ

khoá. Những công nghệ này có thể loại bỏ các mối đe doạ đối với mạng IP:

+ AH (Authentication Header): Giúp các bên tham gia trao đổi thông tin kiểm

tra xem dữ liệu có bị sửa đổi trong quá trình chuyển tiếp hay không và dữ liệu

có thực sự đến từ đúng nguồn hay không. Công nghệ này gắn vào dữ liệu

trong mỗi gói một dấu hiệu có thể kiểm tra được (nó tương tự như dấu hiệu e-

mail PGP) cho phép bạn kiểm tra số nhận dạng của người gửi dữ liệu và tính

toàn vẹn của dữ liệu. IP Authentication Header giúp đảm bảo tính toàn vẹn và

cung cấp xác thực. AH được sử dụng trong các kết nối không có tính đảm bảo

GVHD: Th.S Chu Minh Yên SVTH: Doãn Thị Nhung48

Page 49: kỹ thuật tấn công giao thức tcp/ip

Đồ Án Tốt Nghiệp Nghiên cứu, tìm hiểu các điểm yếu giao thức TCP/IP xây dựng Module tấn công và giải pháp phòng chống.

dữ liệu. Hơn nữa nó là lựa chọn nhằm chống lại các tấn công replay attack

bằng cách sử dụng công nghệ tấn công sliding windows và discarding older

packets. AH bảo vệ quá trình truyền dữ liệu khi sử dụng IP. Trong IPv4, IP

header có bao gồm TOS, Flags, Fragment Offset, TTL, và Header Checksum.

AH thực hiện trực tiếp trong phần đầu tiên của gói tin IP. Dưới đây là mô

hình của AH header.[10]

Hình 2.6 Mô hình của AH Header

ý nghĩa của từng phần:

- Next Header : Nhận dạng giao thức trong sử dụng truyền thông tin.

- Payload length : Độ lớn của gói tin AH.

- RESERVED : Sử dụng trong tương lai

- Security parameters index (SPI) : Nhận ra các thông số bảo mật, được tích

hợp với địa chỉ IP, và nhận dạng các thương lượng bảo mật được kết hợp với

gói tin.

- Sequence number : Một số tự động tăng lên mỗi gói tin, sử dụng nhằm

chống lại tấn công dạng replay attacks.

- Authentication data : Bao gồm thông số Integrity check value (ICV) cần

thiết trong gói tin xác thực.

+Encapsulating Security Payload (ESP)

Giao thức ESP cung cấp xác thực, độ toàn vẹn, đảm bảo tính bảo mật

cho gói tin. ESP cũng hỗ trợ tính năng cấu hình sử dụng trong tính huống chỉ

cần bảo mã hoá và chỉ cần cho authentication, nhưng sử dụng mã hoá mà

không yêu cầu xác thực không đảm bảo tính bảo mật. Không như AH, header

GVHD: Th.S Chu Minh Yên SVTH: Doãn Thị Nhung49

Page 50: kỹ thuật tấn công giao thức tcp/ip

Đồ Án Tốt Nghiệp Nghiên cứu, tìm hiểu các điểm yếu giao thức TCP/IP xây dựng Module tấn công và giải pháp phòng chống.

của gói tin IP, bao gồm các option khác. ESP thực hiện trên top IP sử dụng

giao thức IP và mang số hiệu 50 và AH mang số hiệu 51.

Hình 2.7 Mô hình Encapsulating Security Payload

ý nghĩa của các phần:

- Security parameters index (SPI) : Nhận ra các thông số được tích hợp với

địa chỉ IP.

- Sequence number:Tự động tăng có tác dụng chống tấn công kiểu replay

attacks.

- Payload data : Cho dữ liệu truyền đi

- Padding : Sử dụng vài block mã hoá

- Pad length : Độ lớn của padding.

- Next header : Nhận ra giao thức được sử dụng trong quá trình truyền thông

tin.

- Authentication data : Bao gồm dữ liệu để xác thực cho gói tin.

IPSEC có khả năng cung cấp:

Chứng thực 2 chiều trước và trong suốt quá trình giao tiếp. IPSEC quy

định cho cả 2 bên tham gia giao tiếp phải xác định chính mình trong suốt quy

trình giao tiếp.Do đó sẽ chống lại các cuộc tấn công giả mạo.[10]

Tạo sự tin cậy qua việc mã hóa, và xác nhận số các Packet. IPSEC có 2

chẽ độ Encapsulating Security Payload (ESP) cung cấp cơ chế mã hóa dùng

nhiều thuật toán khác nhau, và Authentication Header (AH) xác nhận các

thông tin chuyển giao, nhưng không mã hóa.[10]

GVHD: Th.S Chu Minh Yên SVTH: Doãn Thị Nhung50

Page 51: kỹ thuật tấn công giao thức tcp/ip

Đồ Án Tốt Nghiệp Nghiên cứu, tìm hiểu các điểm yếu giao thức TCP/IP xây dựng Module tấn công và giải pháp phòng chống.

tích hợp các thông tin chuyển giao và sẽ loại ngay bất kì thông tin nào

bị chỉnh sửa. Cả hai loại ESP và AH đều kiểm tra tính tích hợp của các thông

tin chuyển giao. Nếu một gói tin đã chỉnh sửa, thì các xác nhận số sẽ không

trùng khớp, kết quả gói tin sẽ bị loại. ESP cũng mã hóa địa chỉ nguồn và địa

chỉ đích như một phần của việc mã hóa thông tin chuyển giao.[10]

Chống lại các cuộc tấn công Replay (thông tin chuyển giao qua mạng

sẽ bị attacker chặn, chỉnh sữa, và được gửi đi sau đó đến đúng địa chỉ người

nhận, người nhận không hề hay biết và vẫn tin rằng đấy là thông tin hợp

pháp). IPSEC dùng kĩ thuật đánh số liên tiếp cho các Packet Data của mình

(Sequence numbers), nhằm làm cho attacker không thể sử dụng lại các dữ liệu

đã chặn được, với ý đồ bất hợp pháp. Dùng Sequence numbers còn giúp bảo

vệ chống việc chặn và đánh cắp dữ liệu, sau đó dùng những thông tin lấy

được để truy cập hợp pháp vào một ngày nào đó.[10]

IPSEC làm việc thế nào ?

Có thể cấu hình IPSEC thông qua Local policy, hoặc triển khai trên

diện rộng thì dùng Active Directory Group Policy (GPO).[10]

1. Giả sử có 2 Computer: Pc A và Pc B, IPSEC policy đã được cấu hình

trên 2 Pc này. Sau khi được cấu hình IPSEC policy sẽ báo cho IPSEC driver

cách làm thế nào để vận hành và xác định các liên kết bảo mật giữa 2 Pc khi

nối kết được thiết lập. Các liên kết bảo mật ảnh hưởng đến những giao thức

mã hóa sẽ được sử dụng cho những loại thông tin giao tiếp nào và những

phương thức xác thực nào sẽ được đem ra thương lượng.

2. Liên kết bảo mật mang tính chất thương lượng. Internet Key

Exchange – IKE, sẽ có trách nhiệm thương lượng để tạo liên kết bảo mật. IKE

kết hợp từ 2 giao thức: Internet Security Association and Key Management

Protocol (ISAKMP) và Oakley Key Determination Protocol. Nếu Computer

A yêu cầu xác thực thông qua Certificate và Computer B yêu cầu dùng giao

thức Kerberos, thì IKE sẽ không thể thiết lập liên kết bảo mật giữa 2

Computer. Nếu dùng Network Monitor để theo dõi IPSEC hoạt động, sẽ

không thấy được bất cứ AH hoặc ESP packet nào, vì giao tiếp IPSEC chưa

được thiết lập, có lẽ sẽ chỉ quan sát được các ISAKMP packets.

3. Nếu như liên kết ảo mật được thiết lập giửa 2 computer IPSEC driver

sẽ quan sát tất cả IP traffic, so sánh các traffic đã được định nghĩa trong các

Filter, nếu có hướng đi tiếp các traffic này sẽ được mã hóa hoặc xác nhận số.

GVHD: Th.S Chu Minh Yên SVTH: Doãn Thị Nhung51

Page 52: kỹ thuật tấn công giao thức tcp/ip

Đồ Án Tốt Nghiệp Nghiên cứu, tìm hiểu các điểm yếu giao thức TCP/IP xây dựng Module tấn công và giải pháp phòng chống.

Hình 2.8 Mô hình hoạt động của IPSec trong Active Directory Domain

Sử dụng IPSEC VPN

IPSec là giao thức mạng về bảo mật và thường được liên kết với VPN

(tất nhiên có thể dùng IPsec ở trong mạng cục bộ LAN). IPSec cho phép việc

truyền tải dữ liệu được mã hóa an toàn ở lớp mạng (Network Layer) theo mô

hình OSI thông qua mạng công cộng như Internet VPN lớp mạng đề cập đến

những thách thức trong việc dùng Internet nhưlà một môi trường truyền đưa

các lưu lượng đa giao thức và nhạy cảm.[10]

Hình 2.9 Giải pháp IPSec VPN

Việc thiết lập một đường hầm IPSec (IPsec tunnel) giữa hai thực thể,

trước tiên, phải thỏa thuận về chính sách an ninh (security policy), giải thuật

GVHD: Th.S Chu Minh Yên SVTH: Doãn Thị Nhung52

Page 53: kỹ thuật tấn công giao thức tcp/ip

Đồ Án Tốt Nghiệp Nghiên cứu, tìm hiểu các điểm yếu giao thức TCP/IP xây dựng Module tấn công và giải pháp phòng chống.

mã hóa (encryption algorithm), kiểu xác thực (authentication method) sẽ được

dùng để tạo kênh. Trong IPSec tất cả các nghi thức lớp trên lớp mạng (từ lớp

4) như TCP, UDP, SNMP, HTTP, POP, SMTP, KaZaa…đều được mã hóa

một khi kênh IPSec được thiết lập.[10]

II.2.4 Sử dụng SSL/TLS

Có hai giao thức bảo mật quan trọng lớp vận chuyển (Layer Transport)

có tầm quan trọng cao nhất đối với sự bảo mật của các trình ứng dụng trên

Web: đó là hai giao thức SSL (Secure Socket Layer) và TLS (Transport Layer

Security). SSL/TLS là các giao thức đa mục đích được thiết kế để tạo gia các

giao tiếp giữa 2 chương trình ứng dụng trên một cổng định trước nhằm mã

hoá toàn bộ các thông tin đến và đi, mà ngày nay được sử dụng rộng rãi trong

các giao dịch điện tử như mật khẩu, truyền số hiệu thẻ tín dụng.[9]

Cấu trúc của SSL và giao thức SSL:

Hình 2.10 Mô hình SSL

Giao thức SSL cung cấp sự bảo mật truyền thông vốn có ba đặc tính cơ

bản: [9]

1. Các bên giao tiếp (nghĩa là client và server) có thể xác thực nhau bằng cách

sử dụng mật mã khóa chung.

2. Sự bí mật của lưu lượng dữ liệu được bảo vệ vì nối kết được mã hóa trong

suốt sau khi một sự thiết lập quan hệ ban đầu và sự thương lượng khóa

session đã xảy ra.

3. Tính xác thực và tính toàn vẹn của lưu lượng dữ liệu cũng được bảo vệ vì

các thông báo được xác thực và được kiểm tra tính toàn vẹn một cách trong

suốt bằng cách sử dụng MAC. Tuy nhiên, điều quan trọng cần lưu ý là SSL

GVHD: Th.S Chu Minh Yên SVTH: Doãn Thị Nhung53

Page 54: kỹ thuật tấn công giao thức tcp/ip

Đồ Án Tốt Nghiệp Nghiên cứu, tìm hiểu các điểm yếu giao thức TCP/IP xây dựng Module tấn công và giải pháp phòng chống.

không ngăn các cuộc tấn công phân tích lưu lượng. Ví dụ, bằng cách xem xét

các địa chỉ IP nguồn và đích không được mã hóa và các sô cổng TCP, hoặc

xem xét lượng dữ liệu được truyền, một người phân tích lưu lượng vẫn có thể

xác định các bên nào đang tương tác, các loại dịch vụ đang được sử dụng, và

đôi khi ngay cả dành được thông tin về các mối quan hệ doanh nghiệp hoặc cá

nhân. Hơn nữa, SSL không ngăn các cuộc tấn công có định hướng dựa vào

phần thực thi TCP, chẳng hạn như các cuộc tấn công làm tràn ngập TCP SYN

hoặc cưỡng đoạt session. Để sử dụng sự bảo vệ SSL, cả client lẫn server phải

biết rằng phía bên kia đang sử dụng SSL.

Sử dụng SSL VPN

Thuật ngữ SSL VPN được dùng để chỉ một dòng sản phẩm VPN mới

và phát triển nhanh chóng dựa trên giao thức SSL. Cũng cần nói rõ là bản

thân giao thức SSL không mới nhưng liên kết SSL với VPN là mô hình mới.

Dùng SSL VPN, kết nối giữa người dùng từ xa và tài nguyên mạng công ty

thông qua kết nối HTTPS ở lớp ứng dụng thay vì tạo “đường hầm” ở lớp

mạng như giải pháp IPSec SSL VPN là giải pháp VPN hướng ứng dụng

(application based VPN).[9]

Hình 2.11 Giải pháp SSL VPN

Giải pháp VPN nào là tốt nhất cho kết nối từ xa? Điều này phụ thuộc

nhiều yếu tố. IPSec VPN phù hợp cho các kết nối thường trực site-to-site,

nhằm đảm bảo an toàn cho tất cả các dịch vụ trên nền IP từ Web, email,

truyền tệp đến các ứng dụng VoIP và đa dịch vụ. Trong khi đó, SSL VPN

thích hợp cho các ứng dụng trên nền Web, cho phép kết nối an toàn bất kỳ

thiết bị nào hỗ trợ trình duyệt web. Cả hai công nghệ đều an toàn hay có nguy

cơ mất an toàn giống nhau. Tùy trường hợp mà giảI pháp nào sẽ được ưu tiên

GVHD: Th.S Chu Minh Yên SVTH: Doãn Thị Nhung54

Page 55: kỹ thuật tấn công giao thức tcp/ip

Đồ Án Tốt Nghiệp Nghiên cứu, tìm hiểu các điểm yếu giao thức TCP/IP xây dựng Module tấn công và giải pháp phòng chống.

thiết lập, nhưng thường thì các tổ chức triển khai cả hai công nghệ VPN này

trên hạ tầng cơ sở mạng.[9]

II.2.5 Sử dụng chứng thực RIP ngăn chặn tấn công điểm yếu RIP

Giao thức định tuyến RIP cũng hỗ trợ chứng thực đề ngăn ngừa các đợt

tấn công. Phương thức chứng thực của RIP rất giống với của OSPF mặc dù

các lệnh IOS có hơi khác nhau. Các router RIP lân cận dùng chung các khóa

mật. Mỗi router gửi sử dụng các khóa này để sinh mã băm sát nhập vào từng

thông điệp cập nhật RIP. Router gửi sau đó dùng khóa mật chung để kiểm tra

giá trị băm và quyết định thông điệp có được chấp nhận hay không.[9]

Chứng thực văn bản thô RIP

Phương thức này kiến nghị không nên dùng, dùng phương thức MD5

tốt hơn dưới đây.

Chứng thực MD5 cho RIP

Tất cả các router nối với một mạng đã cho phải được cấu hình chứng

thực MD5. Có nghĩa là tất cả các router phải có một hoặc nhiều khóa chung.

Trước khi kích hoạt chứng thực MD5 cho RIP, từng router lân cận phải có

một khóa chung. RIP quản lý các khóa chứng thực bằng việc dùng chuỗi

khóa. Một chuỗi khóa là một nơi chứa nhiều khóa với ID của khóa đi kèm và

thời gian tồn tại của chúng. Nhiều khóa với thời gian sống khác nhau có thể

tồn tại. Tuy thế chỉ có một gói tin chứng thực được gửi đi. Router kiểm tra

các số khóa theo thứ tự từ thấp đến cao và sử dụng khóa hợp lệ đầu tiên nó

bắt gặp được.[9]

II.3 Tìm hiểu chức năng an toàn trong IPv6

II.3.1 Tổng quan về IPv6

Cho tới thời điểm này đã xuất hiện nguy cơ thiếu địa chỉ IP. Các nhà

phát triển đã triệu tập nhiều hội nghị, nhiều phương án đã xuất hiện như:

CIDR, NAT, ... song, với sự phát triển cực kỳ tốc độ, 4.3 tỷ địa chỉ kia không

đủ đặt địa chỉ cho những PC, di động, các thiết bị điện tử khác, ... để nối trực

tiếp tới Internet. Để giải quyết vấn đề đó thì IPv6 đã ra đời. Với 128 bit lớn

hơn IPv4 gấp 4 lần, có thể đánh được khoảng 340 tỷ tỷ tỷ tỷ địa chỉ. Đây là

không gian địa chỉ cực lớn không chỉ dành riêng cho Internet mà còn cho tất

cả các mạng máy tính, hệ thống viễn thông, hệ thống điều khiển và thậm chí

là vật dụng gia đình. IPv6 được tích hợp trong Windows XP SP1 và Windows

Server 2003 nhưng bị ẩn. Còn trên Windows Server 2008 và Windows Vista,

GVHD: Th.S Chu Minh Yên SVTH: Doãn Thị Nhung55

Page 56: kỹ thuật tấn công giao thức tcp/ip

Đồ Án Tốt Nghiệp Nghiên cứu, tìm hiểu các điểm yếu giao thức TCP/IP xây dựng Module tấn công và giải pháp phòng chống.

mặc định IPv6 được mở. Hiện tại thì nhu cầu cần 15% IPv6, còn 85% còn lại

dùng để dự phòng trong tương lai.[5]

II.3.2 Cấu trúc địa chỉ IPv6

Tính năng quan trọng nhất của IPv6 khi được so sánh với IPv4 chính là

không gian địa chỉ lớn hơn. Địa chỉ IPv4 sẽ không bao giờ được mở rộng, do

đó việc nâng cấp lên IPv6 là điều thiết yếu nếu Internet ngày càng phát triển.

IPv6 có tổng cộng là 128 bit được chia làm 2 phần: 64 bit đầu được gọi là

network, 64 bit còn lại được gọi là host.[5]

Hình 2.12 Cấu trúc IPv6

ví dụ:

2001:0f68:0000:0000:0000:0000:1986:69af

2001:f68:000:000:000:000:1986:69af

2001:f68:00:00:00:00:1986:69af.

II.3.3 Các loại địa chỉ IPv6

1. Địa chỉ Unicast

Loại địa chỉ này thường được dùng để dịnh danh cho các Interface.

Giống như kiểu địa chỉ Point-to-point trong IPv4. Được chia thành 4 nhóm:

a) Global Unicast Address:

Địa chỉ này được sử dụng để hỗ trợ cho các ISP (Internet Service

Provider- Nhà cung cấp dịch vụ Internet). Nó giống như địa chỉ Public của

IPv4.

Hình 2.13 Global Unicast Address trong IPv6

001: 3 bits đầu luôn luôn có giá trị = 001

TLA ID ( Top Level Aggregation): Xác định nhà cung cấp cao nhất trong hệ

thống các nhà cung cấp dịch vụ.

Res: chưa sử dụng

GVHD: Th.S Chu Minh Yên SVTH: Doãn Thị Nhung56

Page 57: kỹ thuật tấn công giao thức tcp/ip

Đồ Án Tốt Nghiệp Nghiên cứu, tìm hiểu các điểm yếu giao thức TCP/IP xây dựng Module tấn công và giải pháp phòng chống.

NLA ID (Next Level Aggregation) : Xác định nhà cung cấp tiếp theo trong

hệ thống các nhà cung cấp dịch vụ.

SLA ID (Site Level Aggregation): Xác định các site để tạo các subnet

Interface ID: Là địa chỉ của Interface trong subnet.

b) Link Local Addresses:

Đây là loại địa chỉ dùng cho các host khi chúng muốn giao tiếp với các

host khác trong cùng mạng. Tất cả IPv6 của các interface đều có địa chỉ link

local. Theo hình bên dưới, sẽ thấy:

Hình 2.14 Link-local Addresses trong IPv6

10 bits đầu tiên luôn là: 1111 1110 10

54 bits kế tiếp có giá trị bằng 0

-> Như vậy, trong Link Local Address: 64 bit đầu là giá trị cố định không

thay đổi (prefix : fe80::/64)

Vào cmd, gõ lệnh ipconfig /all để xem thử giá trị Link-Local Address

Hình 2.15 Ví dụ về Link-Local Address

+ 64 bits cuối cùng là địa chỉ của Interface

Hình 2.16 Mô tả 64 bits cuối cùng của IPv6

Một router không thể chuyển bất kỳ gói tin nào có địa chỉ nguồn hoặc địa chỉ

đích là Link Local Address.

c) Site-Local Addresses:

GVHD: Th.S Chu Minh Yên SVTH: Doãn Thị Nhung57

Page 58: kỹ thuật tấn công giao thức tcp/ip

Đồ Án Tốt Nghiệp Nghiên cứu, tìm hiểu các điểm yếu giao thức TCP/IP xây dựng Module tấn công và giải pháp phòng chống.

Site-Local Addresses được sử dụng trong hệ thống nội bộ (Intranet)

tương tự các địa chỉ Private IPv4 (10.X.X.X, 172.16.X.X, 192.168.X.X).

Phạm vi sử dụng Site-Local Addresses là trong cùng Site.

Hình 2.17 Site-Local Addresses trong IPv6

10 bits đầu tiên luôn là: 1111 1110 11 (Prefix FEC0::/10)

54 bits kế tiếp : là giá trị Subnet ID

64 bits cuối cùng là địa chỉ của Interface

d) Unique Local Address:

Unique Local Address là địa chỉ định tuyến giữa các subnet trên một

private network

Hình 2.18 Unique Local Address

1111 1101 : 8 bits đầu là giá trị cố định FD00:: /8

40 bits kế tiếp là Global ID : địa chỉ Site (Site ID). Có thể gán tùy ý

16 bits kế tiếp là Subnet ID : địa chỉ Subnet trong Site, có thể tạo ra 65.536

subnet trong một site

64 bits cuối cùng là địa chỉ của Interface

2. Anycast Address

Anycast Address là địa chỉ đặc biệt có thể gán cho nhiều interface, gói

tin chuyển đến Anycast Address sẽ được vận chuyển bởi hệ thống Routing

đến Interface gần nhất. Hiện nay, địa chỉ Anycast được sử dụng rất hạn chế.

Hầu như Anycast addresss chỉ được dùng để đặt cho Router, không đặt cho

Host, lý do là bởi vì hiện nay địa chỉ này chỉ được sử dụng vào mục đích cân

bằng tải.Ví dụ : khi một nhà cung cấp dịch vụ mạng có rất nhiều khách hàng

muốn truy cập dịch vụ từ nhiều nơi khác nhau, nhà cung cấp muốn tiết kiệm

GVHD: Th.S Chu Minh Yên SVTH: Doãn Thị Nhung58

Page 59: kỹ thuật tấn công giao thức tcp/ip

Đồ Án Tốt Nghiệp Nghiên cứu, tìm hiểu các điểm yếu giao thức TCP/IP xây dựng Module tấn công và giải pháp phòng chống.

nên chỉ để một Server trung tâm phục vụ tất cả, họ xây dựng nhiều Router kết

nối khách hàng với Server trung tâm, khi đó mỗi khách hàng có thể có nhiều

con đường để truy cập dịch vụ. Nhà cung cấp dịch vụ đặt địa chỉ Anycast cho

các Interfaces là các Router kết nối đến Server trung tâm, bây giờ mỗi khách

hàng chỉ việc ghi nhớ và truy cập vào một địa chỉ Anycast thôi, tự động họ sẽ

được kết nối tới Server thông qua Router gần nhất. Đây là một cách xử lý đơn

giản và hiệu quả. [5]

3. Multicast Address

Trong địa chỉ IPv6 không còn tồn tại khái niệm địa chỉ Broadcast. Mọi

chức năng của địa chỉ Broadcast trong IPv4 được đảm nhiệm thay thế bởi địa

chỉ IPv6 Multicast. Địa chỉ Multicast giống địa chỉ Broadcast ở chỗ điểm đích

của gói tin là một nhóm các máy trong một mạng, song không phải tất cả các

máy. Trong khi Broadcast gửi trực tiếp tới mọi host trong một subnet thì

Multicast chỉ gửi trực tiếp cho một nhóm xác định các host, các host này lại

có thể thuộc các subnet khác nhau. Host có thể lựa chọn có tham gia vào một

nhóm Multicast cụ thể nào đó hay không (thường được thực hiện với thủ tục

quản lý nhóm internet - Internet Group Management Protocol), trong khi đó

với Broadcast, mọi host là thành viên của nhóm Broadcast bất kể nó có muốn

hay không. [5]

Hình 2.19 Multicast Address

II.3.4 So sánh IPv4 và IPv6

Đặc điểm giống nhau

GVHD: Th.S Chu Minh Yên SVTH: Doãn Thị Nhung59

Page 60: kỹ thuật tấn công giao thức tcp/ip

Đồ Án Tốt Nghiệp Nghiên cứu, tìm hiểu các điểm yếu giao thức TCP/IP xây dựng Module tấn công và giải pháp phòng chống.

Khi phát triển phiên bản mới, IPv6 hoàn toàn dựa trên nền tảng IPv4.

Nghĩa là tất cả những chức năng của IPv4 đều được tích hợp vào IPv6.

Đặc điểm khác nhau

IPv6 cũng có một vài đặc điểm khác biệt.

1. Tăng kích thước của tầm địa chỉ

IPv6 sử dụng 128 bit địa chỉ trong khi IPv4 chỉ sử dụng 32 bit. Nghĩa là

IPv6 có tới 2128 địa chỉ khác nhau, 3 bit đầu luôn là 001 được dành cho các

địa chỉ khả định tuyến toàn cầu (Globally Routable Unicast – GRU). Nghĩa là

còn lại 2125 địa chỉ. Một con số khổng lồ. Điều đó có nghĩa là địa chỉ IPv6 sẽ

chứa 1028 tầm địa chỉ IPv4.[5]

2. Tăng sự phân cấp địa chỉ

IPv6 chia địa chỉ thành một tập hợp các tầm xác định hay boundary: 3

bit đầu cho phép biết được địa chỉ có thuộc địa chỉ khả định tuyến toàn cầu

(GRU) hay không, giúp các thiết bị định tuyến có thể xử lý nhanh hơn. Top

Level Aggregator (TLA) ID được sử dụng vì 2 mục đích: thứ nhất, nó được

sử dụng để chỉ định một khối địa chỉ lớn mà từ đó các khối địa chỉ nhỏ hơn

được tạo ra để cung cấp sự kết nối cho những địa chỉ nào muốn truy cập vào

Internet. Thứ hai, nó được sử dụng để phân biệt một đường (Route) đến từ

đâu. Nếu các khối địa chỉ lớn được cấp phát cho các nhà cung cấp dịch vụ và

sau đó được cấp phát cho khách hàng thì sẽ dễ dàng nhận ra các mạng chuyển

tiếp mà đường đó đã đi qua cũng như mạng mà từ đó Route xuất phát. Với

IPv6, việc tìm ra nguồn của 1 Route sẽ rất dễ dàng. Next Level Aggregator

(NLA) là một khối địa chỉ được gán bên cạnh khối TLA, những địa chỉ này

được tóm tắt lại thành những khối TLA lớn hơn, khi chúng được trao đổi giữa

các nhà cung cấp dịch vụ trong lõi Internet, ích lợi của loại cấu trúc địa chỉ

này là: [5]

Thứ nhất, sự ổn định về định tuyến, nếu có 1 NLA và muốn cung cấp

dịch vụ cho các khách hàng, thì sẽ cố cung cấp dịch vụ đầy đủ nhất, tốt nhất.

Thứ hai, muốn cho phép các khách hàng nhận được đầy đủ bảng định

tuyến nếu họ muốn, để tạo việc định tuyến theo chính sách, cân bằng tải... Để

thực hiện việc này, cần phải mang tất cả các thông tin về đường đi trong

Backbone để có thể chuyển cho họ.

3. Đơn giản hóa việc đặt địa chỉ Host

GVHD: Th.S Chu Minh Yên SVTH: Doãn Thị Nhung60

Page 61: kỹ thuật tấn công giao thức tcp/ip

Đồ Án Tốt Nghiệp Nghiên cứu, tìm hiểu các điểm yếu giao thức TCP/IP xây dựng Module tấn công và giải pháp phòng chống.

IPv6 sử dụng 64 bit sau cho địa chỉ Host, trong 64 bit đó có cả 48 bit là

địa chỉ MAC của máy, do đó, phải đệm vào đó một số bit đã được định nghĩa

trước mà các thiết bị định tuyến sẽ biết được những bit này trên subnet. Ngày

nay, có thể sử dụng chuỗi 0xFF và 0xFE (:FF:FE: trong IPv6) để đệm vào địa

chỉ MAC. Bằng cách này, mọi Host sẽ có một Host ID duy nhất trong mạng.

Sau này nếu đã sử dụng hết 48 bit MAC thì có thể sẽ sử dụng luôn 64 bit mà

không cần đệm.[5]

4. Địa chỉ Anycast

IPv6 định nghĩa một loại địa chỉ mới: địa chỉ Anycast. Một địa chỉ

Anycast là một địa chỉ IPv6 được gán cho một nhóm các máy có chung chức

năng, mục đích. Khi packet được gửi cho một địa chỉ Anycast, việc định

tuyến sẽ xác định thành viên nào của nhóm sẽ nhận được packet qua việc xác

định máy gần nguồn nhất.Việc sử dụng Anycast có 2 ích lợi: [5]

Một là, nếu đang đến một máy gần nhất trong một nhóm, thì sẽ tiết

kiệm được thời gian bằng cách giao tiếp với máy gần nhất.

Thứ hai là việc giao tiếp với máy gần nhất giúp tiết kiệm được băng

thông. Địa chỉ Anycast không có các tầm địa chỉ được định nghĩa riêng như

Multicast, mà nó giống như một địa chỉ Unicast, chỉ có khác là có thể có

nhiều máy khác cũng được đánh số với cùng scope trong cùng một khu vực

xác định. Anycast được sử dụng trong các ứng dụng như DNS...

5. Việc tự cấu hình địa chỉ đơn giản hơn

Một địa chỉ Multicast có thể được gán cho nhiều máy, địa chỉ Anycast

là các gói Anycast sẽ gửi cho đích gần nhất (một trong những máy có cùng

địa chỉ) trong khi Multicast packet được gửi cho tất cả máy có chung địa chỉ

(trong một nhóm Multicast). Kết hợp Host ID với Multicast ta có thể sử dụng

việc tự cấu hình như sau: khi một máy được bật lên, nó sẽ thấy rằng nó đang

được kết nối và nó sẽ gửi một gói Multicast vào LAN, gói tin này sẽ có địa

chỉ là một địa chỉ Multicast có tầm cục bộ (Solicited Node Multicast address).

Khi một Router thấy gói tin này, nó sẽ trả lời một địa chỉ mạng mà máy

nguồn có thể tự đặt địa chỉ, khi máy nguồn nhận được gói tin trả lời này, nó sẽ

đọc địa chỉ mạng mà Router gửi. Sau đó, nó sẽ tự gán cho nó một địa chỉ IPv6

bằng cách thêm Host ID (được lấy từ địa chỉ MAC của interface kết nối với

subnet đó)với địa chỉ mạng.Do đó, tiết kiệm được công sức gán địa chỉ IP. [5]

6. Header hợp lý

GVHD: Th.S Chu Minh Yên SVTH: Doãn Thị Nhung61

Page 62: kỹ thuật tấn công giao thức tcp/ip

Đồ Án Tốt Nghiệp Nghiên cứu, tìm hiểu các điểm yếu giao thức TCP/IP xây dựng Module tấn công và giải pháp phòng chống.

Header của IPv6 đơn giản và hợp lý hơn IPv4. IPv6 chỉ có 6 trường và

2 địa chỉ, trong khi IPv4 chứa 10 trường và 2 địa chỉ. IPv6 Header có dạng:

Hình 2.20 So sánh Header IPv4 Với Header IPv6

IPv6 cung cấp các đơn giản hóa sau:

- Định dạng được đơn giản hóa: IPv6 Header có kích thước cố định 40 octet

với ít trường hơn IPv4 nên giảm được thời gian xử lý Header, tăng độ linh

hoạt.

- Không có Header checksum: Trường checksum của IPv4 được bỏ đi vì các

liên kết ngày nay nhanh hơn và có độ tin cậy cao hơn vì vậy chỉ cần các Host

tính checksum còn Router thì khỏi cần.

- Không có sự phân đoạn theo từng hop: Trong IPv4, khi các packet quá lớn

thì Router có thể phân đoạn nó. Tuy nhiên, việc này sẽ làm tăng them

Overhead cho packet. Trong IPv6 chỉ có Host nguồn mới có thể phân đoạn

một packet theo các giá trị thích hợp dựa vào một MTU path mà nó tìm được.

Do đó, để hỗ trợ Host thì IPv6 chứa một hàm giúp tìm ra MTU từ nguồn đến

đích.

Do có ít vùng hơn, quá trình xử lý cũng ngắn hơn. Bộ nhớ dùng hiệu quả

hơn với các field 64 bits. Điều này cho phép quá trình tìm kiếm trở nên rất

nhanh bởi vì các bộ xử lý ngày nay cũng là các bộ xử lý 64 bit. Trở ngại duy

GVHD: Th.S Chu Minh Yên SVTH: Doãn Thị Nhung62

Page 63: kỹ thuật tấn công giao thức tcp/ip

Đồ Án Tốt Nghiệp Nghiên cứu, tìm hiểu các điểm yếu giao thức TCP/IP xây dựng Module tấn công và giải pháp phòng chống.

nhất là việc sử dụng địa chỉ 128-bit, lớn hơn kích thước một word hiện hành.

Việc loại bỏ phần check sum cũng giảm thiểu thời gian xử lý nhiều hơn nữa.

7. Bảo mật

IPv6 tích hợp tính bảo mật vào trong kiến trúc của mình bằng cách giới

thiệu 2 Header mở rộng tùy chọn: Authentication Header (AH) và Encrypted

Security Payload (ESP) Header. Hai Header này có thể được sử dụng chung

hay riêng để hỗ trợ nhiều chức năng bảo mật.

- AH quan trọng nhất trong Header này là trường Integriry Check Value

(ICU). ICU được tính bởi nguồn và được tính lại bởi đích để xác minh. Quá

trình này cung cấp việc xác minh tính toàn vẹn và xác minh nguồn gốc của dữ

liệu. AH cũng chứa cả một số thứ tự để nhận ra một tấn công bằng các packet

replay giúp ngăn các gói tin được nhân bản. - ESP Header: ESP Header chứa

một trường : Security Parameter Index (SPI) giúp đích của gói tin biết

payload được mã hóa như thế nào. ESP Header có thể được sử dụng khi

tunneling, trong tunnelling thì cả Header và payload gốc sẽ được mã hóa và

bỏ vào một ESP Header bọc ngoài, khi đến gần đích thì các gateway bảo mật

sẽ bỏ Header bọc ngoài ra và giải mã để tìm ra Header và payload gốc.[4]

8. Tính di động

IPv6 hỗ trợ tốt các máy di động như laptop. IPv6 giới thiệu 4 khái niệm

giúp hỗ trợ tính toán di động gồm: Home address; Care-of address; Binding;

Home agent. Trong IPv6 thì các máy di động được xác định bởi một địa chỉ

Home address mà không cần biết hiện tại nó được gắn vào đâu. Khi một máy

di động thay đổi từ một subnet này sang subnet khác; nó phải có một Care-of

address qua một quá trình tự cấu hình. Sự kết hợp giữa Home address và

Care-of address được gọi là một Binding. Khi một máy di động nhận được

một Care-of address, nó sẽ báo cho Home agent của nó bằng gói tin được gọi

là Binding update để Home agent có thể cập nhật lại Binding cáche của Home

agent về Care-of address của máy di động vừa gửi. Home agent sẽ duy trì một

ánh xạ giữa các Home address và Care-of address và bỏ nó vào Binding

cáche. Một máy di động có thể được truy cập bằng cách gửi một packet đến

các Home address của nó. Nếu máy di động không được kết nối trên subnet

của Home agent thì Home agent sẽ gửi packet đó cho máy di động qua Care-

of address của máy đó trong Binding cáche của Home agent (Lúc này, Home

agent được xem như máy trung gian để máy nguồn có thể đến được máy di

GVHD: Th.S Chu Minh Yên SVTH: Doãn Thị Nhung63

Page 64: kỹ thuật tấn công giao thức tcp/ip

Đồ Án Tốt Nghiệp Nghiên cứu, tìm hiểu các điểm yếu giao thức TCP/IP xây dựng Module tấn công và giải pháp phòng chống.

động). Máy di động sau đó sẽ gửi một gói tin Binding update cho máy nguồn

của gói tin. Máy nguồn sau đó sẽ cập nhật Binding cáche của nó, thì sau này

máy nguồn muốn gửi đến máy di động, chỉ cần gửi trực tiếp đến cho máy di

động qua Care-of address chứa trong Binding cáche của nó mà không cần

phải gửi qua Home address. Do đó, chỉ có gói tin đầu tiên là qua Home agent.

[4]

9. Hiệu suất

IPv6 cung cấp các lợi ích sau:

- Giảm được thời gian xử lý Header, giảm Overhead vì chuyển dịch địa chỉ: vì

trong IPv4 có sử dụng private address để tránh hết địa chỉ, Do đó, xuất hiện

kỹ thuật NAT để dịch địa chỉ, nên tăng Overhead cho gói tin.

- Giảm được thời gian xử lý định tuyến: nhiều khối địa chỉ IPv4 được phân

phát cho các user nhưng lại không tóm tắt được, nên phải cần các entry trong

bảng định tuyến làm tăng kích thước của bảng định tuyến và thêm Overhead

cho quá trình định tuyến. Ngược lại, các địa chỉ IPv6 được phân phát qua các

ISP theo một kiểu phân cấp địa chỉ giúp giảm được Overhead.

- Tăng độ ổn định cho các đường: trong IPv4, hiện tượng route flapping

thường xảy ra, trong IPv6, một ISP có thể tóm tắt các route của nhiều mạng

thành một mạng đơn, chỉ quản lý mạng đơn đó và cho phép hiện tượng

flapping chỉ ảnh hưởng đến nội bộ của mạng bị flapping.

- Giảm Broadcast: trong IPv4 sử dụng nhiều Broadcast như ARP, trong khi

IPv6 sử dụng Neighbor Discovery Protocol để thực hiện chức năng tương tự

trong quá trình tự cấu hình mà không cần sử dụng Broadcast.

- Multicast có giới hạn: trong IPv6, một địa chỉ Multicast có chứa một trường

scope có thể hạn chế các gói tin Multicast trong các Node, trong các link, hay

trong một tổ chức.

II.3.5 Tính năng an toàn trong IPv6

IPv4 được thiết kế tại thời điểm chỉ có các mạng nhỏ, biết rõ nhau kết

nối với nhau. Do vậy bảo mật chưa phải là một vấn đề được quan tâm. Song

hiện nay, bảo mật mạng internet trở thành một vấn đề rất lớn, là mối quan tâm

hàng đầu.

IPv6 tích hợp tính bảo mật vào trong kiến trúc của mình bằng cách giới

thiệu 2 Header mở rộng tùy chọn: Authentication Header (AH) và Encrypted

GVHD: Th.S Chu Minh Yên SVTH: Doãn Thị Nhung64

Page 65: kỹ thuật tấn công giao thức tcp/ip

Đồ Án Tốt Nghiệp Nghiên cứu, tìm hiểu các điểm yếu giao thức TCP/IP xây dựng Module tấn công và giải pháp phòng chống.

Security Payload (ESP) Header. Hai Header này có thể được sử dụng chung

hay riêng để hỗ trợ nhiều chức năng bảo mật.

- AH quan trọng nhất trong Header này là trường Integriry Check Value

(ICU). ICU được tính bởi nguồn và được tính lại bởi đích để xác minh. Quá

trình này cung cấp việc xác minh tính toàn vẹn và xác minh nguồn gốc của dữ

liệu. AH cũng chứa cả một số thứ tự để nhận ra một tấn công bằng các packet

replay giúp ngăn các gói tin được nhân bản. - ESP Header: ESP Header chứa

một trường : Security Parameter Index (SPI) giúp đích của gói tin biết

payload được mã hóa như thế nào. ESP Header có thể được sử dụng khi

tunneling, trong tunnelling thì cả Header và payload gốc sẽ được mã hóa và

bỏ vào một ESP Header bọc ngoài, khi đến gần đích thì các gateway bảo mật

sẽ bỏ Header bọc ngoài ra và giải mã để tìm ra Header và payload gốc.

Khả năng bảo mật kết nối từ thiết bị gửi đến thiết bị nhận

Theo thiết kế, IPv4 không hỗ trợ tính năng bảo mật tại tầng IP. Do vậy,

rất khó thực hiện bảo mật kết nối từ thiết bị gửi đến thiết bị nhận. Hình thức

bảo mật phổ biến trên mạng IPv4 là bảo mật kết nối giữa hai mạng.

Hình 2.21 Thực hiện bảo mật kết nối giữa hai mạng trong IPv4

Địa chỉ IPv6 được thiết kế để hỗ trợ bảo mật tại tầng IP nên có thể dễ

dàng thực hiện bảo mật từ thiết bị gửi đến thiết bị nhận (đầu cuối – đầu cuối).

Hình 2.22 Thực hiện bảo mật kết nối giữa các thiết bị trong IPv6

GVHD: Th.S Chu Minh Yên SVTH: Doãn Thị Nhung65

Page 66: kỹ thuật tấn công giao thức tcp/ip

Đồ Án Tốt Nghiệp Nghiên cứu, tìm hiểu các điểm yếu giao thức TCP/IP xây dựng Module tấn công và giải pháp phòng chống.

Quản lý định tuyến tốt hơn 

Sự gia tăng của các mạng trên Internet và việc sử dụng ngày càng nhiều

địa chỉ IPv4 khiến cho kích thước bảng định tuyến toàn cầu ngày càng gia

tăng, gây quá tải, vượt quá khả năng xử lý của các thiết bị định tuyến tầng

cao. Một phần lí do của việc gia tăng bảng định tuyến là do IPv4 không được

thiết kế phân cấp ngay từ đầu. Địa chỉ IPv6 được thiết kế có cấu trúc đánh địa

chỉ và phân cấp định tuyến thống nhất. Phân cấp định tuyến toàn cầu dựa trên

một số mức cơ bản đối với các nhà cung cấp dịch vụ. Cấu trúc định tuyến

phân cấp giúp cho địa chỉ IPv6 tránh khỏi nguy cơ quá tải bảng thông tin định

tuyến toàn cầu khi chiều dài địa chỉ lên tới 128 bít.

Kết luận :

Quá trình nghiên cứu, tìm hiểu ở chương hai đã đưa ra được những giải

pháp phòng chống tương ứng với từng loại tấn công có thể xảy ra.

Dựa trên những nghiên cứu ở chương một và chương hai,chương tiếp

theo sẽ đi tìm hiểu và xây dựng module tấn công trên hệ thống có sử dụng

giao thức TCP/IP trên thực tế và đưa ra giải pháp phòng chống tấn công đối

với hệ thống đó.

GVHD: Th.S Chu Minh Yên SVTH: Doãn Thị Nhung66

Page 67: kỹ thuật tấn công giao thức tcp/ip

Đồ Án Tốt Nghiệp Nghiên cứu, tìm hiểu các điểm yếu giao thức TCP/IP xây dựng Module tấn công và giải pháp phòng chống.

Chương III: MỘT SỐ CÔNG PHỔ BIẾN DỰA TRÊN ĐIỂM

YẾU GIAO THỨC VÀ XÂY DỰNG MODULE TẤN CÔNGCó nhiều hình thức tấn công trên hệ thống mạng sử dụng giao thức

TCP/IP đã xảy ra trên thực tế rất nguy hiểm và gây tổn thất lớn cho hệ

thống.Ở chương này sẽ tập trung tìm hiểu về hai loại tấn công phổ biến và gây

nguy hiểm cho hệ thống mạng có sử dụng giao thức TCP/IP là : tấn công từ

chối dịch vụ (DOS – DDOS) và nghe lén (Sniffer).Dựa trên những hiểu biết

về các loại tấn công đó sẽ đi xây dựng module về tấn công từ chối dịch vụ

DOS.

III.1 Tấn công từ chối dịch vụ

Một cuộc tấn công từ chối dịch vụ (tấn công DoS) hay tấn công từ chối

dịch vụ phân tán (tấn công DDoS) là sự cố gắng làm cho tài nguyên của một

máy tính không thể sử dụng được nhằm vào những người dùng của nó. Mặc

dù phương tiện để tiến hành, động cơ, mục tiêu của tấn công từ chối dịch vụ

là khác nhau, nhưng nói chung nó gồm có sự phối hợp, sự cố gắng ác ý của

một người hay nhiều người để chống lại Internet site hoặc service (dịch vụ

Web) vận hành hiệu quả hoặc trong tất cả, tạm thời hay một cách không xác

định. Thủ phạm tấn công từ chối dịch vụ nhằm vào các mục tiêu site hay

server tiêu biểu như ngân hàng, cổng thanh toán thẻ tín dụng và thậm chí

DNS root servers.[2]

Tấn công từ chối dịch vụ chia ra làm hai loại tấn công :

- Tấn công DOS (Denial of Service): Tấn công từ một cá thể tới một

mục đích cụ thể nào đó.

- Tấn công DDOS (Distributed Denial of Service): Đây là sự tấn công

từ một mạng máy tính được thiết kế để tấn công tới một đích cụ thể nào đó.

III.1.1 Tấn công từ chối dịch vụ (DOS)

III.1.1.1 Các dạng tấn công DOS

- Smurf

- Buffer Overflow Attack

- Ping of Death

- Teardrop

- SYN Attack

1. Tấn công Smurf

GVHD: Th.S Chu Minh Yên SVTH: Doãn Thị Nhung67

Page 68: kỹ thuật tấn công giao thức tcp/ip

Đồ Án Tốt Nghiệp Nghiên cứu, tìm hiểu các điểm yếu giao thức TCP/IP xây dựng Module tấn công và giải pháp phòng chống.

Là thủ phạm sinh ra cực nhiều giao tiếp ICMP (ping) tới địa

chỉ Broadcast của nhiều mạng với địa chỉ nguồn là mục tiêu cần tấn công.

Kết quả đích tấn công sẽ phải chịu nhận một đợt Reply gói ICMP cực

lớn và làm cho mạng bị dớt hoặc bị chậm lại không có khả năng đáp ứng các

dịch vụ khác.

Hình 3.1 : Tấn công Smurf

2. Tấn công Buffer overflow.

Buffer Overflow xảy ra tại bất kỳ thời điểm nào có chương trình ghi

lượng thông tin lớn hơn dung lượng của bộ nhớ đệm trong bộ nhớ.

3. Tấn công Ping of Death

Kẻ tấn công gửi những gói tin IP lớn hơn số lương bytes cho phép của

gói tin IP là 65.536 bytes..

4. Tấn công Teardrop

Gói tin IP rất lớn khi đến Router sẽ bị chia nhỏ làm nhiều phần nhỏ.

Kẻ tấn công sử dụng sử dụng gói IP với các thông số rất khó hiểu để

chia ra các phần nhỏ (fragment).

Nếu hệ điều hành nhận được các gói tin đã được chia nhỏ và không

hiểu được, hệ thống cố gắng build lại gói tin và điều đó chiếm một phần tài

nguyên hệ thống, nếu quá trình đó liên tục xảy ra hệ thống không còn tài

nguyên cho các ứng dụng khác, phục vụ các user khác.

GVHD: Th.S Chu Minh Yên SVTH: Doãn Thị Nhung68

Page 69: kỹ thuật tấn công giao thức tcp/ip

Đồ Án Tốt Nghiệp Nghiên cứu, tìm hiểu các điểm yếu giao thức TCP/IP xây dựng Module tấn công và giải pháp phòng chống.

5. Tấn công SYN

Kẻ tấn công gửi các yêu cầu (request ảo) TCP SYN tới máy chủ bị tấn

công. Để xử lý lượng gói tin SYN này hệ thống cần tốn một lượng bộ nhớ cho

kết nối.

Khi có rất nhiều gói SYN ảo tới máy chủ và chiếm hết các yêu cầu xử

lý của máy chủ. Một người dùng bình thường kết nối tới máy chủ ban đầu

thực hiện Request TCP SYN và lúc này máy chủ không còn khả năng đáp lại

– kết nối không được thực hiện.

III.1.1.2 Các công cụ tấn công DOS

1. Jolt2 :

Cho phép kẻ tấn công lên các hệ thống trên nền tảng Windows

Nó là nguyên nhân khiên máy chủ bị tấn công có CPU luôn hoạt động

ở mức độ 100%, CPU không thể xử lý các dịch vụ khác.

Không phải trên nền tảng Windows như Cisco Router và một số loại

Router khác cũng có thể bị lỗ hổng bảo mật này và bị tools này tấn công.

2. Bubonic.c :

Là một tools DoS dựa vào các lỗ hổng bảo mật trên Windows 2000

Nó hoạt động bằng cách ngẫu nhiên gửi các gói tin TCP với các thiết

lập ngẫu nhiên làm cho máy chủ tốn rất nhiều tài nguyên để xử lý vấn đề này,

và từ đó sẽ xuất hiện những lỗ hổng bảo mật.

Nemesy :

Đây là một chương trình sinh ra những gói tin ngẫu nhiên như

(protocol, port, etc. size, …)

Dựa vào chương trình này kẻ tấn công có thể chạy các đoạn mã nguy

hiểm vào máy tính không được bảo mật.

3. UDP Flood :

UDPFlood là một chương trình gửi các gói tin UDP

Nó gửi ra ngoài những gói tin UDP tới một địac hỉ IP và port không cố

định.

Gói tin có khả năng là một đoạn mã văn bản hay một số lượng dữ liệu

được sinh ngẫu nhiên hay từ một file.

Được sử dụng để kiểm tra khả năng đáp ững của Server.

III.1.2 Tấn công từ chối dịch vụ phân tán (DDOS)

III.1.2.1 Các dạng tấn công DDOS

GVHD: Th.S Chu Minh Yên SVTH: Doãn Thị Nhung69

Page 70: kỹ thuật tấn công giao thức tcp/ip

Đồ Án Tốt Nghiệp Nghiên cứu, tìm hiểu các điểm yếu giao thức TCP/IP xây dựng Module tấn công và giải pháp phòng chống.

- Tấn công gây hết băng thông truy cập tới máy chủ.

- Tấn công cạn kiệt tài nguyên máy chủ.

Hình 3.2 : Sơ đồ dạng tấn công DDOS

Các mô hình tấn công DDOS :

Nhìn chung DDoS attack-network có hai mô hình chính:

+ Mô hình Agent – Handler

+ Mô hình IRC – Based

Hình 3.3 : Sơ đồ các mô hình tấn công DDOS

+ Mô hình Agent – Handler

GVHD: Th.S Chu Minh Yên SVTH: Doãn Thị Nhung70

Page 71: kỹ thuật tấn công giao thức tcp/ip

Đồ Án Tốt Nghiệp Nghiên cứu, tìm hiểu các điểm yếu giao thức TCP/IP xây dựng Module tấn công và giải pháp phòng chống.

Hình 3.4 : Mô hình Agent – Handler

Theo mô hình này, attack-network gồm 3 thành phần

- Client : là software cơ sở để hacker điều khiển mọi hoạt động của

attack-network

- Handler : là một thành phần software trung gian giữa Agent và Client

- Agent : là thành phần software thực hiện sự tấn công mục tiêu, nhận

điều khiển từ Client thông qua các Handler

+ Mô hình IRC – Based

Hình 3.5 : Mô hình IRC – Based

IRC – Based net work cũng tương tự như Agent – Handler network

nhưng mô hình này sử dụng các kênh giao tiếp IRC làm phương tiện giao tiếp

GVHD: Th.S Chu Minh Yên SVTH: Doãn Thị Nhung71

Page 72: kỹ thuật tấn công giao thức tcp/ip

Đồ Án Tốt Nghiệp Nghiên cứu, tìm hiểu các điểm yếu giao thức TCP/IP xây dựng Module tấn công và giải pháp phòng chống.

giữa Client và Agent. Mô hình này, attacker còn có thêm một số lợi thế khác

như:

+ Các giao tiếp dưới dạng chat message làm cho việc phát hiện chúng là

vô cùng khó khăn.

+ IRC traffic di chuyển trên mạng với số lượng lớn mà không bị nghi

ngờ.

+ Không cần phải duy trì danh sách các Agent, hacker chỉ cần logon vào

IRC server là đã có thể nhận được report về trạng thái các Agent do các

channel gửi về.

+ Sau cùng: IRC cũng là một môi trường file sharing tạo điều kiện phát

tán các Agent code lên nhiều máy khác.

III.1.2.2 Các công cụ tấn công DDOS

Dựa trên nền tảng chung của phần trên, đã có nhiều công cụ được viết ra,

thông thường các công cụ này là mã nguồn mở nên mức độ phức tạp ngày

càng cao và có nhiều biến thể mới lạ.

1.Công cụ DDoS dạng Agent – Handler:

- TrinOO: là một trong các công cụ DDoS đầu tiên được phát tán rộng

rãi.

TrinOO có kiến trúc Agent – Handler, là công cụ DDoS kiểu Bandwidth

Depletion Attack, sử dụng kỹ thuật UDP flood. Các version đầu tiên của

TrinOO không hỗ trợ giả mạo địa chỉ IP. TrinOO Agent được cài đặt lợi dụng

lỗi remote buffer overrun.

- Tribe Flood Network (TFN): công cụ DDoS hỗ trợ kiểu Bandwidth

Deleption Attack và Resourse Deleption Attack. Sử dụng kỹ thuật UDP flood,

ICMP Flood, TCP SYN và Smurf Attack. Các version đầu tiên không hỗ trợ

giả mạo địa chỉ IP, TFN Agent được cài đặt lợi dụng lỗi buffer overflow

- Stacheldraht: là biến thể của TFN có thêm khả năng updat Agent tự

động. Giao tiếp telnet mã hóa đối xứng giữa Attacker và Handler.

- Shaft: là biến thể của TrinOO, giao tiếp Handler – Agent trên UDP,

Attacker – Hendle trên Internet. Tấn công dùng kỹ thuật UDP, ICMP và TCP

flood. Có thể tấn công phối hợp nhiều kiểu cùng lúc. Có thống kê chi tiết cho

phép attacker biết tình trạng tổn thất của nạn nhân, mức độ quy mô của cuộc

tấn công để điều chỉnh số lượng Agent.

2. Công cụ DDoS dạng IRC – Based:

GVHD: Th.S Chu Minh Yên SVTH: Doãn Thị Nhung72

Page 73: kỹ thuật tấn công giao thức tcp/ip

Đồ Án Tốt Nghiệp Nghiên cứu, tìm hiểu các điểm yếu giao thức TCP/IP xây dựng Module tấn công và giải pháp phòng chống.

Công cụ DDoS dạng IRC-based được phát triển sau các công cụ dạng

Agent – Handler. Tuy nhiên, công cụ DDoS dạng IRC phức tạp hơn rất nhiều,

do tích hợp rất nhiều đặc tính của các công cụ DDoS dạng Agent – Handler.

- Trinity: là một điển hình của công cụ dạng này. Trinity có hầu hết các

kỹ thuật tấn công bao gồm: UDP, TCP SYS, TCP ACK, TCP fragment, TCP

NULL, TCP RST, TCP random flag, TCP ESTABLISHED packet flood. Nó

có sẵn khả năng ngẫu nhiên hóa địa chỉ bên gởi. Trinity cũng hỗ trợ TCP

flood packet với khả năng ngẫu nhân tập CONTROL FLAG. Trinity có thể

nói là một trong số các công cụ DDoS nguy hiểm nhất.

III.1.2.3 Giải pháp phòng chống DDOS

Có ba giai đoạn chính trong quá trình Anti-DDoS: [4]

- Giai đoạn ngăn ngừa: tối thiểu hóa lượng Agent, tìm và vô hiệu hóa các

Handler

- Giai đoạn đối đầu với cuộc tấn công: Phát hiện và ngăn chặn cuộc tấn

công, làm suy giảm và dừng cuộc tấn công, chuyển hướng cuộc tấn công.

- Giai đoạn sau khi cuộc tấn công xảy ra: thu thập chứng cứ và rút kinh

nghiệm

1.Tối thiểu hóa số lượng Agent:

Từ phía User: một phương pháp rất tốt để năng ngừa tấn công DDoS là

từng internet user sẽ tự đề phòng không để bị lợi dụng tấn công hệ thống

khác. Muốn đạt được điều này thì ý thức và kỹ thuật phòng chống phải được

phổ biến rộng rãi cho các internet user. Attack-Network sẽ không bao giờ

hình thành nếu không có user nào bị lợi dụng trở thành Agent. Các user phải

liên tục thực hiện các quá trình bảo mật trên máy vi tính của mình. Họ phải tự

kiểm tra sự hiện diện của Agent trên máy của mình, điều này là rất khó khăn

đối với user thông thường.

Một số giải pháp tích hợp sẵn khả năng ngăn ngừa việc cài đặt code

nguy hiểm thông ào hardware và software của từng hệ thống. Về phía user họ

nên cài đặt và updat liên tục các software như antivirus, anti_trojan và server

patch của hệ điều hành.

Từ phía Network Service Provider: Thay đổi cách tính tiền dịch vụ truy

cập theo dung lượng sẽ làm cho user lưu ý đến những gì họ gửi, như vậy về

mặt ý thức tăng cường phát hiện DDoS Agent sẽ tự nâng cao ở mỗi User. :D

2. Tìm và vô hiệu hóa các Handler:

GVHD: Th.S Chu Minh Yên SVTH: Doãn Thị Nhung73

Page 74: kỹ thuật tấn công giao thức tcp/ip

Đồ Án Tốt Nghiệp Nghiên cứu, tìm hiểu các điểm yếu giao thức TCP/IP xây dựng Module tấn công và giải pháp phòng chống.

Một nhân tố vô cùng quan trọng trong attack-network là Handler, nếu có

thể phát hiện và vô hiệu hóa Handler thì khả năng Anti-DDoS thành công là

rất cao. Bằng cách theo dõi các giao tiếp giữa Handler và Client hay handler

va Agent ta có thể phát hiện ra vị trí của Handler. Do một Handler quản lý

nhiều, nên triệt tiêu được một Handler cũng có nghĩa là loại bỏ một lượng

đáng kể các Agent trong Attack – Network.

3.Phát hiện dấu hiệu của một cuộc tấn công:

Agress Filtering: Kỹ thuật này kiểm tra xem một packet có đủ tiêu

chuẩn ra khỏi một subnet hay không dựa trên cơ sở gateway của một subnet

luôn biết được địa chỉ IP của các máy thuộc subnet. Các packet từ bên trong

subnet gửi ra ngoài với địa chỉ nguồn không hợp lệ sẽ bị giữ lại để điều tra

nguyên nhân. Nếu kỹ thuật này được áp dụng trên tất cả các subnet của

internet thì khái nhiệm giả mạo địa chỉ IP sẽ không còn tồn tại.

MIB statistics: trong Management Information Base (SNMP) của route

luôn có thông tin thống kể về sự biến thiên trạng thái của mạng. Nếu ta giám

sát chặt chẽ các thống kê của protocol mạng. Nếu ta giám sát chặt chẽ các

thống kê của Protocol ICMP, UDP và TCP ta sẽ có khả năng phát hiện được

thời điểm bắt đầu của cuộc tấn công để tạo “quỹ thời gian vàng” cho việc xử

lý tình huống.

4. Làm suy giàm hay dừng cuộc tấn công:

Load balancing: Thiết lập kiến trúc cân bằng tải cho các server trọng

điểm sẽ làm gia tăng thời gian chống chọi của hệ thống với cuộc tấn công

DDoS. Tuy nhiên, điều này không có ý nghĩa lắm về mặt thực tiễn vì quy mô

của cuộc tấn công là không có giới hạn.

Throttling: Thiết lập cơ chế điều tiết trên router, quy định một khoảng

tải hợp lý mà server bên trong có thể xử lý được. Phương pháp này cũng có

thể được dùng để ngăn chặn khả năng DDoS traffic không cho user truy cập

dịch vụ. Hạn chế của kỹ thuật này là không phân biệt được giữa các loại

traffic, đôi khi làm dịch vụ bị gián đoạn với user, DDoS traffic vẫn có thể

xâm nhập vào mạng dịch vụ nhưng với số lượng hữu hạn.

Drop request: Thiết lập cơ chế drop request nếu nó vi phạm một số quy

định như: thời gian delay kéo dài, tốn nhiều tài nguyên để xử lý, gây

deadlock. Kỹ thuật này triệt tiêu khả năng làm cạn kiệt năng lực hệ thống, tuy

GVHD: Th.S Chu Minh Yên SVTH: Doãn Thị Nhung74

Page 75: kỹ thuật tấn công giao thức tcp/ip

Đồ Án Tốt Nghiệp Nghiên cứu, tìm hiểu các điểm yếu giao thức TCP/IP xây dựng Module tấn công và giải pháp phòng chống.

nhiên nó cũng giới hạn một số hoạt động thông thường của hệ thống, cần cân

nhắc khi sử dụng.

5.Chuyển hướng của cuộc tấn công:

Honeyspots: Một kỹ thuật đang được nghiên cứu là Honeyspots.

Honeyspots là một hệ thống được thiết kế nhằm đánh lừa attacker tấn công

vào khi xâm nhập hệ thống mà không chú ý đến hệ thống quan trọng thực sự.

Honeyspots không chỉ đóng vai trò “Lê Lai cứu chúa” mà còn rất hiệu

quả trong việc phát hiện và xử lý xâm nhập, vì trên Honeyspots đã thiết lập

sẵn các cơ chế giám sát và báo động.

Ngoài ra Honeyspots còn có giá trị trong việc học hỏi và rút kinh nghiệm

từ Attacker, do Honeyspots ghi nhận khá chi tiết mọi động thái của attacker

trên hệ thống. Nếu attacker bị đánh lừa và cài đặt Agent hay Handler lên

Honeyspots thì khả năng bị triệt tiêu toàn bộ attack-network là rất cao.

6. Giai đoạn sau tấn công:

Traffic Pattern Analysis: Nếu dữ liệu về thống kê biến thiên lượng

traffic theo thời gian đã được lưu lại thì sẽ được đưa ra phân tích. Quá trình

phân tích này rất có ích cho việc tinh chỉnh lại các hệ thống Load Balancing

và Throttling. Ngoài ra các dữ liệu này còn giúp Quản trị mạng điều chỉnh lại

các quy tắc kiểm soát traffic ra vào mạng của mình.

Packet Traceback: bằng cách dùng kỹ thuật Traceback ta có thể truy

ngược lại vị trí của Attacker (ít nhất là subnet của attacker). Từ kỹ thuật

Traceback ta phát triển thêm khả năng Block Traceback từ attacker khá hữu

hiệu.

III.2 Nghe lén (Sniff) trên đường truyền.

  Sniffer được hiểu đơn giản như là một chương trình cố gắng nghe

ngóng các lưu lượng thông tin trên một hệ thống mạng.

Sniffer được sử dụng như một công cụ để các nhà quản trị mạng theo

dõi và bảo trì hệ thống mạng. Về mặt tiêu cực, sniffer được sử dụng như một

công cụ với mục đích nghe lén các thông tin trên mạng để lấy các thông tin

quan trọng.

III.2.1 Mục đích của Sniffer

Thường có 2 dạng chính: dùng để kiểm tra bảo trì mạng và dạng kia

dùng để xâm nhập mạng. Chúng được sử dụng cho các mục đích:

Phân tích hiệu năng làm việc hoặc sự cố mạng.

GVHD: Th.S Chu Minh Yên SVTH: Doãn Thị Nhung75

Page 76: kỹ thuật tấn công giao thức tcp/ip

Đồ Án Tốt Nghiệp Nghiên cứu, tìm hiểu các điểm yếu giao thức TCP/IP xây dựng Module tấn công và giải pháp phòng chống.

Nhận biết sự xâm nhập mạng, rò rỉ thông tin, ... lấy về thông tin liên

quan tới quá trình xâm nhập.

Quản lý sử dụng mạng.

Tập hợp thông tin báo cáo về trạng thái mạng.

Sửa lỗi, bảo trì các hình thái, giao thức mạng.

Lọc lấy thông tin cần thiết được lưu chuyển trên mạng, đưa về dạng

phù hợp để con người có thể đọc.

Chặn bắt các thông tin nhạy cảm như mật khẩu, username của người

dùng khác trên mạng nhằm xâm nhập hệ thống của họ.

III.2.2 Hoạt động của Sniffer trên đường truyền

 Trên cùng một mạng, Host A và Host B muốn truyền tin cho nhau, các

Packet sẽ được đưa xuống tầng Datalink để đóng gói, các Host phải đóng gói

MAC nguồn, MAC đích vào Frame. Như vậy trước khi quá trình truyền Dữ

liệu, các Host phải hỏi địa chỉ MAC của nhau.[4]

Nếu như Host A khởi động quá trình hỏi MAC trước, nó sẽ gởi

broadcast gói tin ARP request cho tất cả các Host để hỏi MAC Host B, lúc đó

Host B đã có MAC của Host A, sau đó Host B chỉ trả lời cho Host A MAC

của HostB (ARP reply).[4]

Có 1 Host C liên tục gởi ARP reply cho Host A và Host B địa chỉ MAC

của Host C, nhưng lại đặt địa chỉ IP là Host A và Host B. Lúc này Host A cứ

nghĩ máy B có MAC là C. Như vậy các gói tin mà Host A gởi cho Host B đều

bị đưa đến Host C, gói tin Host B trả lời cho Host A cũng đưa đến Host C.

Nếu Host C bật chức năng forwarding thì coi như Host A và Host B không hề

hay biết rằng mình bị tấn công ARP.[4]

III.2.3 Module tấn công nghe lén Password

PC 1 và PC 2 cùng hệ thống mạng LAN

PC 1 Là máy bị tấn công

IP 192.168.1.122

Subnet 255.255.255.0

Gateway 192.168.1.1

PC2 Là máy tấn công có cài đặt công cụ Sniffer là CAIN and ABLE

GVHD: Th.S Chu Minh Yên SVTH: Doãn Thị Nhung76

Page 77: kỹ thuật tấn công giao thức tcp/ip

Đồ Án Tốt Nghiệp Nghiên cứu, tìm hiểu các điểm yếu giao thức TCP/IP xây dựng Module tấn công và giải pháp phòng chống.

Hình 3.6 Giao diện công cụ Cain and Able

Tại PC 2 lúc này cho chạy công cụ sniff

Tại PC 1 đăng nhập vào tài khoản tại http://www.mediafire.com/

Username : [email protected]

Password : P@ssw0rd

Hình 3.7 Tài khoản đăng nhập cho giao thức HTTP

Quay trở lại PC 2 thấy username và password của quá trình đăng nhập

trên đã đc ghi lại :

Hình 3.8 Hiển thị kết quả sniff với giao thức http

GVHD: Th.S Chu Minh Yên SVTH: Doãn Thị Nhung77

Page 78: kỹ thuật tấn công giao thức tcp/ip

Đồ Án Tốt Nghiệp Nghiên cứu, tìm hiểu các điểm yếu giao thức TCP/IP xây dựng Module tấn công và giải pháp phòng chống.

III.2.4 Phương pháp phòng chống Sniffer

1.Sử dụng giao thức HTTPS cho Webserver

Tại PC 1 Bây giờ sẽ đăng nhập vào website có sử dụng giao thức

HTTPS

tại : https://login.yahoo.com

Username : https://login.yahoo.com

Và Password

Hình 3.9 tài khoản đăng nhập cho giao thức HTTPS

Lúc này tại PC 2 công cụ sniff vẫn đang hoạt động , quay trở lại PC 2

xem tại công cụ này đã thu thập lại những thông tin.

Thấy rằng toàn bộ những thông tin thu được ở phần username và

password đều đã được mã hóa và không thể đọc và lấy được thông tin.

Hình 3.10 Hiển thị kết quả với giao thức https

GVHD: Th.S Chu Minh Yên SVTH: Doãn Thị Nhung78

Page 79: kỹ thuật tấn công giao thức tcp/ip

Đồ Án Tốt Nghiệp Nghiên cứu, tìm hiểu các điểm yếu giao thức TCP/IP xây dựng Module tấn công và giải pháp phòng chống.

2. Sử dụng IPSec mã hóa dữ liệu trên đường truyền

PC 1 :IP 192.168.1.2

SM 255.255.255.0

PC 2 : IP 192.168.1.3

SM 255.255.255.0

Sử dụng lệnh Ping từ PC1 tới PC2 và ngược lại khi chưa cấu hình Ipsec

cho các máy. Dùng công cụ capture   monitoring  theo dõi gói dữ liệu thu được

như sau :

Hình 3.11: Capture   monitoring khi chưa cấu hình IPsec

Dữ liệu ở dạng không bị mã hóa, có thể đọc và phân tích dễ dàng

Hình 3.12 Dữ liệu khi chưa cấu hình Ipsec

GVHD: Th.S Chu Minh Yên SVTH: Doãn Thị Nhung79

Page 80: kỹ thuật tấn công giao thức tcp/ip

Đồ Án Tốt Nghiệp Nghiên cứu, tìm hiểu các điểm yếu giao thức TCP/IP xây dựng Module tấn công và giải pháp phòng chống.

Sau khi cấu hình Ipsec cho PC1 Và PC2 (có nhiều phương pháp cấu

hình ipsec ở đây sử phương pháp cấu hình Ipsec sử dụng khóa chung)

Cấu hình tại PC1 và PC2 tương tự nhau:

Hình 3.13 Cấu hình IPSEC

Theo dõi gói dữ liệu được thu lại ở capture   monitoring nhận thấy rằng

thông tin về dữ liệu thu lại được đều ở dưới dạng đã được mã hóa.

Hình 3.14 Capture   monitoring khi đã cấu hình IPsec

GVHD: Th.S Chu Minh Yên SVTH: Doãn Thị Nhung80

Page 81: kỹ thuật tấn công giao thức tcp/ip

Đồ Án Tốt Nghiệp Nghiên cứu, tìm hiểu các điểm yếu giao thức TCP/IP xây dựng Module tấn công và giải pháp phòng chống.

Hình 3.15 Dữ liệu khi đã cấu hình ipsec

III.3 Xây dựng Module tấn công từ chối dịch vụ DOS

Tấn công DOS/DDOS là phương pháp tấn công chủ yếu dựa trên điểm

yếu giao thức TCP/IP, chính vì lý do đi xây dựng module tấn công DOS :

III.3.1 Kỹ thuật tấn công

Tấn công Ping of Death : Ping tới địa chỉ đích gói IP có kích thước lớn

hơn gói tin IP cho phép là 65.536byte

Tấn công Buffer overflow : Sinh ra thật nhiều giao thức ICMP (ping)

với tốc độ được tăng cường hơn.

Tấn công SYN : Yêu cầu kết nối TCP tới địa chỉ đích liên tục.

III.3.2 Mô hình tấn công

Hình 3.16 Mô hình tấn công DOS

GVHD: Th.S Chu Minh Yên SVTH: Doãn Thị Nhung81

Page 82: kỹ thuật tấn công giao thức tcp/ip

Đồ Án Tốt Nghiệp Nghiên cứu, tìm hiểu các điểm yếu giao thức TCP/IP xây dựng Module tấn công và giải pháp phòng chống.

Kẻ tấn công sẽ gửi các yêu cầu hoặc các gói tin không hợp lệ (không

đúng theo tiêu chuẩn) một cách cố ý, khiến cho hệ thống bị tấn công khi nhận

được yêu cầu hay gói tin này, xử lý không đúng hoặc không theo trình tự đã

được thiết kế, dẫn đến sự sụp đổ của chính hệ thống đó, gửi liên lục với tốc độ

được nhanh hơn.[4]

Nếu quá trình đó kéo dài, đích bị tấn công sẽ nhanh chóng

trở nên quá tải, dẫn đến tình trạng crash (treo) nên các yêu

cầu hợp lệ sẽ bị từ chối không thể đáp ứng được. Có thể hình

dung quá trình này cũng giống như khi máy tính cá nhân (PC)

hay bị “treo” khi mở cùng lúc quá nhiều chương trình cùng

lúc.[4]

III.3.3 Xây dựng Module tấn công

Ý tưởng cho việc xây dựng công cụ tấn công là :

- Tại công cụ tấn công sẽ cho phép nhập địa chỉ IP hoặc URL của

website sẽ hiển thị trình duyệt website bị tấn công để cho ta thấy được khi nào

tấn công có kết quả thành công.Nút Test hiển thị kết quả trình duyệt 1 lần.

- Cho phép nhập kích thước gói IP dùng để PING tới website đó.

- Nút Start bắt đầu thực hiện tấn công : Gửi yêu cầu trình duyệt tới

website liên tục và thực hiện Ping gói IP với kích thước lớn hơn kích thước

gói IP cho phép , với lệnh Ping được tăng tốc và liên tục dẫn đến đích bị tấn

công sẽ nhanh chóng trở nên quá tải, dẫn đến tình trạng treo

nên các yêu cầu hợp lệ sẽ bị từ chối không thể đáp ứng được.

- Nút Stop thực hiện kết thúc cuộc tấn công

- Khi tấn công đã thực hiện thành công thì sẽ không hiển thị gì trên

trình duyệt website tại công cụ tấn công vì lúc này dịch vụ đang bị treo không

thể đáp ứng các yêu cầu hợp lệ.

Sử dụng Visual Basic 2010 để xây dựng chương trình.

Chương trình được xây dựng dựa trên các khối lệnh thực hiện như sau:

Lệnh trình duyệt website khi chưa thực hiện tấn công (test), trình duyệt

website sẽ được hiện thị ở khung Webbrower:

GVHD: Th.S Chu Minh Yên SVTH: Doãn Thị Nhung82

Page 83: kỹ thuật tấn công giao thức tcp/ip

Đồ Án Tốt Nghiệp Nghiên cứu, tìm hiểu các điểm yếu giao thức TCP/IP xây dựng Module tấn công và giải pháp phòng chống.

Hình 3.17 Code nút Test

Lệnh bắt đầu thực hiện tấn công :

Hình 3.18 Code nút Start

Lệnh thực hiện tấn công:

- Yêu cầu kết nối(trình duyệt) liên tục

- Giao tiếp với MS-DOS để thực hiện lệnh PING liên tục

+ “- l” : kích thước gói IP

+ “- f” : Tăng tốc độ lệnh PING

Hình 3.19 Code thực hiện tấn công

GVHD: Th.S Chu Minh Yên SVTH: Doãn Thị Nhung83

Page 84: kỹ thuật tấn công giao thức tcp/ip

Đồ Án Tốt Nghiệp Nghiên cứu, tìm hiểu các điểm yếu giao thức TCP/IP xây dựng Module tấn công và giải pháp phòng chống.

Giao diện chương trình tấn công DOS giao tiếp với người sử dụng :

Hình 3.20:Giao diện tool tấn công DOS

III.3.4 Chạy thử chương trình

Thực hiện trình duyệt website trước khi tấn công :

Tại Address nhập wesite http://doannhung.byethost12.com/

Thấy tại khung Webbrower đã xuất hiện trình duyệt :

Hình 3.21 : Test chạy trình duyệt website

Bắt đầu thực hiện tấn công: nhập kích thước gói IP : 125000 Byte

GVHD: Th.S Chu Minh Yên SVTH: Doãn Thị Nhung84

Page 85: kỹ thuật tấn công giao thức tcp/ip

Đồ Án Tốt Nghiệp Nghiên cứu, tìm hiểu các điểm yếu giao thức TCP/IP xây dựng Module tấn công và giải pháp phòng chống.

Khi thực hiện tấn công thành công thì khung Webbrower sẽ không hiển

thị trình duyệt website đang tấn công vì lúc này dịch vụ đã bị tấn công không

thể đáp ứng yêu cầu:

Hình 3.22 Kết quả tấn công DOS bằng module xây dựng

Thực hiện yêu cầu trình duyệt website đang xảy ra tấn công bằng trình

duyệt bên ngoài, lúc này dịch vụ cũng không thể đáp ứng :

Hình 3.23 Kết quả tấn công trên trình duyệt website

GVHD: Th.S Chu Minh Yên SVTH: Doãn Thị Nhung85

Page 86: kỹ thuật tấn công giao thức tcp/ip

Đồ Án Tốt Nghiệp Nghiên cứu, tìm hiểu các điểm yếu giao thức TCP/IP xây dựng Module tấn công và giải pháp phòng chống.

III.3.5 Ưu, nhược điểm

Tại quá trình thực hiện tấn công có thể thấy được ưu, nhược điểm của

công cụ tấn công đó :

- Yêu cầu kết nối(trình duyệt) liên tục

- Giao tiếp với MS-DOS để thực hiện lệnh PING liên tục

+ “- l” : kích thước gói IP

+ “- f” : Tăng tốc độ lệnh PING

Các lệnh thực hiện đơn giản, dễ hiểu. Tại công cụ tấn công đã hiện thị

được trình duyệt website đang tấn công, để có thể xem được khi nào tấn công

thành công website đó.

Các lệnh được thực hiện đơn luồng (thực hiện theo thứ tự), không thực

hiện đa luồng(thực hiện cùng lúc) nên quá trình tấn công diễn ra lâu hơn so

với các công cụ tấn công khác.

III.3.6 Giải pháp phòng chống tấn công DOS

Tổng hợp những giải pháp phòng chống [4]:

Nhìn chung, tấn công từ chối dịch vụ không quá khó thực hiện, nhưng

rất khó phòng chống do tính bất ngờ và thường là phòng chống trong thế bị

động khi sự việc đã xảy ra rồi.

Việc đối phó bằng cách tăng cường “phần cứng” cũng là giải pháp tốt,

nhưng thường xuyên theo dõi để phát hiện và ngăn chặn kịp thời cái gói tin IP

từ các nguồn không tin cậy là hữu hiệu nhất.

Mô hình hệ thống cần phải được xây dựng hợp lý, tránh phụ thuộc lẫn

nhau quá mức. Bởi khi một bộ phận gặp sự cố sẽ làm ảnh hưởng tới toàn bộ

hệ thống

Thiết lập mật khẩu mạnh (strong password) để bảo vệ các thiết bị mạng

và các nguồn tài nguyên quan trọng khác.

Thiết lập các mức xác thực đối với người sử dụng cũng như các nguồn

tin trên mạng. Đặc biệt, nên thiết lập chế độ xác thực khi cập nhật các thông

tin định tuyến giữa các router.

Chỉ kích hoạt các dịch vụ cần thiết, tạm thời vô hiệu hoá và dừng các

dịch vụ chưa có yêu cầu hoặc không sử dụng.

Xây dựng hệ thống định mức, giới hạn cho người sử dụng, nhằm mục

đích ngăn ngừa trường hợp người sử dụng ác ý muốn lợi dụng các tài nguyên

trên server để tấn công chính server hoặc mạng và server khác.

GVHD: Th.S Chu Minh Yên SVTH: Doãn Thị Nhung86

Page 87: kỹ thuật tấn công giao thức tcp/ip

Đồ Án Tốt Nghiệp Nghiên cứu, tìm hiểu các điểm yếu giao thức TCP/IP xây dựng Module tấn công và giải pháp phòng chống.

Liên tục cập nhật, nghiên cứu, kiểm tra để phát hiện các lỗ hổng bảo

mật và có biện pháp khắc phục kịp thời.

  Sử dụng các biện pháp kiểm tra hoạt động của hệ thống một cách liên

tục để phát hiện ngay những hành động bất bình thường. 

Xây dựng và triển khai hệ thống dự phòng. 

Khi phát hiện máy chủ bị tấn công hãy nhanh chóng truy tìm địa chỉ IP

đó và cấm không cho gửi dữ liệu đến máy chủ.

Dùng tính năng lọc dữ liệu của router/firewall để loại bỏ các packet

không mong muốn, giảm lượng lưu thông trên mạng và tải của máy chủ.

Nếu bị tấn công do lỗi của phần mềm hay thiết bị thì nhanh chóng cập

nhật các bản sửa lỗi cho hệ thống đó hoặc thay thế.

Dùng một số cơ chế, công cụ, phần mềm để chống lại TCP SYN

Flooding.

Tắt các dịch vụ khác nếu có trên máy chủ để giảm tải và có thể đáp ứng

tốt hơn.

Nếu được có thể nâng cấp các thiết bị phần cứng để nâng cao khả năng

đáp ứng của hệ thống hay sử dụng thêm các máy chủ cùng tính năng khác để

phân chia tải.

Tạm thời chuyển máy chủ sang một địa chỉ khác

Kết luận :

Ở chương cuối đã tìm hiểu được hai kỹ thuật tấn công điển hình dựa

trên điểm yếu giao thức TCP/IP là : tấn công từ chối dịch vụ và nghe lén.

Bên cạnh đã đưa ra được nhưng công cụ tấn công hiện nay và giải pháp

phòng tránh cho tấn công đó.

Đã xây dựng được kịch bản tấn công DOS website và Sniff được

password dựa trên những công cụ đã được xây dựng sẵn. Đưa ra được các giải

pháp phòng tránh với tấn công đó.

Đi xây dựng module tấn công mới và Demo được chương trình tấn

công trên website thực tế.

GVHD: Th.S Chu Minh Yên SVTH: Doãn Thị Nhung87

Page 88: kỹ thuật tấn công giao thức tcp/ip

Đồ Án Tốt Nghiệp Nghiên cứu, tìm hiểu các điểm yếu giao thức TCP/IP xây dựng Module tấn công và giải pháp phòng chống.

KẾT LUẬN§øng tríc xu híng ph¸t triÓn nhanh vµ m¹nh cña nÒn

c«ng nghÖ th«ng tin thÕ giíi còng nh nÒn c«ng nghÖ th«ng

tin níc nhµ, th× viÖc t×m hiÓu vÒ bé giao thøc TCP/IP lµ v«

cïng quan träng vµ bøc thiÕt hiÖn nay khi mµ chóng ta ®ang

trong qu¸ tr×nh triÓn khai IPv6. ViÖc t×m hiÓu vÒ bé giao

thøc TCP/IP sÏ gióp chóng ta cã c¸i nh×n tæng quan vÒ

TCP/IP, nh÷ng hÖ thèng m¹ng, dÞch vô ®ang triÓn khai trªn

nÒn TCP/IP. Qua ®ã, chóng ta sÏ n¾m b¾t ®îc xu thÕ ph¸t

triÓn cña hÖ thèng m¹ng hiÖn nay trªn thÕ giíi vµ nh÷ng kü

thuËt qu¶n trÞ, ®iÒu hµnh mét hÖ thèng th«ng tin còng nh

xö lý c¸c sù cè vÒ TCP/IP.

Sau mét thêi gian t×m hiÓu vÒ TCP/IP, em còng ®· tÝch

tòy ®îc mét sè kiÕn thøc hÕt søc bæ Ých. §å ¸n “Nghiªn

cøu, t×m hiÓu các điểm yếu của giao thøc TCP/IP,xây dựng

module tấn công vµ gi¶i ph¸p phßng chèng” ®· nªu ra

nh÷ng néi dung c¬ b¶n vÒ bé giao thøc TCP/IP, lµ bé giao

thøc m¹ng được sö dông réng r·i nhÊt thÕ giíi hiÖn nay v× tÝnh

më cña nã. §iÒu ®ã cã nghÜa lµ bÊt cø m¸y tÝnh nµo dïng bé

giao thøc TCP/IP ®Òu cã thÓ nèi được vµo Internet.

MÆc dï cßn h¹n chÕ, nhng em ®· thÊy ®îc vÊn ®Ò

quan träng trong viÖc t×m hiÓu vÒ TCP/IP. Nhê ®ã, em ®·

n¾m b¾t ®îc qu¸ tr×nh h×nh thµnh vµ ph¸t triÓn, cÊu tróc,

®iÓm yÕu cña TCP/IP còng nh gi¶i ph¸p ®¶m b¶o an toµn

cho TCP/IP. So s¸nh gi÷a TCP/IP vµ OSI qua ®ã thÊy ®îc

nh÷ng ®iÓm t¬ng quan còng nh kh¸c biÖt gi÷a 2 m« h×nh.

Nghiªn cøu vµ t×m hiÓu mét sè ®iÓm yÕu c¬ b¶n trong

TCP/IP. B»ng viÖc t×m hiÓu b¶n chÊt cña bé giao thøc TCP/IP

sÏ gióp chóng ta cã thÓ ®a gia c¸c gi¶i ph¸p ®Ó ®¶m b¶o an

toµn cho hÖ thèng m¹ng cã sö dông TCP/IP. §å ¸n t«t nghiÖp

®· ®a ra ®îc mét sè ®iÓm yÕu víi bé giao thøc TCP/IP vµ

còng nh c¸c gi¶i ph¸p t¬ng øng ®Ó phßng chèng tÊn c«ng.

C¸c gi¶i ph¸p phßng chèng bao gåm c¶ gi¶i ph¸p kh«ng sö

GVHD: Th.S Chu Minh Yên SVTH: Doãn Thị Nhung88

Page 89: kỹ thuật tấn công giao thức tcp/ip

Đồ Án Tốt Nghiệp Nghiên cứu, tìm hiểu các điểm yếu giao thức TCP/IP xây dựng Module tấn công và giải pháp phòng chống.

dông mËt m· vµ c¸c gi¶i ph¸p cã sö dông mËt m·, víi mçi gi¶i

ph¸p th× ®Òu ®a ra c¸c ph¬ng ph¸p phßng chèng rÊt cô

thÓ. TÝnh n¨ng an toµn míi trong IPv6, cÊu tróc ®Þa chØ, so

s¸nh víi IPv4 còng ®· ®îc giíi thiÖu trong ®å ¸n tèt nghiÖp và

đã xây dựng được module tấn công từ chối dịch vụ DOS dựa trên các điểm

yếu đã nghiên cứu. Bªn c¹nh phÇn néi dung cßn cã phÇn demo

mét sè tÊn c«ng víi bé giao thøc TCP/IP: DoS, , Sniffer vµ thiÕt

lËp cÊu h×nh IPSec ®Ó m· ho¸ gãi tin trªn ®¬ng truyÒn vµ

chÆn Ping. Tuy nhiªn do mét sè lý do kh¸ch quan, do yÕu tè

thêi gian, kiÕn thøc vµ sù ph¸t triÓn kh«ng ngõng cña c«ng

nghÖ th«ng tin ®ang diÔn ra hµng ngµy, hµng giê nªn nhiÒu

h×nh thøc vµ ph¬ng ph¸p tÊn c«ng míi ra ®êi còng nh nhiÒu

®iÓm yÕu míi ®îc ph¸t hiÖn. ChÝnh v× nh÷ng lý do ®ã mµ

mét sè ph¬ng ph¸p tÊn c«ng ®îc ®a ra nhng cha cã ph¬ng

ph¸p phßng chèng.

Trong thêi gian tíi, b¶n th©n em sÏ tiÕp tôc tiÓu hiÓu bé

giao thøc TCP/IP ë møc s©u h¬n, thuéc vÒ b¶n chÊt. Bæ sung

thªm mét sè ph¬ng ph¸p phßng chèng trong thùc tÕ ®Ó

®¶m b¶o an toµn cho hÖ thèng m¹ng. Kh«ng ngõng học hỏi

thêm ®Ó n©ng cao kiÕn thøc. TiÕp tôc t×m hiÓu TCP/IP vµ xu

híng ph¸t triÓn míi, c«ng nghÖ míi. T×m hiÓu b¶n chÊt cña

tÊn c«ng Dos, DDoS vµ Flood bëi v× c¸c ph¬ng ph¸p tÊn c«ng

vµo ®iÓm yÕu cña TCP/IP chñ yÕu lµ c¸c ph¬ng ph¸p tÊn

c«ng trªn. §a ra nh÷ng kiÕn nghÞ ®èi víi ngêi sö dông ®Ó

®¶m b¶o an toµn cho hÖ thèng m¹ng vµ h¹n chÕ ®Õn møc

thÊp nhÊt c¸c rñi ro thêng gÆp.

Mét lÇn n÷a, em xin göi lêi c¶m ¬n ch©n thµnh nhÊt

®Õn thÇy cïng c¸c quý thÇy, c« trong khoa An Toµn Th«ng

Tin ®· híng dÉn, gióp ®ì, truyÒn ®¹t cho em nh÷ng kiÕn thøc

quý b¸u ®Ó em cã thÓ hoµn thµnh tèt ®å ¸n tèt nghiÖp. Xin

c¶m ¬n tÊt c¶ b¹n bÌ ®· ®éng viªn, trao ®æi, gãp ý trong

suèt qu¸ tr×nh lµm ®å ¸n.

GVHD: Th.S Chu Minh Yên SVTH: Doãn Thị Nhung89

Page 90: kỹ thuật tấn công giao thức tcp/ip

Đồ Án Tốt Nghiệp Nghiên cứu, tìm hiểu các điểm yếu giao thức TCP/IP xây dựng Module tấn công và giải pháp phòng chống.

Sinh viên thực hiện

Doãn Thị Nhung

GVHD: Th.S Chu Minh Yên SVTH: Doãn Thị Nhung90

Page 91: kỹ thuật tấn công giao thức tcp/ip

Đồ Án Tốt Nghiệp Nghiên cứu, tìm hiểu các điểm yếu giao thức TCP/IP xây dựng Module tấn công và giải pháp phòng chống.

TÀI LIỆU THAM KHẢO

[1]. Nguyễn Quốc Cường (Chủ biên)

INTERNETWORKING với TCP/IP tập 1,2

[2]. Bách khoa toàn thư mở Wikipedia

TCP/IP (http://vi.wikipedia.org/wiki/TCP/IP)

DOS/DDOS

Sniff

[3]. Đặng Minh Quân

Nguyên lý hoạt động của giao thức TCP/IP và Internet

[4]. Diễn đàn http://athena. com.vn

Tìm hiểu về giao thức TCP/IP

Tìm hiểu về tấn công DOS/DDOS

Tìm hiểu về tấn công Sniffer

[5]. Diễn đàn http://hvaonline.net

Thảo luận về TCP/IP

Tìm hiểu về tấn công Sniff

[6]. Diễn đàn http://nhatnghe.com

TCP/IP căn bản

[7]. Trung tâm khoa học tự nhiên và viện công nghệ thông tin

Giáo trình : thiết kế và xây dựng mạng LAN va WAN (2004)

[8]. Website http://www.scribd.com

Giáo trình Mạng máy tính – Lê Đình Danh

[9]. Website http://ceh.vn

Điểm yếu của TCP/IP và cách khắc phục

[10]. Website http://vnexperts.net

Giáo trình : IPsec toàn tập

GVHD: Th.S Chu Minh Yên SVTH: Doãn Thị Nhung91