Tải bản đầy đủ (.docx) (71 trang)

Kỹ thuật VPN sử dụng IPSEC

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 (2.19 MB, 71 trang )

Học viện kỹ thuật Mật Mã

Thực tập cơ sở chuyên ngành
MỤC LỤC

MỤC LỤC.............................................................................................................................1
DANH MỤC CÁC TỪ VIẾT TẮT......................................................................................4
DANH MỤC HÌNH VẼ.......................................................................................................5
LỜI NÓI ĐẦU......................................................................................................................6
CHƯƠNG I: TỔNG QUAN VỀ VPN và IPSEC...............................................................6
1.1. Tổng quan về VPN....................................................................................................6
1.1.1. Khái niệm VPN...................................................................................................6
1.1.2. Phân loại VPN.....................................................................................................7
1.1.2.1. VPN truy cập trừ xa (Remote Access).......................................................7
1.1.2.2. VPN điểm nối điểm (Site to Site)...............................................................8
1.1.3. Các giao thức VPN..............................................................................................9
1.1.3.1. L2TP (Layer 2 Tunneling Protocol)...........................................................9
1.1.3.2. GRE (Generic Routing Encapsulation)....................................................10
1.1.3.3. IPSec (Internet Protocol Security)............................................................10
1.1.4. Ưu điểm và nhược điểm của VPN....................................................................11
1.1.4.1. Ưu điểm....................................................................................................11
1.1.4.2. Nhược điểm..............................................................................................12
1.2. Tìm hiểu về công nghệ bảo mật IPSec....................................................................12
1.2.1. Khái niệm IPSec................................................................................................12
1.2.2. Tính năng của IPSec..........................................................................................13
1.2.3. Các giao thức của IPSec....................................................................................14
1.2.3.1. Giao thức xác thực tiêu đề (Authentication Header – AH)......................14
1.2.3.2. Giao thức đóng gói tải an toàn (Encapsulating Security Payload ).........15
1.2.3.3. Giao thức trao đổi khóa IKE....................................................................16
1.2.4. Các chế độ hoạt động của IPSec.......................................................................17
1.2.4.1. Chế độ Transport......................................................................................17


1.2.4.2. Chế độ Tunnel.........................................................................................18

Nhóm sinh viên AT9A
Page 1


Học viện kỹ thuật Mật Mã

Thực tập cơ sở chuyên ngành

CHƯƠNG II: NGHIÊN CỨU VỀ BỘ GIAO THỨC TRAO ĐỔI KHÓA TRÊN MẠNG
IKE TRONG IPSEC..........................................................................................................18
2.1. Giới thiệu về giao thức IKE....................................................................................18
2.1.1. Giới thiệu về giao thức trao đổi khóa IKE........................................................18
2.1.1.1. Giới thiệu tổng quan về IKE....................................................................18
2.1.1.2. Các đặc trưng của IKE.............................................................................20
2.1.1.3. Một số định nghĩa, ký hiệu được dùng trong IKE....................................21
2.1.2. Một số đánh giá về giao thức IKE.....................................................................23
2.2. Nguyên lý hoạt động của giao thức trao đổi khóa IKE...........................................25
2.2.1. Pha thứ 1 của IKE.............................................................................................25
2.2.1.1. IKE trong pha I được xác thực bằng chữ ký số........................................27
2.2.1.2. IKE trong pha I được xác thực bằng mã hóa khóa công khai..................28
2.2.1.3. IKE trong pha I được xác thực bằng một dạng khác của mã hóa khóa công khai
................................................................................................................30
2.2.1.4. IKE trong pha I được xác thực bằng khóa chia sẻ trước..........................32
2.2.2. Pha thứ 2 của IKE.............................................................................................33
2.2.3. Các chế độ của IKE...........................................................................................34
2.2.3.1. Chế độ chính (Main mode).......................................................................34
2.2.3.2. Chế độ tích cực (Aggreesive mode).........................................................35
2.2.3.3. Chế độ nhanh (Quick mode)....................................................................36

2.2.3.4. Chế độ nhóm mới (New group mode)......................................................37
CHƯƠNG III: NGHIÊN CỨU VỀ OPENSWAN VÀ ĐỀ XUẤT ỨNG DỤNG TRONG
CÁC SẢN PHẨM BẢO MẬT THÔNG TIN...................................................................38
3.1. Giới thiệu về OpenSwan.........................................................................................38
3.1.1. Giới thiệu về Pluto.............................................................................................40
3.1.2. Giới thiệu về KLIPS..........................................................................................43
3.2. Ứng dụng của OpenSwan........................................................................................44
3.3. Cài đặt cấu hình OpenSwan....................................................................................45
3.3.1. Mô hình cài đặt..................................................................................................45

Nhóm sinh viên AT9A
Page 2


Học viện kỹ thuật Mật Mã

Thực tập cơ sở chuyên ngành

3.3.2. Cài đặt OpenSwan.............................................................................................46
3.3.3. Cấu hình OpenSwan..........................................................................................47
3.3.4. Cấu hình Router định tuyến giữa 2 máy OpenSwan.........................................54
3.4. Sử dụng OpenSwan và phân tích quá trình hoạt động của IKE..............................56
3.4.1. Sử dụng OpenSwan...........................................................................................56
3.4.2. Phân tích quá trình hoạt động của IKE..............................................................61
3.5. Đề xuất giải pháp ứng dụng trong ngành................................................................70
KẾT LUẬN.........................................................................................................................71
TÀI LIỆU THAM KHẢO.................................................................................................71

Nhóm sinh viên AT9A
Page 3



Học viện kỹ thuật Mật Mã

Thực tập cơ sở chuyên ngành

DANH MỤC CÁC TỪ VIẾT TẮT

Từ viết tắt

Nghĩa của từ viết tắt

AH

Authentication Header

ARP

Address Resolution Protocol

CERT

Computer Emergency Response Team

DNS

Domain Name System

DDoS


Distributed Denial of Service

DoS

Denial of Service

ESP

Encapsulating Security Payload

IETF

Internet Engineering Task Force

