Tải bản đầy đủ (.doc) (46 trang)

An toàn và bảo mật các giao thức TCPIP

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (1.17 MB, 46 trang )

HỌC VIỆN KỸ THUẬT MẬT MÃ
KHOA CÔNG NGHỆ THÔNG TIN

ĐỀ TÀI THỰC TẬP CƠ SỞ

AN TOÀN VÀ BẢO MẬT CÁC GIAO
THỨC MẠNG Ở CÁC TẦNG TRONG MÔ
HÌNH TCP/IP

Cán bộ hướng dẫn :

Phạm Văn Hưởng

Sinh viên thực hiện:
- Nguyễn Văn Hai
- Bùi Thị Vy
- Ngụy Ánh Sáng
Lớp : L01

Hà Nội 2016
1


HỌC VIỆN KỸ THUẬT MẬT MÃ
KHOA CÔNG NGHỆ THÔNG TIN

ĐỀ TÀI THỰC TẬP CƠ SỞ

AN TOÀN VÀ BẢO MẬT CÁC GIAO
THỨC MẠNG Ở CÁC TẦNG TRONG MÔ
HÌNH TCP/IP



Nhận xét của cán bộ hướng dẫn:…………………………………………………………….…
……………………………………………………………………………………………….
………………………………………………………………………………………………….
………………………………………………………………………………………………….
………………………………………………………………………………………………….
………………………………………………………………………………………………….....
Điểm chuyên cần:………………………………………………………………………………
Điểm báo cáo:…………………………………………………………………………………..

Xác nhận của cán bộ hướng dẫn

MỤC LỤC
2


Bảng danh mục các từ viết tắt ………………………………………………………………..6
Danh mục hình vẽ.......................................................................................................................7
LỜI NÓI ĐẦU …………………………………………………………………………………8
Chương 1: TỔNG QUAN ……………………………………………………………………. 6
1.1

Mô hình TCP/IP ……………………………………………………………………….. 7

1.2

Các đặc tính của TCP/IP ……………………………………………………………… 8

1.3


Tầm quan trọng và vấn đề an toàn bảo mật trong mô hình TCP/IP …………………… 9

Chương 2: AN TOÀN VÀ BẢO MẬT CÁC GIAO THỨC MẠNG Ở CÁC TẦNG TRONG
MÔ HÌNH TCP/IP …………………………………………………………………………… 10
2.1

An toàn và bảo mật các giao thức mạng ở tầng ứng dụng (application layer) …… 10
2.1.1 Tầng ứng dụng (application layer) và các giao thức chính hoạt động ở tầng ứng
dụng …………………………………………………………………………….. 12
Giao thức truyền tập tin FTP (File Transfer Protocol) ………………………… 13
Giao thức truyền tải siêu văn bản HTTP (Hypertext Transfer Protocol) ……... 14
Giao thức truyền tải thư tín đơn giản SMTP (Simple Mail Transfer Protocol)... 15
Giao thức truyền tệp nhỏ TFTP (Trivial File Transfer Protocol)………………. 16
Giao thức telnet (TerminaL NETwork)………………………………………… 17
Các kiểu tấn công giao thức tầng ứng dụng …………………………………… 18
2.1.7.1 Tấn công dịch vụ DNS…………………………………………………. 19
2.1.7.2 Tấn công dịch vụ DHCP………………………………………………..
2.1.8. Các phương pháp phòng tránh………………………………………………….
An toàn và bảo mật các giao thức mạng ở tầng giao vận (transport layer)………..
2.2.1 Tầng giao vận và các giao thức chính hoạt động ở tầng giao vận………………
2.2.2 Giao thức điều khiển truyền vận TCP(Transmission Control Protocol)………..
2.2.3 Giao thức UDP(User Datagram Protocol)………………………………………
2.2.4 Các kiểu tấn công giao thức TCP……………………………………………….
2.2.4.1 Nguy cơ ATBM với TCP (Tính sẵn sàng)……………………………...
2.2.4.2 Tấn công can thiệp vào kết nối TCP………………………………….
2.2.4.3 RST Injection…………………………………………………………
2.2.4.4 Data Injection…………………………………………………………
2.2.4.5 Tấn công kết nối TCP trong trường hợp không biết thông tin về kết nối
……………………………………………………………………………..
2.2.4.6 Tấn công giả mạo kết nối TCP……………………………………….

2.2.5. Các phương pháp phòng tránh……………………………………………….
An toàn và bảo mật các giao thức mạng ở tầng internet (internet layer)………..
2.3.1 Giao thức liên mạng IP (Internet Protocol)…………………………………..
2.1.2
2.1.3
2.1.4
2.1.5
2.1.6
2.1.7

2.2

2.3

3


2.4

2.3.2 Giao thức thông điệp điều khiển ICMP (Internetwork Control Message Protocol)
…………………………………………………………………………………
2.3.3 Giao thức ARP (Address Resolution Protocol)……………………………….
2.3.4 Giao thức RARP (Reverse Address Resolution Protocol)…………………….
2.3.5 Các kiểu tấn công các giao thức tầng mạng……………………………………
2.3.5.1 Giao thức IP và ICMP…………………………………………………
2.3.5.2 Phân mảnh gói tin IP…………………………………………………..
2.3.5.3 Nguy cơ tấn công vào giao thức IP (Tính sẵn sàng)…………………...
2.3.5.4 Nguy cơ tấn công vào giao thức ICMP (Tính sẵn sàng)………………
2.3.5.5 Tấn công các giao thức định tuyến……………………………………
2.3.5.6 Tấn công vào giao thức BGP…………………………………………

2.3.6. Các phương pháp phòng tránh ……………………………………………….
Tầng truy nhập mạng (network access layer)……………………………………..
2.4.1 Lớp truy nhập mạng và các công nghệ đặc biệt được dùng trên mạng………
2.4.2 Ethernet………………………………………………………………………
2.4.3 Token ring……………………………………………………………………
2.4.4 Token bus…………………………………………………………………….
2.4.5 Các kiểu tấn công các giao thức tầng truy nhập mạng……………………….
2.4.5.1 Các nguy cơ tấn công…………………………………………………
2.4.5.2 Tấn công trên VLAN………………………………………………..
2.4.5.3 Tấn công: VLAN hopping……………………………………………
2.4.5.4 Tấn công VLAN: DTP và VTP………………………………………..
2.4.5.5 Tấn công giao thức STP……………………………………………..
2.4.5.6 Tấn công cơ chế tự học MAC (chuyển mạch)………………………..
2.4.5.7 Tấn công giao thức ARP……………………………………………..
2.4.6. Các phương pháp phòng tránh ……………………………………………….

Chương 3: TRIỂN KHAI HỆ THỐNG IPSEC/VPN TRÊN WINSERVER 2008……
3.1. Chuần bị hệ thống……………………………………………………………………….
3.2. Triển khai hệ thống…………………………………………………………………….
3.3. Kết quả thử nghiệm và đánh giá………………………………………………………
KẾT LUẬN…………………………………………………………………………………..
TÀI LIỆU THAM KHẢO …………………………………………………………………..

4