IKE

Internet Key Exchange

IPSec

Internet Protocol Security

ISAKMP

Internet Security Association and Key Management Protocol

MAC

Media Access Control


MTU

Maximum Transmit Unit

PFS

Perfect Forward Secrecy

SA

Security Assocciation

SAD

Security Assocciation Database

SQL

Stucted Query Language

TCP/IP

Transmission Control Protocol / Internet Protocol

UDP

User Datagram Protocol

DANH SÁCH HÌNH VẼ


Nhóm sinh viên AT9A
Page 4


Học viện kỹ thuật Mật Mã

Thực tập cơ sở chuyên ngành

Hình 1.1: Mô hình mạng VPN...............................................................................................6
Hình 1.2.1: Mô hình VPN Remote Access..........................................................................14
Hình 1.2.2: Mô hình VPN Site – to – Site………………………………………………....15
Hình 2.1: Các pha của giao thức trao đổi khóa IKE.............................................................30
Hình 2.2: Sơ đồ trao đổi khóa Diffie – Hellman..................................................................34
Hình 2.3: Trao đổi thông điệp trong chế độ chính (Main mode).........................................46
Hình 2.4: Trao đổi thông điệp trong chế độ tích cực (Aggressive mode)............................47
Hình 3.1: Sơ đồ hoạt động của các modul trong OpenSwan................................................52
Hình 3.2: Cơ chế hoạt động của Pluto..................................................................................54
Hình 3.3: Cơ chế hoạt động của KLIPS...............................................................................55
Hình 3.4: Mô hình cài đặt hệ thống dùng OpenSwan..........................................................56
Hình 3.5: Kết quả cài đặt OpenSwan...................................................................................57
Hình 3.6: Khóa xác thực của máy OpenSwan1....................................................................59
Hình 3.7: Khóa xác thực của máy OpenSwan2....................................................................59
Hình 3.8: Kết nối thành công 2 máy OpenSwan1 và OpenSwan2.......................................67
Hình 3.9: Khởi động Ipsec trên máy OpenSwan1................................................................68
Hình 3.10: Khởi động Ipsec trên máy OpenSwan2..............................................................69
Hình 3.11: 2 máy Client không thể kết nối khi Ipsec chưa hoạt động.................................69
Hình 3.12: 2 máy Client kết nối được khi Ipsec hoạt động..................................................70
Hình 3.13: Gói tin thu được khi Ipsec chưa hoạt động........................................................70
Hình 3.14: Gói tin thu được khi Ipsec hoạt động.................................................................71
Hình 3.15: Các gói tin thu được khi 2 máy OpenSwan hoạt động......................................71


LỜI NÓI ĐẦU

Nhóm sinh viên AT9A
Page 5


Học viện kỹ thuật Mật Mã

Thực tập cơ sở chuyên ngành

Khoa học công nghệ ngày càng phát triển mang đến nhiều ứng dụng thiết thực, góp phần
nâng cao và đảm bảo chất lượng cuộc sống. Đặc biệt là công nghệ thông tin, với những bước tiến
không ngừng nghỉ của mình, công nghệ thông tin đã đóng vai trò tối quan trọng, không thể thay
thế trong mọi mặt của đời sống: từ kinh tế, chính trị, xã hội đến khoa học, quân sự …
Kể từ khi mạng máy tính ra đời, nhu cầu trao đổi thông tin trên mạng ngày càng tăng, các
dịch vụ mạng phát triển không ngừng. Càng ngày càng nhiều thông tin quan trọng được trao đổi
trên mạng, do đó vấn đề an toàn bảo mật thông tin trên mạng máy tính trở nên cần thiết hơn bao
giờ hết.
Một trong những cách để đảm bảo bí mật thông tin trên mạng là sử dụng mật mã. Mật mã
khóa bí mật và mật mã khóa công khai từ lâu đã được ứng dụng vào việc bảo mật thông tin. Tuy
nhiên vấn đề đặt ra ở đây là việc thiết lập, phân phối và quản lý khóa như thế nào khi mà kỹ thuật
phân phối khóa thủ công không thể đáp ứng được yêu cầu.
Xuất phát từ lý do trên, em đã chọn đề tài “Kỹ thuật VPN sử dụng IPSec”. Nội dung đồ
án gồm có 3 chương:
CHƯƠNG I: Tổng quan về VPN và IPSec

1.1.
Tổng quan về VPN.
1.1.1. Khái niệm VPN.

Mạng riêng ảo VPN (Virtual Private Network) là công nghệ cung cấp một phương thức
giao tiếp an toàn giữa các mạng riêng dựa vào kỹ thuật gọi là tunneling để tạo ra một mạng riêng
trên nền Internet. Về bản chất đây là quá trình đặt toàn bộ gói tin vào trong một lớp header chứa
thông tin định tuyến có thể truyền qua mạng trung gian. VPN được hiểu đơn giản như là sự mở
rộng của một mạng riêng (private network) thông qua các mạng công cộng. Về căn bản, mỗi
VPN là một mạng riêng lẻ sử dụng một mạng chung (thường là internet) để kết nối với các site
(các mạng riêng lẻ khác) hay nhiều người sử dụng ở xa. Thay cho việc sử dụng một kết nối thực,
chuyên dụng như đường leased line, mỗi VPN sử dụng các kết nối ảo được định tuyến qua
Internet để kết nối các mạng riêng lẻ với nhau.

Nhóm sinh viên AT9A
Page 6


Học viện kỹ thuật Mật Mã

Thực tập cơ sở chuyên ngành

Hình 1.1 Mô hình mạng VPN

1.1.2. Phân loại VPN.
1.1.2.1. VPN truy cập trừ xa (Remote Access).
Remote Access, hay còn gọi là virtual private dial-up network (VPDN) cung cấp các truy
cập từ xa đến một Intranet hay Extranet dựa trên cấu trúc hạ tầng chia sẻ Access VPN, đây là kết
nối user to LAN dành cho nhân viên muốn kết nối từ xa đến mạng cục bộ công ty bằng dial-up.
Khi công ty muốn thiết lập Remote Access trên qui mô rộng, có thể thuê một ESP (Enterprise
Serive Provider) và ESP này sẽ thiết lập một NAS (Network Access Server), người dùng từ xa sẽ
dùng một phần mềm VPN đầu cuối để kết nối đến mạng của công ty qua NAS.

Nhóm sinh viên AT9A

Page 7


Học viện kỹ thuật Mật Mã

Thực tập cơ sở chuyên ngành

Hình 1.2.1 Mô hình VPN Remote Access

1.1.2.2. VPN điểm nối điểm (Site to Site).
Đây là cách kết nối nhiều văn phòng trụ sở xa nhau thông qua các thiết bị chuyên dụng và
một đường truyền mã hóa ở qui mô lớn hoạt động trên nền Internet. VPN Site to Site gồm 2 loại:

• VPN nội bộ (Intranet VPN)
Đây là kiểu kết nối Site to Site VPN khi các chi nhánh của một công ty có riêng
một Server VPN và kết nối lại với nhau thông qua Internet.

• VPN mở rộng (Extranet VPN)
Khi một công ty có quan hệ mật thiết với công ty khác họ có thể xây dựng một
Extranet VPN nhằm kết nối LAN to LAN để cho phép các công ty này cùng làm việc trao đổi
trong một môi trường chia sẻ riêng biệt.

Nhóm sinh viên AT9A
Page 8


Học viện kỹ thuật Mật Mã

Thực tập cơ sở chuyên ngành


Hình 1.2.2 Mô hình VPN Site – to - Site

1.1.3. Các giao thức VPN.
1.1.3.1. L2TP (Layer 2 Tunneling Protocol).
Trước khi xuất hiện chuẩn L2TP (tháng 8 năm 1999), Cisco sử dụng L2F (Layer 2
Forwarding) như là giao thức chuẩn để tạo kết nối VPN. L2TP ra đời sau với những tính năng
được tích hợp từ L2F.
L2TP là dạng kết hợp của Cisco L2F và Microsoft Point-to-Point Tunneling Protocol
(PPTP). Microsoft hỗ trợ chuẩn PPTP và L2TP trong các phiên bản WindowNT và Window
2000.
L2TP được sử dụng để tạo kết nối độc lập, đa giao thức dùng cho mạng riêng ảo quay số
(Virtual Private Dail-up Network). L2TP cho phép người dùng có thể kết nối thông qua các chính
sách bảo mật của công ty để tạo VPN.
L2TP không cung cấp mã hóa.

Nhóm sinh viên AT9A
Page 9


Học viện kỹ thuật Mật Mã

Thực tập cơ sở chuyên ngành

1.1.3.2. GRE (Generic Routing Encapsulation).
Là giao thức được phát triển đầu tiên bởi Cisco, với mục đích tạo ra kênh truyển ảo
(tunel) để mang các giao thức lớp 3 thông qua mạng IP. Để tạo ra kênh truyền, GRE cũng thực
hiện việc đóng gói gói tin. Trong quá trình đóng gói, GRE sẽ thêm các header mới vào gói tin, và
header mới này cung cấp các thông số cần thiết dùng để truyền các gói tin thông qua môi trường
mạng trung gian.
Bằng việc kết nối nhiều mạng con với các giao thức khác nhau trong môi trường có một

giao thức chính. GRE tunneling cho phép các giao thức khác có thể thuận lợi trong việc định
tuyến cho gói IP.

1.1.3.3. IPSec (Internet Protocol Security).
IPSec là sự lựa chọn cho việc bảo mật VPN. IPSec là một khung bao gồm bảo mật dữ liệu
(data confidentiality), tính toàn vẹn của dữ liệu (integrity) và việc chứng thực dữ liệu.
IPSec cung cấp dịch vụ bảo mật cho phép thỏa thuận các giao thức và thuật toán mã hóa
trên nền chính sách cục bộ và sinh ra các khóa bảo mật mã hóa và chứng thực được sử dụng trong
IPSec.

Nhóm sinh viên AT9A
Page 10


Học viện kỹ thuật Mật Mã

Thực tập cơ sở chuyên ngành

1.1.4. Ưu điểm và nhược điểm của VPN.
1.1.4.1. Ưu điểm.
VPN mang lại lợi ích thực sự và tức thời cho công ty. Có thể dùng VPN để đơn giản hóa
việc truy cập đối với các nhân viên và người dùng lưu động, mở rộng Intranet đến từng văn
phòng chi nhánh, thậm chí triển khai Extranet đến tận khách hàng và các đối tác chủ chốt và điều
quan trọng là những công việc trên đều có chi phí thấp hơn nhiều so với việc mua thiết bị và
đường dây cho mạng WAN riêng.

• Giảm chi phí thường xuyên: VPN cho phép tiết kiệm 60% chi phí so với việc thuê
đường truyền và giảm đáng kể tiền cước gọi đến của các nhân viên làm việc ở xa.

• Giảm chi phí đầu tư: Sẽ không tốn phí đầu tư cho máy chủ, bộ định tuyến cho mạng

đường trục và các bộ chuyển mạch phục vụ cho việc truy cập bởi các thiết bị này do
các nhà cung cấp dịch vụ quản lý; công ty cũng không phải mua, thiết lập cấu hình
hoặc quản lý các modem phức tạp.

• Truy cập mọi lúc, mọi nơi: Các client của VPN cũng có thể truy cập tất cả các dịch vụ
như web, e-mail, FTP… cũng như các ứng dụng thiết yếu khác mà không cần quan tâm
đến những phần phức tạp bên dưới.

• Khả năng mở rộng: Do VPN sử dụng môi trường mạng công cộng, nên các văn phòng,
nhóm và các đối tượng di động có thể trở nên một phần của mạng VPN ở bất kỳ nơi
nào mà ISP cung cấp một điểm kết nối.

Nhóm sinh viên AT9A
Page 11


Học viện kỹ thuật Mật Mã

Thực tập cơ sở chuyên ngành