Bảng danh mục các từ viết tắt
ARP( Address Resolution Protocol ) : Giao thức chuyển đổi từ địa chỉ IP sang địa chỉ vật lý
BGP(Border Gateway Protocol): Giao thức định tuyến đa miền sử dụng
DHCP(Dynamic Host Configuration Protocol): Giao thức cấu hình động máy chủ

DNS(Domain Name Service): Dịch vụ tên miền
DOS(Denied of Service) : Tấn công từ chối dịch vụ
DTP(Dynamic Trunking Protocol):( Giao thức dùng để đàm phán trunk mode giữa 2 Switch)
FTP(File Transfer Protocol) : Giao thức truyền file
HTTP(Hyper Text Transfer Protocol) : Giao thức truyền siêu văn bản
ICMP(Internet Control Message Protocol): Giao thức điều khiển thông điệp Internet
IEEE(Institute of Electrical and Electronics Engineers):Tổ chức Quốc tế của các Kỹ sư điện và
Điện tử
IP(Internet Protocol) : Giao thức Internet
LAN(Local Area Network) : Mạng nội bộ
LSA( Link-State Advertisements):Cơ chế quảng bá thông tin
MAC(Media Access Control) : Địa chỉ thiết bị
MITM(Man In The Middle)
OSPF(Open Shostest Path First): Giao thức định tuyến theo liên kết trạng thái được triển khai dựa
5


theo chuẩn mở
RARP(Reverse Address Resolution Protocol ): Giao thức chuyển đổi từ địa chỉ vật lý sang địa chỉ
IP
RIP( Routing Information Protocol ) : Một kiểu giao thức dẫn đường
SMTP(Simple Mail Transfer Protocol): Giao thức truyền thư tín đơn giản
SSL(Secure Socket Layer) : Tầng socket an toàn
STP(Spanning Tree Protocol): giao thức ngăn chặn sự lặp vòng
TCP(Transmission Control Protocol) : Giao thức điều khiển truyền tin
TELNET(Terminal Network): mạng thiết bị đầu cuối
TFTP(Trivial File Transfer Protocol): Giao thức truyền tệp nhỏ
NAT(Network Address Translation): Trình biên dịch địa chỉ mạng
UDP(User Datagram Protocol) : Giao thức điều khiển truyền tin không tin cậy
LỜI NÓI ĐẦU


Trong những năm gần đây, việc tổ chức và khai thác mạng Internet rất phát triển. Mạng Internet
cho phép các máy tính trao đổi thông tin một cách nhanh chóng, thuận tiện. Mọi đối tượng đều có thể sử
dụng các dịch vụ và tiện ích của Internet một cách dễ dàng như trao đổi thông tin, tham khảo các thư viện
tri thức đồ sộ của nhân loại…Tại thời điểm hiện nay thì lợi ích của Internet là quá rõ ràng và không thể
phủ nhận. Nhưng một điều không may là đi kèm với nó là các nguy cơ mất an toàn thông tin trên Internet
đang là một vấn đề hàng đầu cản trở sự phát triển của Internet. Bảo đảm an toàn an ninh không chỉ là nhu
cầu riêng của các nhà cung cấp dịch vụ mà nó còn là nhu cầu của chính đáng của mỗi người sử dụng. Các
thông tin nhạy cảm về quốc phòng, thương mại là vô giá và không thể để lọt vào tay đối thủ cạnh tranh.
Tại Việt Nam, mặc dù Internet mới chỉ trở lên phổ biến mấy năm gần đây nhưng những vấn đề an
toàn an ninh mạng cũng không là ngoại lệ. Mặc dù thực sự chưa có tổn thất lớn về kinh tế nhưng vẫn tiềm
ẩn trong đó rất nhiều nguy cơ mất an toàn. Các cuộc tấn công vào hệ thống của nhà cung cấp dịch vụ, xoá
bỏ dữ liệu… ngày một tăng.
Vấn đề bảo vệ mạng, chính xác hơn là bảo vệ thông tin được lưu trữ và di chuyển trên mạng, để
chống lại những người xâm phạm và kẻ phá hoại (gọi chung là hacker), kể cả trong và ngoài hệ thống
mạng, được những người quản trị mạng đặt lên hàng đầu trong công tác quản trị mạng. Hacker không chỉ
tấn công vào các mạng TCP/IP, nhưng mối đe doạ tiềm ẩn đối với các mạng này là rất lớn, vì TCP/IP là
một giao thức mở nên các hacker có thể tìm thấy những lỗ hổng của nó một cách dễ dàng bằng cách thử
nhiều kiểu tấn công khác nhau.
Trên cơ sở đó, nhóm em đã chọn đề tài: “An toàn và bảo mật các giao thức mạng trên mô hình
TCP/IP”
Mục tiêu của đề tài gồm:
1. Tìm hiểu chung về mô hình TCP/IP
2. An toàn và bảo mật các giao thức ở mỗi tầng trong mô hình TCP/IP
6


3. Triển khai hệ thống IPSEC/VPN trên WinServer 2008
Bố cục của đề tài gồm 3 chương:



Chương 1: Tổng quan

Trình bày khái quát mô hình TCP/IP, đặc tính của mô hình và vấn đề an toàn bảo mật trên mô
hình TCP/IP


Chương 2: An toàn và bảo mật các giao thức mạng ở các tầng trong mô hình TCP/IP

Trình bày khái niệm các giao thức ở các tầng, khả năng bị tấn công và phương
pháp phòng tránh cho các giao thức


Chương 3: Triển khai hệ thống IPSEC/VPN trên WinServer 2008

Thực hiện xây dựng hệ thống IPSEC/VPN trên Hệ điều hành WinServer 2008

CHƯƠNG I : TỔNG QUAN
1.1 . Mô hình TCP/IP
-

Bộ giao thức TCP/IP đƣợc phân làm 4 tầng
+ Tầng ứng dụng (Application Layer)
+ Tầng giao vận (Transport Layer)
+ Tầng Internet (Internet Layer)
+ Tầng truy cập mạng (Network access Layer)

7



Hình 1 : Mô hình TCP/IP


Tầng ứng dụng (Application Layer) :

+ Cung cấp dịch vụ cho người dùng
+ Gồm 2 tiến trình: client và server
+ Sử dụng dịch vụ của tầng giao vận để trao đổi dữ liệu giữa các tiến trình
+ Giao thức tầng ứng dụng: DNS, DHCP, HTTP, SMTP, POP, IMAP...



Tầng giao vận (Transport Layer) :
+ Điều khiển quá trình truyền dữ liệu giữa các tiến trình.

+ Dồn kênh/Phân kênh: số hiệu cổng dịch vụ
+ TCP: hướng liên kết, tin cậy, truyền theo dòng byte
+ UDP: hướng không liên kết, truyền theo bức tin (datagram)
• Tầng Internet (Internet Layer) :
Kết nối liên mạng (Internetworking):
+ Đóng gói, phân mảnh dữ liệu
+ Định danh: địa chỉ IP
+ Định tuyến
8




Tầng truy cập mạng (Network access Layer) :