1.1.4.2. Nhược điểm.
Với những ưu điểm như trên thì VPN đang là sự lựa chọn số một cho các doanh nghiệp.
Tuy nhiên VPN không phải không có nhược điểm, mặc dù không ngừng được cải tiến, nâng cấp
và hỗ trợ nhiều công cụ mới tăng tính bảo mật nhưng dường như đó vẫn là một vấn đề khá lớn
của VPN.
Vì sao vấn đề bảo mật lại lớn như vậy đối với VPN, một lý do là VPN đưa các thông tin
có tính riêng tư và quan trọng qua một mạng chung có độ bảo mật kém (thường là Internet). Lý
do bị tấn công của VPN thì có vài lý do sau: sự tranh đua giữa các công ty, sự tham lam muốn
chiếm nguồn thông tin, sự trả thù…
QoS (Quality of Service) cũng là một vấn đề đặt ra đối với VPN. Hai thông số về QoS

cho mạng là độ trễ và thông lượng, do VPN chạy trên một mạng chung Internet vì vậy việc quản
lý chất lượng cho từng dịch vụ là rất khó khăn.

1.2.

Tìm hiểu giao thức IPSec.

Như ta đã biết vấn đề bảo mật trong quá trình truyền tải các dữ liệu khác nhau trong mạng
VPN là một vấn đề rất quan trọng và nó đặc biệt quan trọng khi các dữ liệu của chúng ta được
truyền qua một mạng chia sẻ rộng lớn và không tin cậy như mạng Internet.
Vấn đề đặt ra là làm thế nào để bảo mật an toàn cho các dữ liệu trong quá trình truyền qua
mạng? Làm thế nào có thể bảo vệ chống lại các cuộc tấn công trong quá trình truyền tải các dữ
liệu đó? Giao thức IPSec được thiết kế để làm các nhiệm vụ trên.

1.2.1. Khái niệm IPSec.
Internet Protocol Security hay còn gọi IPSec là tập hợp các chuẩn, các nguyên tắc đã được
định nghĩa nhằm kiểm tra, xác thực và mã hóa gói dữ liệu IP để cung cấp cho kênh truyền dẫn
mạng bảo mật. Việc xác thực đảm bảo rằng các gói tin được gửi đi từ người gửi đích thực và
không bị thay đổi trên đường truyền.
Internet Protocol Security (IPSec) được phát triển bởi nhóm chuyên trách về kỹ thuật
Internet- Internet Engineering Task Force (IETF). Mục đích chính của việc phát triển IPSec là
cung cấp một cơ cấu bảo mật ở tầng 3 (Network layer) của mô hình OSI, như hình vẽ:

Nhóm sinh viên AT9A
Page 12


Học viện kỹ thuật Mật Mã

Thực tập cơ sở chuyên ngành


Vị trí của IPSec trong mô hình OSI

1.2.2. Tính năng của IPSec.
- Tính xác thực và toàn vẹn dữ liệu (Authentication and data integrity). IPSec cung cấp
một cơ chế mạnh mẽ để xác thực người gửi và kiểm chứng bất kỳ sự sửa đổi không được bảo vệ
trước đó của nội dung gói dữ liệu bởi người nhận. Các giao thức IPSec đưa ra khả năng bảo vệ
mạnh để chống lại các dạng tấn công giả mạo và từ chối dịch vụ.
- Tính bí mật (Confidentiality): Các giao thức IPSec mã hóa dữ liệu bằng cách sử dụng kỹ
thuật mã hóa tiêu chuẩn, giúp ngăn cản người chưa chứng thực truy cập dữ liệu trên đường đi của
nó. IPSec cũng dùng cơ chế tạo hầm để ẩn địa chỉ IP của nút nguồn (người gửi) và nút đích
(người nhận) từ những kẻ tấn công.
- Quản lý khóa (Key management). IPSec dùng một giao thức thứ ba, Internet Key
Exchange (IKE), để thỏa thuận các giao thức bảo mật và các thuật toán mã hóa trước và trong
suốt phiên giao dịch. Một phần quan trọng nữa là IPSec phân phối và kiểm tra các khóa mã và
cập nhật những khóa đó khi được yêu cầu.
Hai tính năng đầu tiên của bộ IPSec là xác thực, toàn vẹn dữ liệu (authentication and data
integrity), và bí mật (confidentiality), được cung cấp bởi hai giao thức chính của trong bộ giao
thức IPSec. Những giao thức này bao gồm giao thức xác thực tiêu đề (AH) và giao thức đóng gói
tải an toàn (ESP).
Tính năng thứ ba, quản lý khóa (key management), nằm trong bộ giao thức khác, được bộ
IPSec chấp nhận đó là giao thức IKE.

Nhóm sinh viên AT9A
Page 13


Học viện kỹ thuật Mật Mã

Thực tập cơ sở chuyên ngành


1.2.3. Các giao thức của IPSec.
1.2.3.1. Giao thức xác thực tiêu đề (Authentication Header – AH).
Giao thức xác thực tiêu đề được công bố bởi IETF(Internet Engineering Task Force). AH
sử dụng các hàm băm nhằm đảm bảo tính toàn vẹn dữ liệu trên đường truyền bằng cách thực hiện
thuật toán băm cả phần đầu và phần thân của gói IP nhưng không áp dụng cho các thông tin sẽ
thay đổi trên đường truyền như số đếm của mỗi nút mạng. Điều này dẫn đến một chức năng nữa
của AH là khả năng chống lại việc giả mạo (đột nhập vào giữa đường truyền của các gói tin và
tạo ra các gói tin giả) khi sử dụng các số thứ tự tăng dần gắn vào mỗi gói tin. Tuy nhiên AH
không cung cấp khả năng mã hóa dữ liệu.
Giao thức xác thực tiêu đề thêm một tiêu đề vào gói IP. Như tên gọi của nó, tiêu đề này
phục vụ cho việc xác thực gói dữ liệu IP gốc tại người nhận cuối cùng, tiêu đề này giúp nhận biết
bất kỳ sự thay đổi nào về nội dung của gói dữ liệu bởi người dùng không mong muốn khi đang
truyền, tuy nhiên AH không đảm bảo tính tin cậy. Nó chỉ thêm một tiêu đề vào gói IP, phần còn
lại của nội dung gói dữ liệu được để mặc. Hơn nữa, AH không bảo vệ bất kỳ trường nào trong
tiêu đề IP vì một trong số đó có thể thay đổi trong quá trình truyền, chỉ các trường nào không
thay đổi trong quá trình truyền là được bảo vệ bởi AH. Địa chỉ IP nguồn và địa chỉ IP đích là
những trường như vậy và vì thế được bảo vệ bởi AH.
AH có thể sử dụng ở hai chế độ: chế độ truyền tải (Transport) và chế độ đường hầm
(Tunnel).

• Chế độ Transport: Chế độ Transport cho phép bảo vệ dữ các giao thức lớp trên cùng với
một số trường trong IP Header. Trong chế độ này, AH được chèn vào sau IP Header và trước một
giao thức lớp trên như lớp TCP hoặc UDP. Chế độ Transport thường được sử dụng bởi các máy
trạm chứ không được sử dụng bởi Gateway. Ưu điểm của chế độ này là đỡ tốn kém chi phí xử lý
nhưng có khuyết điểm là các trường có thể thay đổi không được xác thực.
IP Header

Payload


Gói tin IP trước khi gắn AH
IP Header

AH Header

Payload

Gói tin IP sau khi gắn AH trong chế độ Transport

• Chế độ Tunnel: Trong chế độ Tunnel, một gói IP khác được thiết lập dựa trên các gói IP
cũ. Header của gói IP cũ (bên trong) mang địa chỉ nguồn và đích cuối cùng, còn các Header của
gói IP mới (bên ngoài) mang địa chỉ để định tuyến trên Internet. Trong chế độ này, AH bảo vệ

Nhóm sinh viên AT9A
Page 14


Học viện kỹ thuật Mật Mã

Thực tập cơ sở chuyên ngành

toàn bộ gói tin bên trong bao gồm cả Header. Đối với gói tin IP bên ngoài thì vị trí của AH như là
trong chế độ Transport. Ưu điểm của chế độ Tunnel là bảo vệ toàn bộ gói IP và các địa chỉ cá
nhân trong IP Header, tuy nhiên có nhược điểm là tốn chi phí hơn nhiều để xử lý các gói tin.
IP Header

Payload

Gói tin IP trước khi gán AH


New IP Header

AH Header

IP Header

Payload

Gói tin IP sau khi gắn AH trong chế độ Tunnel.

1.2.3.2.

Giao thức đóng gói tải an toàn (Encapsulating Security Payload ).

ESP là một giao thức Internet 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 trong khi truyền. Các thuật toán mã hóa do ESP hỗ trợ bao gồm DES,
DES 56 bits và 3DES, AES, IDEA, Blowfish. Ngoài ra ESP còn cho phép kiểm tra tính toàn vẹn
của gói tin thông qua HMAC MD5 và HMAC SHA.
Giống như tiêu đề AH, tiêu đề ESP được chèn vào giữa tiêu đề IP và nội dung tiếp theo
của gói. Tuy nhiên ESP có nhiệm vụ mã hóa dữ liệu nên nội dung của gói không bị thay đổi.
ESP cũng được sử dụng ở hai chế độ: Transport và Tunnel.

• Chế độ Transport: Chế độ Transport cho phép bảo vệ các giao thức lớp trên nhưng không bảo vệ
IP Header. Các gói tin IP cũ được cắt phần tiêu đề ra, sau đó tiêu đề ESP được đưa vào giữa. ESP
trailer sẽ được đưa vào cuối gói tin, cuối cùng là Authentication Data được đưa thêm vào. Chế độ
Transport không mã hóa cũng không xác thực IP Header, tuy nhiên nó có chi phí thấp được dùng
cho các máy trạm.

Nhóm sinh viên AT9A

Page 15


Học viện kỹ thuật Mật Mã

Thực tập cơ sở chuyên ngành

Gói ESP trong chế độ Transport

• Ở chế độ Tunnel, gói IP mới sẽ được tạo ra và gói IP ban đầu sẽ được coi là khung dữ liệu
(payload) của gói IP. Sau đó các giao thức ESP sẽ được áp dụng để bảo vệ cho gói tin IP.

Gói ESP trong chế độ Tunnel

1.2.3.3. Giao thức trao đổi khóa IKE
IKE là giao thức được xây dựng từ cặp giao thức ISAKMP và OAKLEY mà IPSEC đã sử dụng
để thiết lập các liên kết an toàn, trong đó có chức năng quản lý khóa. ISAKMP (Internet Security
Association and Key Management Protocol) cung cấp một khuôn mẫu (framework) cho việc
quản lý khóa. Nó được coi như một cách thức thỏa thuận và truyền tài liệu khóa. Nó không định
nghĩa một khối dữ liệu tải (payload) mà chỉ xác định chúng là gì và chúng được chuyển di như
thế nào. Giao thức trao đổi khóa OAKLEY dùng thuật toán Diffie – Hellman để thiết lập các

Nhóm sinh viên AT9A
Page 16


Học viện kỹ thuật Mật Mã

Thực tập cơ sở chuyên ngành


khóa phiên. Giải pháp kết hợp giữa ISAKMP với OAKLEY là dùng khuôn mẫu của ISAKMP để
truyền một tập hợp con các trao đổi khóa OAKLEY.

1.2.4. Các chế độ hoạt động của IPSec.
1.2.4.1. Chế độ Transport.
Ở chế độ Transport, gói IP ban đầu sẽ được tách ra và chèn thêm một IPSec header vào
ngay sau IP header (như trong hình dưới). Trong trường hợp sử dụng giao thức ESP, thì một ESP
trailer và dữ liệu xác thực (tuỳ chọn) sẽ được thêm vào cuối của khung dữ liệu (payload) ban đầu.
Nếu gói tin này đã có sẵn các IPSec header thì header mới sẽ được chèn vào trước các IPSec
header đó. Tuy nhiên, trường hợp này rất khó xảy ra, nếu có xảy ra thì nên sử dụng chế độ
Tunnel.