+ Điều khiển truyền dữ liệu trêntừng liên kết vật lý: đóng gói, đồng bộ, phát hiện và
sửa lỗi
+ Chuyển mạch dữ liệu giữa các liên kết vật lý
+ Điều khiển truy cập đường truyền
+ Hỗ trợ truyền thông quảng bá VLAN
+ Mã hóa bit thành tín hiệu
+ Điều chế tín hiệu và truyền tín hiệu trên liên kết vật lý
1.2 . Các đặc tính của TCP/IP
Sự phổ dụng của các giao thức TCP/IP trên Internet không phải vì các giao thức này có
trên Internet hay vì các cơ quan quân sự bắt buộc phải sử dụng chúng . Các giao thức này
đáp ứng những đòi hỏi của truyền giữ liệu toàn cầu vào đúng thời gian cần thiết, và
chúng có một số đặc tính quan trọng sau :
• Bộ giao thức TCP/IP không bị ràng buộc vào một phần cứng hay hệ điều hành nào.
TCP/IP là cách lý tưởng để liên kết các phần cứng và phần mềm khác nhau ngay cả
khi bạn sử dụng chúng để giao tiếp không qua Internet.
• Bộ giao thức TCP/IP độc lập với các phần cứng của mạng máy tính. Đăch tính này
cho phép TCP/IP tích hợp các kiểu mạng máy tính khác nhau. Bộ giao thức TCP/IP
có thể sử dụng Ethernet, token ring, dial-up line, và hầu như trên các mạng vật lý
truyền thông khác nhau.
• Bộ giao thức TCP/IP có chế độ đánh địa chỉ chung cho các máy sử dụng TCP/IP giao
tiếp với máy có địa chỉ đúng trên toàn mạng , ngay cả đối với mạng máy tính rất lớn
như mạng toàn cầu.


Bộ giao thức TCP/IP đã chuẩn hóa các bộ giao thức ở tầng trên hướng đến ổn định,
dễ sử dụng cho các dịch vụ trên mạng.

1.3. Tầm quan trọng và vấn đề an toàn bảo mật trong mô hình TCP/IP
Vấn đề bảo mật hay chính xác hơn là vấn đề bảo vệ thông tin được lưu trữ và truyền đi
trên mạng, để chống lại những người xâm phạm hay kẻ phá hoại ( gọi chung là hacker ).

Kể cả trong và ngoài mạng được người quản trị đặt lên hàng đầu trong công tác quản trị
mạng. Hacker không chỉ tấn công vào các mạng TCP/IP, nhưng mối đe dọa tiềm ẩn với
các mạng là rất lớn, vì TCP/IP là một giao thức mở nên các hacker có thể tìm thấy lỗ
hổng của nó một cách dễ dàng bằng cách thử nhiều kiểu tấn công khác.

-

Mục tiêu của Hacker :

Hacker thường nhắm đến trước khi thực hiện tấn công các mạng TCP/IP là:

+ Phải đạt được “Sự mạo danh (Impersonation)”: Để có thể thực hiện sự truy cập không được phép
đến tài nguyên mạng.
9


+ Phải làm cho mục tiêu bị tấn công rơi vào tình trạng “ Từ chối dịch vụ(gọi là tấn công Dos: DenialofService)”: Để làm cho tài nguyên máy chủ của mạng(như :Web server,…) trở nên không có
tác dụng
+ Phải thực hiện được việc “Phát lại thông điệp (Replay of messages)”: Để có thể truy cập /nhận
thông tin và thay đổi nó, khi thông tin đang di chuyển trên đường
+ Phải đoán được mật khẩu (Guessing of key): Để từ đó có thể truy cập đến thông tin/dịch vụ mà
đúng ra nó bị từ chối (gọi là tấn công từ điển: dictionary attack)
+ Phải đoán khóa (Guessing of key): Để có thể truy cập đến mật khẩu và dữ liệu đã được mã hóa (gọi
là tấn công “thô bạo”: brute-force attack)
• Chính sách an toàn cho các mạng TCP/IP
- Người quản trị an toàn của hệ thống mạng, nhất là các mạng TCP/IP, phải thực hiện kết hợp các
chính sách bảo mật sau đây để bảo vệ mạng và dữ liệu truyền đi trên mạng của họ, sự bảo vệ
mạng không chỉ giới hạn trong một LAN/WAN mà có thể trên cả mạng nội bộ và internet.
+ Thực hiện mã hóa thông tin trước khi truyền/gửi đi trên mạng: Để bảo vệ dữ liệu và mật khẩu
+ Thực hiện cơ chế xác thực có thể sử dụng chữ ký điện tử hoặc thẻ xác thực: Để kiểm tra ai la người

gửi (nguồn gốc) dữ liệu trên mạng.
+ Sử dụng các khóa “mạnh”; Ngăn ngừa hiện tượng giả khóa trong tương lai, …: Để bảo vệ mạng
chống lại các tấn công theo cách bẻ khóa: tấn công “từ điển”, tấn công “thô bạo”.
+ Thực hiện cơ chế cho phép/cấp phép (authorization): Để ngăn chặn các truy nhập không thích hợp/
không hợp lệ
+ Kiểm tra tính toàn vẹn dữ liệu và mã xác thực thông điệp: Để chống lại sự thay đổi/ sửa đổi thông
điệp
+ Thực hiện quy trình công nhận: Để đảm bảo rằng một hành động là không thể bị phủ nhận/ từ chối
bởi người thực hiện nó.
+ Thực hiện chính sách mật khẩu một lần và số bắt tay ngẫu nhiên hai chiều: Để cho phép các cặp
truyền thông xác thực lẫn nhau.
+ Thực hiện chính sách cập nhật và làm tươi khóa thường xuyên
+ Thực hiện chính sách che giấu/che đậy địa chỉ - sử dụng kỹ thuật NAT/PAT: Để bảo vệ mạng
chống lại các tấn công theo kiểu từ chối dịch vụ(Dos).
- Vì giao thức TCP/IP không được thiết kế gắn liền với bảo mật, nên nhiều thế hệ thống bảo mật
khác nhau được phát triển cho các ứng dụng và lưu lượng chạy trên Intranet/Internet. Các phần
mềm này có nhiệm vụ chuẩn bị dữ liệu cho việc truyền trên một mạng, trong đó có chú ý đến các
khả năng có thể xác thực và mã hóa. Trong mạng TCP/IP , các ứng dụng nói trên có thể xây dụng
1 trong 3 lớp: Ứng dụng; Giao vận/Mạng; Vật lý/Liên kết dữ liệu.
• Đối phó với các kiểu tấn công của Hacker.
+ Để ngăn chặn việc đọc lén các thông điệp truyền đi trên mạng: Thông điệp phải được mã hóa
trước khi truyền đi và sẽ được giải mã ở bên nhận. Trong trường hợp này bên gửi và bên nhận
phải chia sẻ một khóa bị mật để phục vụ cho việc mã hóa và giải mã thông điệp. Với giải pháp
này , khóa cũng phải truyền đi/phân bố trên mạng, nên vấn đề dặt ra là làm thế nào để phân bố
khóa một cách an toàn , ở đây có thể sử dụng kỹ thuật mã hóa khác nhau: Mã hóa khoa bị mật
hoặc mã hóa khóa công khai.
+ Không thể sử dụng khóa trong khoảng thời gian dài và để ngăn chặn việc đoán khóa (có thể
đoán khóa trong tương lai nếu biết được khóa hiện tại) của hacker. Để đối phó , phải “làm tươi
khóa” thường xuyên và không sử dung chính sách “dựa vào khóa cũ để tính ra khóa mới”,điều
này đảm bảo khóa được truyền đi/phân phối một cách an toàn (bí mật).