IPSec ở chế độ Transport
Chế độ Transport được sử dụng cho các máy trạm chứ không được sử dụng cho các cổng
truy nhập mạng nội bộ. Nên các cổng truy nhập mạng nội bộ không cần phải hỗ trợ chế độ
Transport.
Ưu điểm của chế độ Transport là hệ thống xử lý sẽ phải chịu gánh nặng ít hơn, vì vậy nó
nhanh hơn. Một nhược điểm của nó là không xác thực các trường dễ thay đổi trong gói IP. Giao
thức ESP ở chế độ Transport không xác thực hay giải mã IP header. Điều này làm cho các gói tin
sai (tấn công giả mạo) có thể vẫn được phân phối cho quá trình xử lý ESP. Một nhược điểm khác
là phải sử dụng địa chỉ của gói IP ban đầu làm thông tin điều khiển để chuyển gói tin đi. Điều này
rất khó thực hiện trong trường hợp sử dụng các địa chỉ IP riêng (cục bộ), không phù hợp khi cần
giấu cấu trúc địa chỉ mạng trong trên mạng công cộng.

Nhóm sinh viên AT9A
Page 17


Học viện kỹ thuật Mật Mã


Thực tập cơ sở chuyên ngành

1.2.4.2. Chế độ Tunnel.
Ở chế độ này, gói IP mới sẽ được tạo ra và gói IP ban đầu sẽ được coi là khung dữ liệu
(payload) của gói IP. Sau đó các giao thức IPSec (AH hoặc ESP) sẽ được áp dụng để xác thực và
bảo mật cho gói IP mới này. Tuy nhiên, tiêu đề IP mới vẫn không được bảo vệ (như ở hình dưới):

IPSec ở chế độ Tunnel
Chế độ Tunnel được sử dụng trong trường hợp một trong 2 đầu SA là một cổng truy nhập.
Do đó, đây là chế độ bắt buộc khi thực hiện IPSec giữa 2 cổng truy nhập chuyển tiếp dữ liệu một
cách an toàn giữa các máy hoặc các mạng được bảo vệ.
Ưu điểm của chế độ Tunnel là nó bảo vệ tất cả các gói IP đã được đóng gói và khả năng
sử dụng các địa chỉ riêng. Tuy nhiên gánh nặng xử lý mà hệ thống phải chịu sẽ lớn hơn chế độ
Transport.
CHƯƠNG II: NGHIÊN CỨU VỀ BỘ GIAO THỨC TRAO ĐỔI KHÓA TRÊN MẠNG
IKE TRONG IPSEC.
2.1. GIỚI THIỆU VỀ GIAO THỨC IKE.
2.1.1. Giới thiệu về giao thức trao đổi khóa IKE.
2.1.1.1. Giới thiệu tổng quan về IKE.
Các giao thức nguyên thủy TCP/IP không bao gồm các đặc tính bảo mật vốn có. Trong
giai đoạn đầu của Internet khi mà người dùng thuộc các trường đại học và các viện nghiên cứu thì
vấn đề bảo mật dữ liệu không phải là vấn đề quan trọng như bây giờ khi mà các ứng dụng thương
mại có mặt khắp nơi trên Internet.
Để thiết lập tính bảo mật trong IP ở cấp độ gói, IETF đã đưa ra họ giao thức IPSec. Họ
giao thức IPSec đầu tiên, cho xác thực, mã hóa các gói dữ liệu IP, được chuẩn hóa thành các RFC

Nhóm sinh viên AT9A
Page 18



Học viện kỹ thuật Mật Mã

Thực tập cơ sở chuyên ngành

từ 1825 đến 1829 vào năm 1995. Các giao thức IPSec như AH và ESP yêu cầu các bên tham gia
phải có các khoá bí mật chia sẻ trước (được phân phối nhân công hay qua một kênh an toàn nào
đó). Vấn đề là ở chỗ: khoá có thể bị mất, bị lộ hoặc hết hạn. Hơn nữa, các kỹ thuật phân phối
khoá nhân công không đáp ứng được trong trường hợp phải quản lý rất nhiều liên kết an toàn.
Phân phối khóa tự động (trên mạng) là phương thức có thể khắc phục được các hạn chế trên. Các
yêu cầu đối với các cơ chế trao đổi khoá mạnh sử dụng cho IPSec là:








Độc lập với các thuật toán mã hóa.
Độc lập với các giao thức trao đổi khóa.
Xác thực các thực thể quản lý khóa.
Thiết lập liên kết an toàn trên tầng vận tải “không an toàn”.
Sử dụng tài nguyên hiệu quả.
Cung cấp khả năng tạo yêu cầu của máy trạm và các phiên SA.

Giao thức IKE được thiết kế để đáp ứng các yêu cầu đó. Nó là giao thức được xây dựng
từ cặp giao thức ISAKMP và OAKLEY mà IPSEC đã sử dụng để thiết lập các liên kết an toàn,
trong đó có chức năng quản lý khóa. ISAKMP (Internet Security Association and Key
Management Protocol) cung cấp một khuôn mẫu (framework) cho việc quản lý khóa. Nó được
coi như một cách thức thỏa thuận và truyền tài liệu khóa. Nó không định nghĩa một khối dữ liệu

tải (payload) mà chỉ xác định chúng là gì và chúng được chuyển di như thế nào. Giao thức trao
đổi khóa OAKLEY dùng thuật toán Diffie – Hellman để thiết lập các khóa phiên. Giải pháp kết
hợp giữa ISAKMP với OAKLEY là dùng khuôn mẫu của ISAKMP để truyền một tập hợp con
các trao đổi khóa OAKLEY.
IKE bao gồm hai pha. Pha thứ nhất được dùng để thiết lập liên kết an toàn giữa hai máy
dùng ISAKMP. Pha thứ hai dùng để thiết lập một SA cho hai máy dùng giao thức an toàn IPSEC.