10


+ Để ngăn chặn việc “phát lại” thông điện của kẻ mạo danh: Sử dụng chỉ số tuần tự trong các gói
tin IP (thông số timestamp thường không đảm bảo độ tin cậy cho mục tiêu an toàn này).
+ Để đảm bảo thông điệp không bị thay đổi /sửa đổi trong khi truyền từ người gửi đến người
nhận: Sử dụng các thông điệp rút gọn, có thể sử dụng các hàm băm hoặc các hàm on-way.
+ Để đảm bảo thông điệp rút gọn là không thỏa hiệp hoặc không bị thay đổi trên đường truyền:Sử
dụng chữ ký điện tử bằng cách mã hóa thông điệp rút gọn với một khóa bí mật hoặc một khóa
riêng (đó là chính sách xác thực hoặc chính sách không công nhận ).
+ Làm thế nào để một thông điệp hoặc một chữ ký số là được xuất phát từ một đối tác tin cậy, đối
tác mong muốn:Sử dụng cơ chế bắt tay two-way bao gồm các số ngẫu nhiện được mã hóa(xác
thực lẫn nhau).
+ Làm thế nào để đảm bảo một “cái bắt tay” là đã được trao đổi với một đối tác tin cậy(từ các tấn
công theo kiểu man-in-the-middle): Sử dụng các thẻ chứng thực số (một sự kết hợp của khóa
công cộng với thông tin nhận dạng của đối tác).
+ Làm thế nào để ngăn chặn việc sử dụng không hợp lệ các dịch vụ bởi những người sử dụng
không được xác thực một cách thích hợp: Sử dụng mô hình điều khiển truy cập nhiều tầng.
+ Để đảm bảo chống lại các mã phá hoại hoặc thông điệp không mong muốn (tấn công từ Dos):
Giới hạn việc truy cập mạng bên trong, bằng cách sử dụng: Filter, Firewall, Proxy, Packet
Authentication, Conceal internal address and name structure (che dấu địa chỉ và cấu trúc mạng
bên trong),…

CHƯƠNG 2 : AN TOÀN VÀ BẢO MẬT CÁC GIAO
THỨC MẠNG Ở CÁC TẦNG TRONG MÔ HÌNH TCP/IP
2.1. An toàn và bảo mật các giao thức mạng ở tầng ứng dụng (application layer)
2.1.1. Tầng ứng dụng (application layer) và các giao thức chính hoạt động ở tầng ứng dụng
Tầng ứng dụng là tầng trên cùng trong bộ cấu trúc của bộ giao thức TCP/IP. Tầng này bao gồm
tất cả các chương trình có sử dụng tầng vận tải để truyền dữ liệu. Có rất nhiều giao thức ứng
dụng. Đa số các giao thức ứng dụng cung cấp các dịch vụ và rất nhiều giao thức mới được tạo ra

cho tầng ứng dụng. Những giao thức ứng dụng đã được sử dụng biết đến nhiều là :







Telnet, là giao thức cung cấp khả năng truy cập từ xa qua mạng.
FTP, là giao thức chuyển file qua mạng
SMTP, là giao thức để chuyển thư điện tử
HTTP, là giao thức để chuyển siêu văn bản
TFTP, là giao thức truyền tệp nhỏ



…..
11


2.1.2. Giao thức truyền tập tin FTP(File Transfer Protocol)
Những người phát triển giao thức FTP cần phải cân bằng nhu cầu giữa việc phát triển một bộ giao
thức vừa có nhiều chức năng và vừa đơn giản trong triển khai. Do đó, FTP không đơn giản như
“đứa em trai” của nó – là giao thức TFTP. Hoạt động của giao thức này có thể chia ra thành nhiều
thành phần nhỏ, hoạt động cùng nhau để thực hiện các công việc như khởi tạo kết nối, truyền
thông tin điều khiển và truyền lệnh.
Sơ lược về FTP






Hỗ trợ user login.
Hoạt động dựa trên chuẩn giao thức TCP.
Là một dịch vụ đặc biệt sử dụng 2 cổng : cổng 20 để truyền dữ liệu (data port), cổng 21
truyền lệnh ( command port).



Có 2 chế độ truyền tải là passive hoặc active.

Chế độ active:

Hình 2 : Chế độ tải active.
Chế độ passive

12


Hình 3: chế độ tải passive.
- Các phương thức truyền
1.Stream mode:
-

Dữ liệu được truyền đi dưới dạng các byte không cấu trúc liên tiếp. Thiết bị gửi chỉ đơn

thuần đầy luồng dữ liệu qua kết nối TCP tới phía nhận.
-Phương thức này chủ yếu dựa vào tính tin cậy trong truyền dữ liệu của TCP.
2. Block mode: Là phương thức truyền dữ liệu mang tính quy chuẩn hơn, với việc dữ liệu được
chia thành nhiều khối nhỏ và được đóng gói thành các FTP blocks. Mỗi block này có một trường

header 3 byte báo hiệu độ dài, và chứa thông tin về các khối dữ liệu đang được gửi
3. Compressed mode: Là một phương thức truyền sử dụng một kỹ thuật nén khá đơn giản, là
“run-length encoding” – có tác dụng phát hiện và xử lý các đoạn lặp trong dữ liệu được truyền đi
để giảm chiều dài của toàn bộ thông điệp. Thông tin khi đã được nén, sẽ được xử lý như trong
block mode, với trường header.
2.1.3. Giao thức chuyền tải siêu văn bản HTTP (Hypertext Transfer Protocol).
Hypertext Transfer Protocol (HTTP) là một giao thức không trạng thái (stateless) nằm ở tầng ứng
dụng, đảm nhiệm việc giao tiếp giữa các hệ thống phân tán với nhau, và nó là nền tảng của web.
Là một web developer, chúng ta nên hiểu rõ giao thức này.



Cơ bản về HTTP.

HTTP cho phép giao tiếp giữa rất nhiều loại server/client với nhau, chủ yếu thông qua TCP/IP,
tuy nhiên bất kỳ giao thức đáng tin cậy nào khác cũng có thể được dùng. Cổng giao tiếp chuẩn là
13


80, tuy nhiên có thể dùng bất kỳ cổng khác. Giao tiếp giữa client và server dựa vào một cặp
request/response. Client khởi tạo HTTP request và nhận HTTP response từ server gửi về.

Hình 4 : Quá trình yêu cầu phản hồi HTTP.
Giao tiếp giữa máy chủ và máy khách thông qua một cặp request/response. Client khởi tạo một
request HTTP, và sẽ nhận được trả lời, đó chính là response HTTP.

Request Header

Hình 5 : Yêu cầu Header.
Response Header


Hình 6 : Phản hồi Header.
14


2.1.4. Giao thức truyền tải thư tín đơn giản SMTP (Simple Mail Transfer Protocol).
Simple Mail Transfer Protocol (SMTP) là giao thức truyền tải e-mail qua mạng, SMTP cho
phép chuyển thông điệp mail từ mail server của người gửi đến mail server của người nhận. Thông
điệp mail ở định dạng ASCII 7 bit. SMTP được định nghĩa trong RFC 821, điều chỉnh trong RFC
1123 và mở rộng trong RFC 2821 với tên gọi ESMTP (Extended SMTP). SMTP sử dụng cổng
25 trên nền TCP.
Trong RFC 822 định nghĩa tiêu chuẩn của định dạng thông điệp maill, gồm 2 phần: dòng tiêu đề
(header) và phần thân (body).
-

Một hệ thống e-mail có ba thành phần chính: user agents, mail server và giao thức SMTP.

-

User agentcho phép người dùng đọc, trả lời, chuyển tiếp, lưu và soạn thông điệp mail. User agent
là những phần mềm gửi mail như Microsoft’s Outlook, Apple Mail (những phần mềm này sử
dụng giao diện GUI).

-

Mail server là thành phần cốt lỗi trong hạ tầng hệ thống e-mail. Khi người dùng soạn xong thông
điệp thì user agent sẽ gửi thông điệp đến mail server và thông điệp được đặt trong hàng đợi
(message queue), sau đó sẽ gửi đến mail server của người dùng khác và được lưu tại mailbox.

-


Giao thức SMTP đảm nhiệm việc truyền tải thông điệp từ mail server của người gửi đến mail
server của người nhận. SMTP thiết lập kết nối TCP trên cổng 25.

Hình 7 : Hệ thống email
Phương thức hoạt động của SMTP:
-

Để mô tả hoạt động cơ bản của giao thức SMTP một cách dễ hiểu ta xem xét một hoạt cảnh phổ
biến “An gửi thông điệp cho Bình” ở hình :

15


Hình 8 : : Hoạt động gửi e-mail.
Bước 1: An khởi động useragent của mình, cung cấp địa chỉ e-mail của Bình, soạn thông điệp và
chỉ thị user agent gửi mail.
Bước 2: User agent của An gửi thông điệp đến mail server của An và thông điệp được đặt trong
hàng đợi.
Bước 3: SNMP client chạy trên mail server của An phát hiện ra thông điệp trong hàng đợi và tiến
hành mở kết nối TCP đến SMTP server chạy trên mail server của Bình.
Bước 4: Sau khi thực hiện bắt tay chào hỏi (handshaking), SMTP client của An sẽ gửi thông điệp
của An đến kết nối TCP.
Bước 5: Tại mail server của Bình, SMTP server nhận được thông điệp và lưu lại trên mailbox.
Bước 6: Khi Bình khởi động user agent của mình thì sẽ thấy mail của An trong mailbox.
-

Lưu ý: SMTP không sử dụng các mail server trung gian để gửi thư, mà chỉ sử dụng một kết nối
TCP trực tiếp giữa hai mail server ngay cả khi hai mail server cách nhau một khoản cách rất xa


2.1.5.Giao thức truyền tệp nhỏ TFTP (Trivial File Transfer Protocol)
TFTP là giao thức truyền tệp nhỏ và kém đa dụng hơn so với FTP, nhưng chức năng của nó vẫn
không ngoài nhiệm vụ truyền tải dữ liệu.
Sơ lược về TFTP:
-

Không hỗ trợ user login

-

Sử dụng UDP ( *)

-

Chỉ dùng 1 connection (FTP dùng 2 connection)

-

Chỉ có 5 lệnh

-

Giao thức truyền tệp nhỏ vẫn còn được sử dụng trong khi FTP vượt trội hoàn toàn về mọi mặt.




Nó nhỏ gọn (khoảng 200kb), cần không tới 20s để cài đặt.
Phù hợp khi để load cấu hình, image cho thiết bị.
16



2.1.6. Giao thức telnet (TerminaL NETwork)
Telnet là một ứng dụng cho phép người dùng ngồi trên một thiết bị đầu cuối có thể thông qua kết
nối mạng đến một thiết bị từ xa để điều khiển nó bằng câu lệnh như là đang ngồi tại máy ở
xa.Một máy trạm có thể thực hiện đồng thời nhiều phiên telnet đến nhiều địa chỉ IP khác
nhau.Đồng thời mỗi host đích ở xa, có thể telnet đến các cổng địa chỉ khác nhau( vídụ: cổng 80
của web, cổng 20,21 của FTP)
Họat động của telnet :


Telnet hoạt động theo phiên, mỗi phiên là một kết nối truyền dữ liệu theo giao thức TCP với cổng



23
Telnet hoạt động theomô hình client server trongđó client là một phần mềm chạy trên máy trạm
tại chỗ mà người sử dụng, phần mềm này sẽ cung cấp giao diện hiển thị để người dùng gõ lệnh



điều khiển.
Phần server là dịch vụ chạy trên máy từ xa lắng nghe và xử lý các kết nối và câu lệnh được gửi



đến từ máy trạm tại chỗ.
Câu lệnh ở máy trạm tại chỗ (termiral) sẽ được đóng gói bằng giao thức TCP và truyền đến địa




chỉ IP của máy ở xa.
Đường truyền của telnet là fullduplex, cho phép cả client và server có thể truyền đồng thời dữ



liệu.
Telnet cho phép kết nối và điều khiển nhiều thiết bị của các hãng khác nhau, thậm chí chạy các hệ

điều hành khác nhau chỉ cần giữa 2 máy đócó một kết nối IP thôngsuốt.
2.1.7.Các kiểu tấn công giao thức tầng ứng dụng.
2.1.7.1. Tấn công dịch vụ DNS.
1. DNS spoofing (DNS cache poisoning).
Đây là một phương pháp tấn công máy tính nhờ đó mà dữ liệu được thêm vào hệ thống cache của
các DNS server. Từ đó, các địa chỉ IP sai (thường là các địa chỉ IP do attacker chỉ định) được trả
về cho các truy vấn tên miền nhằm chuyển hướng người dùng tư một website này sang một
website khác.
Để khai thác theo hướng này, attacker lợi dụng lỗ hổng của phần mềm DNS, do các DNS
responses không được xác nhận để đảm bảo chúng được gửi từ các server được xác thực, các bản
ghi không đúng đắn sẽ được cache lại và phục vụ cho các user khác.
Ví dụ: Attacker thay thế địa chỉ IP cho một bản ghi DNS trên DNS server thành địa chỉ IP của
server mà attacker đang có quyền điều khiển. Trên server này, attacker có triển khai một số phần
mềm mã độc để khi người dùng bị chuyển qua sẽ dễ dàng bị nhiễm mã độc.
2. DNS Amplification Attack.
Đây là một trong những phương pháp được sử dụng để tấn công từ chối dịch vụ, thuộc vào lớp
reflection attack.
Có hai yếu tố cơ bản cho cách thức tấn công này:
17