Nhóm sinh viên AT9A
Page 19


Học viện kỹ thuật Mật Mã

Thực tập cơ sở chuyên ngành
Đề xuất ISAKMP SA

Thỏa thuận ISAKMP SA
Chọn ISAKMP SA

Dữ liệu khóa D - H

Trao đổi khóa D - H

PHA 1
Dữ liệu khóa D - H
Dữ liệu xác thực

Xác thực
lẫn nhau


Dữ liệu xác thực

Đề xuất IPSEC SA

Thỏa thuận IPSEC SA

PHA 2

Chọn IPSEC SA

Hình 2.1: Các pha của giao thức trao đổi khóa IKE
2.1.1.2. Các đặc trưng của IKE.
IKE có các đặc trưng sau:

• Có các thủ tục tạo khóa và xác thực định danh.
• Làm tươi khóa tự động.
• Giải quyết được vấn đề “khóa đầu tiên”.
• Mỗi giao thức bảo mật (AH hoặc ESP) đều có không gian SPI riêng.
• Khả năng bảo vệ tích hợp sẵn:
 Chống lại các tấn công từ chối dịch vụ DoS.
 Chống lại các tấn công chiếm kết nối/phiên liên lạc.
• Bảo mật toàn diện.
Nhóm sinh viên AT9A
Page 20


Học viện kỹ thuật Mật Mã

Thực tập cơ sở chuyên ngành


• Sử dụng kỹ thuật 2 pha:
 Pha 1: Thiết lập khóa và liên kết an toàn để trao đổi khóa.
 Pha 2: Thiết lập các liên kết an toàn để truyền dữ liệu.
• Được thực hiện dưới dạng một ứng dụng chạy trên giao thức UDP cổng 500.
• Hỗ trợ các chứng chỉ cho các máy (địa chỉ IP) và cho người dùng (định danh cố
định).

• Sử dụng xác thực mạnh cho các trao đổi ISAKMP:
 Khóa bí mật chia sẻ trước.
 Các khóa không thực sự được chia sẻ, chỉ một thẻ bài được dùng cho việc
tạo khóa cần thiết.

 Các chữ ký số (DSS hoặc RSA).
 Hệ mật khóa công khai.
IKEv1 đã được giới thiệu vào năm 1998 và sau đó được thay thế bởi IKEv2 vào tháng 12
năm 2005. Về nguyên lý hoạt động thì 2 phiên bản không có gì thay đổi, tuy nhiên hai phiên bản
này có một số điểm khác nhau cơ bản sau:

• IKEv2 không sử dụng nhiều băng thông bằng IKEv1.
• IKEv2 hỗ trợ Mobike còn IKEv1 thì không.
• IKEv2 xây dựng NAT Traversal.
• IKEv2 có thể phát hiện đường hầm còn sống hay không.
2.1.1.3. Một số định nghĩa, ký hiệu được dùng trong giao thức IKE.
Giao thức an toàn (Security Protocol): Một giao thức an toàn có chức năng thực hiện
một dịch vụ an toàn thông tin trên mạng.
Protection suite: là một danh sách các dịch vụ an toàn được nhiều giao thức an toàn khác
nhau áp dụng.
Liên kết an toàn (SA – Security Associantion): là một tập chi tiết các tham số xác định
đầy đủ các dịch vụ và cơ chế cần thiết để bảo vệ luồng thông tin trên mạng. Các tham số này có
thể bảo gồm các ký hiệu nhận dạng thuật toán, các mode, các khóa mã.


Nhóm sinh viên AT9A
Page 21


Học viện kỹ thuật Mật Mã

Thực tập cơ sở chuyên ngành

ISAKMP SA: là một SA được các máy chủ ISAKMP sử dụng để bảo vệ các luồng thông
tin giữa chúng.
Chỉ số tham số an toàn SPI (Security Parameter Index): là ký hiệu nhận dạng một liên
kết an toàn, liên quan đến một số giao thức an toàn. Mỗi giao thức có một SPI riêng. Một cặp
(giao thức an toàn, SPI) có thể xác định được duy nhất một liên kết an toàn.
Vùng diễn dịch DOI (Domain of Interpretaiton): một DOI định nghĩa các kiểu trao
đổi, các quy ước để đặt tên các thông tin liên quan đến an toàn như các chính sách an toàn hay
các thuật toán mật mã và các mode.
Tình huống (Situation): chứa tất cả các thông tin liên quan đến an toàn mà hệ thống cho
là cần thiết để quyết định các dịch vụ an toàn cần để bảo vệ phiên làm việc đang được thỏa thuận.
Nó có thể chứa các địa chỉ, các mức an toàn, các mode hoạt động (bình thường hay khẩn cấp)…
Các đề nghị (Proposal): là một danh sách (sắp xếp theo thứ tự giảm dần theo mức độ ưu
tiên) mà hệ thống cho là chấp nhận được để bảo vệ nội dung thông tin dưới tình huống đã cho.
HDR là một ISAKMP header mà kiểu trao đổi của nó là mode.
HDR* chỉ ra tất cả các payload đi sau nó đều được mã.
<P>_b là thân của payload.
SAi_b là toàn bộ SA payload (trừ generic header), bao gồm toàn bộ DOI, tình huống,
proposal và tất cả các transform mà bên khởi tạo đưa ra.
CKY-I và CKY-R là các cookie của bên khởi tạo và bên đáp ứng chứa trong ISAKMP
header.
g^xi và g^xr là các giá trị Diffie – Hellman của bên khởi tạo và bên đáp ứng.

g^xy là bí mật chia sẻ Diffie – Hellman.
KE là trao đổi khóa chứa thông tin công khai được trao đổi trong trao đổi Diffie –
Hellman.
Ni và Nr là nonce của bên khởi tạo và bên đáp ứng.
IDii và IDir là định danh của bên khởi tạo và bên đáp ứng.
SIG là chữ ký.
CERT là chứng chỉ số.
Prf(key, msg) là hàm số giả ngẫu nhiên được sử dụng để tạo ra đầu ra giả ngẫu nhiên cần
thiết. Hàm prf được sử dụng để sinh khóa và xác thực.