– Địa chỉ tấn công được che giấu nhờ ánh xạ sang một bên thứ ba (Reflection)
– Traffic mà người bị hại nhận được sẽ lớn hơn traffic gửi từ attacker (Amplification)
3.Giả mạo máy chủ DNS
Đây là cách một số phần mềm quảng cáo hay trojan thường hay thực hiện. Đầu tiên, chúng dựng
lên các DNS server, giống với chức năng DNS server thông thường. Tuy nhiên, các DNS server
này có khả năng điều khiển được để thêm, bớt hay chỉnh sửa các bản ghi DNS nhằm chuyển
hướng người dùng tới các địa chỉ IP không chính xác với mục đích: gia tăng quảng cáo, cài mã
độc, thay đổi kết quả tìm kiếm…
Để thực hiện hành vi này, các phần mềm độc hại sau khi được cài vào máy tính người dùng,
chúng sẽ tìm cách để thay đổi cấu hình DNS của người dùng thành địa chỉ DNS của phần mềm đã
thiết lập từ trước. Qua đó, các truy vấn DNS của người dùng thay vì đi qua các DNS server của
ISP hoặc do người dùng thiết lập thì lại đi qua các DNS server của attacker.
Một biến thể của hình thức này chính là việc các phần mềm độc hại thay đổi file host (Trên hệ
điều hành Windows) để chỉ định địa chỉ IP cho một số website mà attacker mong muốn.
4.Cách phát hiện và phương pháp phòng tránh.
Thông thường thì rất khó để người dùng có thể nhận biết được máy tính cá nhân của mình đang bị
tấn công thông qua hệ thống DNS.
Đơn giản nhất chúng ta có thể kiểm tra địa chỉ DNS server trên máy tính của mình, kiểm tra nội
dung file host (Hệ điều hành windows). Chú ý sự thay đổi bất thường về giao diện, nội dung của
các website thông thường.
Để phòng tránh, chúng ta cần thiết lập địa chỉ DNS server trỏ về các DNS server tin cậy, thường
xuyên kiểm tra các thông số cấu hình DNS, cài đặt các phần mềm antivirus để bảo vệ máy tính và
truy cập tốt hơn.
2.1.7.2.Tấn công dịch vụ DHCP.
Tấn công vào dịch vụ DHCP.
Tuy có nhiều ưu điểm, nhưng giao thức DHCP hoạt động lại khá đơn giản, suốt quá trình trao đổi
thông điệp giữa DHCP Server và DHCP Client không có sự xác thực hay kiểm soát truy cập.
DHCP Server không thể biết được rằng nó đang liên lạc với một DHCP Client bất hợp pháp hay
không, ngược lại DHCP Client cũng không thể biết DHCP Server đang liên lạc có hợp pháp
không. Như vậy sẽ có hai tình huống xảy ra:

Trường hợp 1 : Khi DHCP client là một máy trạm bất hợp pháp.
Khi kẻ tấn công thỏa hiệp thành công với một DHCP Client hợp pháp trong hệ thống mạng, sau
đó thực hiện việc cài đặt, thực thi một chương trình. Chương trình này liên tục gửi tới DHCP
Server các gói tin yêu cầu xin cấp địa chỉ IP với các địa chỉ MAC nguồn không có thực, cho tới
khi dải IP có sẵn trên DHCP Server cạn kiệt vì bị nó thuê hết. Điều này dẫn tới việcDHCP Server
không còn địa chỉ IP nào để cho các DHCP Client hợp pháp thuê, khiến dịch vụ bị ngưng trệ, các
máy trạm khác không thể truy nhập vào hệ thống mạng để truyền thông với các máy tính trong
mạng
Trường hợp tấn công này chỉ làm cho các máy tính đăng nhập vào hệ thống mạng (sau khi bị tấn
công) không thể sử dụng dịch vụ DHCP, dẫn đến không vào được hệ thống mạng. Còn các máy
trạm khác đã đăng nhập trước đó vẫn hoạt động bình thường.
Đây là kiểu tấn công từ chối dịch vụ DHCP dễ dàng nhất mà kẻ tấn công có thể thực hiện. Kẻ tấn
công chỉ cần rất ít thời gian và băng thông là có thể thực hiện được cuộc tấn công này.
18


Trường hợp 2 : Khi DHCP Server là một máy chủ bất hợp pháp.
Khi kẻ tấn công phá vỡ được các hàng rào bảo vệ mạng và đoạt được quyền kiểm soát DHCP
Server, nó có thể tạo ra những thay đổi trong cấu hình của DHCP Server theo ý muốn. Kẻ tấn
công có thể tấn công hệ thống mạng theo các cách sau:
Tấn công DoS hệ thống mạng: Kẻ tấn công thiết lập lại dải IP, subnet mask của hệ thống để các
máy trạm hợp pháp không thể đăng nhập vào hệ thống mạng được, tạo ra tình trạng DoS trong
mạng.
Tấn công theo kiểu DNS redirect: Kẻ tấn công đổi các thiết lập DNS để chuyển hướng yêu cầu
phân dải tên miền của Client tới các DNS giả mạo, kết quả là Client có thể bị dẫn dụ tới các
website giả mạo được xây dựng nhằm mục đích đánh cắp thông tin tài khoản của người dùng
hoặc website có chứa các mã độc, virus, trojan... sẽ được tải về máy Client.
Tấn công theo kiểu Man-in-the-middle(MITM): Kẻ tấn công thay đổi Gateway mặc định trỏ về
máy của chúng, để toàn bộ thông tin mà Client gửi ra ngoài hệ thống mạng sẽ được chuyển tới
máy này thay vì tới Gateway mặc định thực sự. Sau khi xem được nội dung thông tin, gói tin sẽ

được chuyển tiếp đến Gateway thực sự của mạng và Client vẫn truyền bình thường với các máy
ngoài mạng mà người dùng không hề biết họ đã để lộ thông tin cho kẻ tấn công.
Nhược điểm của cách tấn công này là kẻ tấn công chỉ có thể xem trộm nội dung thông tin của gói
tin gửi ra ngoài mạng mà không thể xem nội dung thông tin của gói tin gửi cho Client từ bên
ngoài mạng
2.1.8.Các phương pháp phòng tránh.
Với tấn công từ chối dịch vụ bằng cách sử dụng một DHCP Client bất hợp pháp, ta có thể khắc
phục bằng cách sử dụng các switch có tính năng bảo mật cao, giúp hạn chế số lượng địa chỉ MAC
có thể sử dụng trên một cổng. Mục đích là để ngăn chặn việc có quá nhiều địa chỉ MAC sử dụng
trên một cổng đó trong một khoảng thời gian giới hạn, nếu vượt qua giới hạn này cổng sẽ bị đóng
lại ngay lập tức. Thời gian cổng hoạt động trở lại tùy thuộc vào giá trị mặc định do người quản trị
mạng thiết lập
Với cuộc tấn công theo kiểu Man-in-the-Middle sử dụng DHCP Server giả mạo, ta có thể khắc
phục bằng cách sử dụng các switch có tính năng bảo mật DHCP snooping. Tính năng này chỉ cho
kết nối đến DHCP trên một hoặc một số cổng tin cậy nhất định. Chỉ có những cổng này mới cho
phép gói tin DHCP Response hoạt động. Cổng này được người quản trị mạng kết nối đến DHCP
Server thật trong hệ thống với mục đích ngăn chặn không cho DHCP Server giả mạo hoạt động
trên những cổng còn lại
Ngoài ra, chúng ta có thể sử dụng các phương pháp bảo mật cơ bản cho DHCP Server gồm: Bảo
mật về mặt vật lý cho các DHCP Server; Sử dụng hệ thống file NTFS để lưu trữ dữ liệu hệ thống;
Triển khai sử dụng các giải pháp Anti - virus mạnh cho hệ thống; Thường xuyên cập nhật các bản
vá lỗi cho các phần mềm và Windows; Các dịch vụ hay các phần mềm không sử dụng thì nên gỡ
bỏ; Thực hiện việc Quản lý DHCP với người dùng có quyền hạn tối thiểu nhất; DHCP Server
phải được đặt phía sau Firewall; Đóng tất cả các cổng không sử dụng đến; Sử dụng việc lọc địa
chỉ MAC; Giám sát hoạt động của DHCP bằng cách xem các file log và xem thông tin thống kê
của hệ thống trên DHCP Server.
2.2.