Nhóm sinh viên AT9A
Page 22


Học viện kỹ thuật Mật Mã

Thực tập cơ sở chuyên ngành

SKEYID là một chuỗi được sinh ra từ một mầm bí mật mà chỉ có những người được phép
trong trao đổi mới được biết.
SKEYID_e là mầm khóa mà liên kết an toàn ISAKMP sử dụng để bảo vệ bí mật các
thông tin trao đổi.
SKEYID_a là mầm khóa mà liên kết an toàn ISAKMP sử dụng để xác thực thông báo.
SKEYID_d là mầm khóa được sử dụng để sinh khóa cho các liên kết an toàn không phải
là ISAKMP.
<x>y tức là “x” được mã bằng khóa “y”.
 chỉ hướng liên lạc từ bên khởi tạo đến bên đáp ứng.
 chỉ hướng liên lạc từ bên đáp ứng tới bên khởi tạo.
| chỉ ra sự kết hợp thông tin (ví dụ X|Y tức là X kết hợp với Y).
[x] tức là x là một tùy chọn.

2.1.2. Một số đánh giá về giao thức IKE.
Trao đổi khóa Diffie – Hellman là một trong số nhiều phương thức dùng để trao đổi khóa
trong ngành mật mã học. Phương pháp này cho phép hai đối tượng không biết trước về nhau có
thể cùng nhau tạo ra một khóa bí mật thông qua một kênh truyền thông không đảm bảo về độ bảo
mật. Khóa bí mật này sẽ được dùng để hai đối tượng trao đổi thông tin với nhau dùng mã hóa đối
xứng sau này.
Giao thức trao đổi khóa đầu tiên được Diffie - Hellman đưa ra vào năm 1976, nó được gọi
là giao thức Diffie - Hellman nguyên thủy. Trong lĩnh vực bảo mật thông tin, các giao thức thỏa
thuận khóa đóng một vai trò hết sức quan trọng. Lược đồ trao đổi khóa Diffie - Hellman được sử
dụng hầu hết trong các giao thức trao đổi khóa hiện nay như MIKEY, IKE... Lược đồ trao đổi
khóa Diffie – Hellman có thể được mô tả qua hình sau:

Nhóm sinh viên AT9A
Page 23


Học viện kỹ thuật Mật Mã

Thực tập cơ sở chuyên ngành

Hình 2.2: Sơ đồ trao đổi khóa Diffie - Hellman
Do được hình thành dựa trên lược đồ trao đổi khóa Diffie – Hellman nên giao thức IKE
mang đầy đủ tính chất của giao thức trao đổi khóa Diffie – Hellman:
Chống tấn công người đứng giữa: tấn công người đứng giữa là một kiểu nghe trộm chủ
động, người tấn công bắt các luồng thông báo giữa hai thực thể A, B và làm cho họ tin rằng họ
đang trực tiếp trao đổi với nhau trên một kết nối riêng, trong khi thực tế toàn bộ các kết nối giữa

Nhóm sinh viên AT9A
Page 24



Học viện kỹ thuật Mật Mã

Thực tập cơ sở chuyên ngành

A, B đều bị điều khiển bới kẻ tấn công. Tấn công người đứng giữa chỉ có thể thành công khi kẻ
tấn công giả mạo được A hoặc B. Chính vì điều này mà giao thức IKE có thể chống lại được tấn
công người đứng giữa do sử dụng cơ chế xác thực 2 chiều.
Chống mạo danh khóa - thỏa hiệp: Một giao thức trao đổi khóa là kháng mạo danh khóa
nếu sự thỏa hiệp khóa bí mật dài hạn của một thực thể tin cậy không cho phép kẻ tấn công thiết
lập một khóa phiên với thực thể này bằng cách giả mạo như một thực thể khác.
Tính an toàn đầy đủ về phía trước (Perfect Forward Secrecy): Nếu một khóa bí mật dài
hạn của một hoặc nhiều thực thể bị lộ, thì độ an toàn của các khóa phiên được tạo ra trước đó
không bị ảnh hưởng gì.
2.2. NGUYÊN LÝ HOẠT ĐỘNG CỦA GIAO THỨC TRAO ĐỔI KHÓA IKE.
2.2.1. Pha thứ 1 của IKE.
Pha I của IKE đầu tiên xác thực các gateway, và sau đó thiết lập một kênh bảo mật cho sự
trao đổi. Tiếp đó, các bên thông tin thỏa thuận một ISAKMP SA đồng ý lẫn nhau, bao gồm các
thuật toán mã hóa, hàm băm, và các phương pháp xác thực có khóa.
Sau khi cơ chế mã hóa và hàm băm đã được đồng ý ở trên, một khóa sẽ bí mật được phát
sinh. Theo sau là những thông tin được dùng để phát sinh khóa bí mật:

• Giá trị Diffie-Hellman.
• SPI của ISAKMP SA ở dạng cookies.
• Một số ngẫu nhiên.
• Có thể có thêm các định danh của các bên khi sử dụng xác thực bằng khoá công
khai.
Sau khi trao đổi các thông tin cần thiết, cả hai bên phát sinh những khóa riêng của chính
mình và sử dụng chúng để chia sẽ bí mật. Theo cách này, những khóa mã hóa được phát sinh mà
không cần thực sự trao đổi bất kỳ khóa nào thông qua mạng.

Pha I của IKE có thể được thực hiện bằng một trong 2 chế độ: Main mode và Aggressive
mode. Mỗi phương pháp tạo ra một mầm khóa được xác thực từ trao đổi Diffie – Hellman.

• Main mode cho phép bảo vệ định danh và là bắt buộc, được hỗ trợ trong
FreeS/WAN.

• Aggressive mode nhanh hơn nhưng độ bảo mật kém hơn, hiện tại không được hỗ
trợ trong FreeS/WAN.
Kết thúc pha I, hai bên thỏa thuận được các tham số sau:

Nhóm sinh viên AT9A
Page 25


×