An toàn và bảo mật các giao thức mạng ở tầng giao vận (transport layer)


2.2.1.Tầng giao vận và các giao thức chính hoạt động ở tầng giao vận.
Là tầng vận chuyển chịu trách nhiệm chuyển phát toàn bộ thông báo từ tiến trình tới tiến trình
(process to process).Tầng này có hai giao thức là TCP và UDP, mỗi giao thức cung cấp một loại
dịch vụ vận chuyển: Hướng kết nối và không kết nối.

2.2.2. Giao thức điều khiển truyền vận TCP(Transmission Control Protocol)
19


TCP là giao thức hướng kết nối (connection- oriented), nghĩa là cần phải thiết lập liên kết giữa hai
thực thể TCP trước khi chúng trao đổi dữ liệu với nhau. Một tiến trình ứng dụng truy nhập vào
dịch vụ của giao thưc TCP thông qua một cổng (Port) của TCP. Số hiệu cổng TCP được thể hiện
-

-

bởi 2 bytes (16 bit).
Một cổng TCP kết hợp với địa chị IP tạo thành một đầu nối TCP/IP (Socket) duy nhất trong liên
mạng. Dịch vụ TCP được cung cấp nhờ một liên kết logic giữa các cặp nối TCP/IP.
Một đầu nối TCP/IP có thể tham gia nhiều liên kết với các đầu nối TCP/IP ở cách xa nhau. Trước
khi truyền dữ liệu giữa hai trạm cần phải thiết lập một liên kết TCP giữa chúng và khi không còn
nhu cầu truyền dữ liệu thì kết nối đó sẽ được giải phóng.
Các thực thể của tầng trên sử dụng giao thức TCP thông qua các hàm gọi (Function calls) trong
đó có các hàm yêu cầu để yêu cầu, để trả lời. Trong mỗi hàm còn có các tham số dành cho việc
trao đổi dữ liệu.

2.2.3. Giao thức UDP(User Datagram Protocol)
UDP là giao thức không kết nối (connectionless) được sử dụng thay thế cho TCP ở trên IP theo
yêu cầu của từng ứng dụng. Khác với TCP , UDP không có các chức năng thiết lập và kết thúc
liên kết. Tương tụ như IP, nó cũng không cung cấp cơ chế báo nhận (Acknowledgment), không

sắp xếp tuần tự các gói tin và có thể dẫn đến tình trạng mất hoặc trùng dữ liệu mà không có cơ
chế thông báo lỗi cho người gửi. Qua đó ta thấy UDP cung cấp các dịch vụ không tin cậy như
trong TCP.
UDP cũng cung cấp cơ chế gán và quản lý các số hiệu cổng để định danh duy nhất cho các ứng
dụng chạy trên một trạm mạng. Do ít chức năng phức tạp nên UDP thường có xu thế hoạt động
nhanh hơn so với TCP. Nó thường được dùng cho các ứng dụng không đòi hỏi độ tin cậy cao
trong vận chuyển nhưng cần tốc độ xử lý nhanh.
2.2.4. Các kiểu tấn công giao thức TCP
2.2.4.1. Nguy cơ ATBM với TCP (Tính sẵn sàng)
Tấn công Dos- SYN Flooding
- Kẻ tấn công gửi hoàng loạt gói SYN với địa chỉ nguồn là các IP giả
- Server gửi lại SYN/ACK, chuẩn bị bộ đệm (RAM ) để trao đổi dữ liệu, chờ ACK trông thời gian
time-out.
 Tấn công thành công nếu thời gian time-out làm cạn kiệt RAM của máy chủ vật lý

Hình 9 : Tấn công DoS - SYN Flooding
20


 Vị trí giả danh IP trong hệ thống bị tấn công được che đậy, vì các địa chỉ nguồn của các
gói tin SYN đều không rõ ràng. Khi gói tin đến hệ thống máy chủ nạn nhân ,không có
cách gì để xác địn ra nguồn gửi.

2.2.4.2. Tấn công can thiệp vào kết nối TCP
Tấn công can thiệp vào kết nối TCP thường là tấn công từ chối dịch vụ (Dos) cụ thể là tấn công
FYN flood

Tấn công dos dùng kỹ thuật SYN flood.

Hình 10 : Quá trình tấn công dos dùng kỹ thuật SYN flood

Do TCP là thủ tục tin cậy trong việc giao nhận (end-to-end ) nên trong lần bắt thứ hai, server gửi
các gói tin SYN/ACK trả lời lại client mà không nhận lại được hồi âm của client để thực hiện kết
nối thì nó vẫn bảo lưu nguồn tài nguyên của kết nối đó và lập lại việc gửi gói tin SYN/ACK cho
client đến khi nào nhận được hồi đáp của máy client.Các hacker lợi dụng điểm này để làm cho
client không hồi đáp cho server. Nếu quá trình đó kéo dài, server 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.
Thông thường để giả định địa chỉ IP gói tin, các hacker có thể dùng Raw Sockets (không phải gói
tin TCP hay UDP) để làm giả mạo hay ghi đè giả lên IP gốc của gói tin. Khi một gói tin SYN với
IP giả mạo được gửi đến server , nó cũng như bao gói tin khác, vẫn hợp lệ đối với server và
server sẽ cung cấp vùng tài nguyên cho dường truyền này, đông thời ghi nhận toàn bộ thông tin
và gửi gói SYN/ACK ngược lại cho Client.Vì địa chỉ IP của client là giả mạo nên sẽ không có
client nào nhận được SYN/ACK packet này để hồi đáp cho máy chủ. Sau một thời gian không
nhận được gói tin ACK từ client , server nghĩ rằng gói tin bị thất lạc tiếp tục gửi tiếp SYN/ACK,
cứ như thế các kết nối tiếp tục mở.

21


Hình 11 : Qúa trình tấn công SYN flood attack.
Nếu kẻ tấn công tiếp tục gửi nhiều gói tin SYN đến server thì cuối cùng server sẽ không thể tiếp
nhận thêm kết nối nào nữa, dù nó có hợp lệ. Việc không thể phục vụ đồng nghĩa với xảy ra nhiều
tổn thất do ngưng trệ hoạt động đặc biệt là trong các giao dịch thương mại điện tử trực tuyến.

2.2.4.3. RST Injection
RST injection là một thủ thuật để ngăn chặn các kết nối không mong muốn. Tuy nhiên các hacker
có thể lợi dụng điều này để phá vỡ các kết nối TCP mà chúng muốn.

Hình 12 : Lợi dụng RST Injection

22



-

Trong trường hợp trên, các bit thiết lại TCP đã được gửi bởi một máy khách (client) là một thiết bị
kết nối đầu cuối. Nó có thể là một máy tính thứ 3 để giám sát các gói tin TCP trên kết nối và sau đó
gửi một “giả mạo “ gói có chứa một thiết lập TCP tới một hoặc cả hai thiết bị đầu cuối.
- Hacker sẽ gửi trước các tiêu đề trong gói tin giả mạo phải chỉ ra là nó đến từ một thiết bị đầu cuối,
không phải giả mạo cho client . Thông tin này bao gồm gồm địa chỉ IP và số cổng thiết bị đầu cuối .
Mọi lĩnh vực trong tiêu đề IP và TCP phải được thiết lập để một giá trị giả mạo sthuyết phục cho giả
thiết lập lại để đánh lừa các thiết bị đầu cuối vào đóng kết nối TCP.
- Khi máy chủ (server ) gửi lại gói tin thật sự đến cho client thì client sẽ từ chối các dữ liệu được gửi
từ server thật sự .
2.2.4.4. Data Injection

-

-

-

Hình 13 : Tấn công Data Injection.
Trong trường hợp trên, các bit thiết lại TCP đã được gửi bởi một máy tính là một thiết bị
kết nối đầu cuối. Nó có thể là một máy tính thứ 3 để giám sát các gói tin TCP trên kết nối
và sau đó gửi một “giả mạo “ gói có chứa một thiết lập TCP tới một hoặc cả hai thiết bị
đầu cuối.
Attacker chèn dữ liệu giả đến từ một thiết bị đầu cuối, không phải giả mạo . Thông tin
này bao gồm địa chỉ IP và số cổng thiết bị đầu cuối đến cho client. Và client không biết
đó là dữ liệu giả vẫn tiếp tục quá trình xử lý dữ liệu giả.
Server sau khi phân tích gửi trả lại thông tin cho client nhưng đến sau và client đã nhận

và xử lý một số liệu khác nên nó đã từ chối gói tin vì seq.Number không phù hợp.

2.2.4.5.Tấn công kết nối TCP trong trường hợp không biết thông tin về kết nối
23


- Nhận xét: trong các kịch bản tấn công trên, kẻ tấn công cần phải theo dõi các thông số trên kết nối
(cổng, sequence Number,…)
- Trong trường hợp không có các thông số này, kẻ tấn công vẫn có thể thực hiện bằng cách đoán
nhận.
- Hoặc đơn giản là giả mạo kết nối TCP.
2.2.4.6. Tấn công giả mạo kết nối TCP
Sơ đồ tấn công giả mạo kết nối TCP

Hình 14 : Giả mạo kết nối TCP
+ Attacker sẽ giả mạo client gửi thiết bị kết nối đầu cuối đến cho server. Server sẽ nhận xử lý và gửi
lại một gói tin bao gồm các địa chỉ nguồn và đích cho client giả mạo và attacker sẽ không biết gì về
gói tin này .
+ Attacker phải hoàn thành được gia đoạn bắt tay b3 bước ở trên. Sau đó attacker sẽ lấy thông tin
mà server gửi cho gửi lại gói tin đó cho server để dánh lừa server và nó tiếp tục quá trình gửi lại
lần nữa nhưng có kèm theo một gói dữ liệu giả.
2.2.5.Các phương pháp phòng tránh.
Thỏa mãn tiêu chuẩn của Secure Socket Layer ( SSL): giao thức an toàn tầng giao vận.
SSL là một giao thức khách/chủ (client/ server) cung cấp dịch vụ bảo mật cơ bản trong việc kết
nối ngang hàng sau đây:



-


Các dịch vụ phải xác thực.
Các dịch vụ kết nối bảo mật.
Các dịch vụ kết nối toàn vẹn.
SLL cung cấp dịch vụ kết nối an ninh có ba đặc tính cơ bản.
Kết nối bí mật: Mã hóa được sử dụng sau khi thiết lập kết nối để xác định một khóa bí mật. Mã hóa

-

đối xứng được sử dụng để mã hóa dữ liệu (như DES,3DES, RC4).
Định danh các điểm kết nối có thể được sử dụng bằng cách sử dụng mã hóa bất đối xứng hoặc khóa
công khai (ví dụ như Rivest-Shamir-Adleman-RSA, Digital Signature Standard-DSS).
24


-

Kết nối đáng tin cậy. Thông điệp vận chuyển thông báo bao gồm kiểm tra tính thông điệptoàn vẹn

-

thông điệp sử dụng một MAC, hàm băm an toàn được sử dụng để tính toán MAC như SHA, MD5.
SSL có hai chức năng chính:
Thứ nhất là thiết lập một kênh kết nối an toàn giữa các điểm giao tiếp (ví dụ, xác thực và bảo mật).
Thứ hai là SSL sử dụng kết nối này để truyền tải dữ liệu của giao thức tầng cao hơn từ nơi gửi đến
nơi nhận một cách an toàn. Do đó nó chia dữ liệu thành các phần nhỏ hơn và xử lý từng phần chia
nhỏ đó, mỗi phần có thể được nén, xác thực với một MAC, mã hóa, thêm vào trước với một tiêu đề
và được truyềnđến nơi nhận. Mỗi phần dữ liệu được xử lý và chuẩn bị theo cách này gọi là một bản

ghi SSL.
An toàn và bảo mật các giao thức mạng ở tầng internet (internet layer)

2.3.1. Giao thức liên mạng IP (Internet Protocol)
2.3.

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



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 với.
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.
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.
Địa chỉ IP được chia thành 4 số giới hạn từ 0 - 255. Mỗi số được lưu bởi 1 byte - > IP có kích
thước là 4byte, được chia thành các lớp địa chỉ. Có 3 lớp là A, B, và C. Nếu ở lớp A, ta sẽ có thể
có 16 triệu địa chỉ, ở lớp B có 65536 địa chỉ.
Trên Internet thì địa chỉ IP của mỗi người là duy nhất và nó sẽ đại diện cho chính người đó, địa
chỉ IP được sử dụng bởi các máy tính khác nhau để nhận biết các máy tính kết nối giữa chúng.
Đây là lí do tại sao bạn lại bị IRC cấm, và là cách người ta tìm ra IP của bạn. Địa chỉ IP có thể dễ
dàng phát hiện ra, người ta có thể lấy được qua các cách sau:
+ Bạn lướt qua một trang web, IP của bạn bị ghi lại
+ Trên IRC, bất kì ai cũng có thể có IP của bạn
+ Trên ICQ, mọi người có thể biết IP của bạn, thậm chí bạn chọn ``do not show IP`` người ta vẫn
lấy được nó
+ Nếu bạn kết nối với một ai đó, họ có thế gõ ``netstat –n ``, và biết được ai đang kết nối đên họ
25


×