TRƯỜNG ĐẠI HỌC NGUYỄN TẤT THÀNH KHOA CÔNG NGHỆ THÔNG TIN

Bài giảng môn học: AN NINH MẠNG

Số tín chỉ: 3 Tổng số tiết: 60 tiết (30 LT + 30 TH)

Giảng viên: ThS. Phạm Đình Tài Tel: 0985733939 Email: pdtai@ntt.edu.vn

Môn học: AN NINH MẠNG

Bài 1

Các kỹ thuật tấn công mạng.

Bài 2

Các kỹ thuật mã hóa và xác thực

Bài 3

Triển khai hệ thống Firewall

Bài 4

Chứng thực trên Firewall

Bài 5

Thiết lập các chính sách truy cập

Bài 6

Bảo vệ Server công cộng

Bài 7

Bảo mật truy cập từ xa

- 2 -

Bài 2: Các kỹ thuật mã hóa và xác thực

Mã hóa khóa đối xứng

Mã hóa khóa bất đối xứng

Chứng thư số (Certificate Authority)

Chữ ký số (Digital Sign)

Hàm băm (hash)

Trao đổi khóa

Mục tiêu của an toàn thông tin

• Tiêu chuẩn an toàn thông tin:

• An toàn thông tin là các biện pháp nhằm bảo mật thông tin

Accountability

Reliability

Authenticity

Non-repudiation

Integrity

Availability

Confidentialit y

Information Security

People

Policy

Technolo gy

Procedur es

ISO/IEC-27001:2005

Legal Framework

Mục tiêu của an toàn thông tin

• Lớp nền tảng của an toàn thông tin:

• Chỉ những người được phân quyền mới có thể truy cập được dữ liệu. • Mã hóa dữ liệu trước khi truyền từ nơi này sang nơi khác.

• Tính bí mật (Confidentiality)

• Người nhận sẽ xác minh sự toàn vẹn của dữ liệu. • Đảm bảo dữ liệu không bị thay đổi trên đường truyền.

• Tính toàn vẹn (Integrity)

• Đảm bảo dữ liệu luôn trong tình trạng sẵn sàng khi người dùng có nhu

cầu truy cập.

$10.0 00

$10 0

$10.0 00

5

5

• Tính sẵn sàng (Avaibility)

Mục tiêu của an toàn thông tin

• Lớp xác thực thông tin:

• Authenticity: xác minh nguồn gốc của thông tin

• Đảm bảo người tạo ra thông tin không thể phủ nhận thông tin mình đã

tạo.

• Non-repudiation (tính chống từ chối):

• Lớp

Accountability

Reliability

Authenticity

Non-repudiation

Integrity

Availability

Confidentialit y

Information Security

People

Policy

Technolo gy

Procedur es

Legal Framework

6

Mã hóa khóa đối xứng

• Khái niệm mã hóa:

• Mật mã (encryption) là dùng thuật toán (algorithms) nào đó để

làm biến đổi thông tin gốc.

• Giải mã (decryption) là dùng thuật toán để chuyển thông tin đã bị

biến đối thành thông tin gốc.

• Hệ thống mã hóa (cryptosystem): bao gồm các thuật toán mã hóa

và giải mã.

7

• Khóa mã (Key) là chìa khóa (từ khóa, mã khóa…) điều khiển hoạt động của việc mã hóa hoặc giải mã trong thuật toán.

Mã hóa khóa đối xứng

• Mã hóa khóa đối xứng.

• Thông tin gốc X được mã hóa bởi khóa K để thanh dữ liệu Y.

• Dữ liệu Y được truyền trên mạng tới nơi nhận.

• Nơi nhận sẽ dùng chính khóa K để giải mã dữ liệu Y thanh thông

8

tin gốc X.

Mã hóa khóa đối xứng

• Ví dụ về mã hóa khóa đối xứng bằng thuật toán XOR:

Bên gởi

X = 1000 1011 K = 0101 0101 Y = 1101 1110

Bên nhận dùng khóa Đúng Y = 1101 1110 K = 0101 0101 X = 1000 1011

A xor B

Bảng chân trị của XOR B A 0

0

0

0

1

1

1

0

1

1

1

0

Bên nhận dùng khóa Sai Y = 1101 1110 K = 0001 0001 X = 1100 1111 (2 bit giống nhau trả về 0 2 bit khác nhau trả về 1 )

9

Mã hóa khóa đối xứng

• Một số thuật toán mã hóa khóa đối xứng thông dụng.

• Thông điệp (message) được chia thành những khối (block) 64 bits • Dùng khóa 56 bít để mã hóa. ( 8 bit để kiểm tra chẳn, lẻ) • Có thể bị tấn công bằng giải thuật vét cạn khóa (Brute-force)

• DES (Data Encryption Standard):

• Triple DES: thực hiện thuật toán DES 3 lần.

EK1 { DK2 [ EK1 (m) ] } => c

• Mã hóa thông điệp m: • Mã hóa thông tin đã mã hóa c:

DK1 { EK2 [ DK1 (c) ] } => m

• Thông điệp được chia khối tương tự DES • Dùng khóa: 128, 192 hoặc 256 bits

10

• AES (Advanced Encryption Standard): thay thế cho DES

Mã hóa khóa bất đối xứng

• Mã hóa bất đối xứng – thuật toán RSA.

• Mỗi máy tính sử dụng bộ khóa bao gồm 2 khóa:

• Kr: Khóa riêng (private) – giữ trong máy, không public ra ngoài. • Kp: Khóa chung (public) – không giữ trong máy, public ra ngoài.

• Dữ liệu mã hóa bằng khóa riêng Kr thì chỉ giải mã được bằng khóa

chung Kp

• Dữ liệu mã hóa bằng khóa chung Kp thì chỉ giải mã được bằng khóa

riêng Kr

11

• Nguyên tắc mã hóa và giải mã:

Mã hóa thông tin (Cryptography)

• Các phương pháp dùng thuật toán RSA:

• Giả định: Alice muốn truyền thông tin cho Bob

• Bob công khai khóa KpB ra ngoài • Alice mã hóa bằng khóa KpB của Bob • Bob giải mã bằng khóa KrB của Bob

• Giải pháp 1:

• Alice công khai khóa KpA ra ngoài • Alice mã hóa bằng khóa KrA của Alice • Bob giải mã bằng khóa KpA của Alice

12

• Giải pháp 2:

Hàm băm (hash function)

• Công dụng của hàm băm

• Băm thông điệp bất kỳ về kích thước cố định.

• Phát hiện sự thay đổi trên thông điệp

• Có thể được sử dụng để tạo chữ ký trên thông điệp

• Tính chất của hàm băm:

• Nếu có thông điệp (M) sẽ dễ dàng tính được mã băm (h) theo một

thuật toán băm (H) nào đó (ví du: MD5, SHA1,…)

• Nếu có mã băm (h), không thể tính ngược được để cho ra thông

điệp (M) cho dù biết thuật toán băm.

• Kích thước h nhỏ và cố định

13

• h chỉ phụ thuộc vào M

Hàm băm (hash function)

• Hàm băm đơn giản:

• Dùng thuật toán XOR để băm thông điệp

• Thông điệp (M): 1010 1100 0111 1000 1010 1100

• Băm 8 bit – chia thông diệp thành các đoạn 8 bit

1010 1100 0111 1000 1010 1100

Mã băm (h): 0111 1000

• Nếu có thay đổi trên thông điệp

1010 1101 0111 1000 1010 1100

14

Mã băm mới: 0111 1001 sẽ khác với mã băm cũ

Hàm băm (hash function)

• Minh họa ứng dụng Hash:

• Mật khẩu “abc” theo dạng ASCII:

0100 0001 0100 0010 0100 0011

• Băm 8 bit theo thuật toán XOR ta được mã băm: 0100 0000

• Hệ thống lưu trữ mật khẩu “abc” dưới dạng mã băm: 0100 0000

• Trường hợp Attacker lấy được bảng mật khẩu => không thể giải

15

mã băm 0100 0000 thành mật khẩu “abc” .

Trao đổi khóa (Key exchange)

• Thuật toán Diffie-Hellman:

• Mục đích: đảm bảo tính bí mật

khi 2 đối tác thảo thuận thay đổi khóa đối xứng.

• Alice và Bob đang dùng 1 khóa

chung (màu vàng), muốn thay đổi khóa chung khác.

• Mỗi bên tự tạo 1 khóa mới, trộn

với Khóa chung đang dùng. • Gởi khóa đã trộn cho đối tác. • Trộn khóa nhận được với khóa

tự tạo => có được Khóa chung mới giống nhau cho cả 2.

- 16 -

• Cơ chế hoạt động:

Chứng thư số (Certification Authority)

• Vai trò của Chứng thư số (Certification Authority – CA)

• Mã hóa thông tin truyền.

• Chứng thực nguồn cung cấp dịch vụ (Server) bởi “Nhà cung cấp

chứng thư” tin cậy.

• Đảm bảo tính toàn vẹn dữ liệu trong quá trình mã hóa và giải mã

CA Server

Server

Client

17

thông tin.

Chứng thư số (Certification Authority)

• Hoạt động của CA

1. Client gởi yêu cầu truy cập dịch vụ đến Server. 2. Server gởi Cert. của nó cho Client, bao gồm khóa public KpuS 3. Client gởi Cert. tới CA Server nhờ chứng thực nguồn gốc.

CA Server

Server

Client

18

4. Nếu CA Server xác nhận đúng, client sẽ tiến hành giao dịch với Server bằng dữ liệu mã hóa bởi khóa KpuS (Server giải mã bằng khóa KprS của nó).

Chữ ký số (Digital Signature)

• Vai trò của Chữ ký số (Digital Signature)

• Mã hóa thông tin truyền.

• Chứng thực người truy cập dịch vụ (Client) bởi “Nhà cung cấp chữ

ký số” tin cậy.

• Đảm bảo tính toàn vẹn dữ liệu trong quá trình mã hóa và giải mã

19

thông tin.

Chữ ký số (Digital Signature)

• Hoạt động của DS

1. Client kết nối Server để thực hiện giao dịch dùng DS. 2. Client gởi Sign. của nó cho Server, bao gồm khóa public KpuC 3. Server gởi Sign. tới CA Server nhờ chứng thực nguồn gốc.

4. Nếu CA Server xác nhận đúng, Server sẽ tiến hành giao dịch với

CA Server

Server

Client

20

Client bằng dữ liệu mã hóa bởi khóa KpuC

Chứng thư số (Certification Authority)

• Giả mạo chứng thư số

Trong trường hợp Client đã bị tấn công Man in the middle.

1. Yêu cầu truy cập của Client sẽ gởi tới Hacker.

2. Hacker giao dịch với Server như 1 client bình thường.

3. Hacker giả mạo Server gởi cho Client một Cert. giả.

4. Client đem Cert. đi chứng thực, nó sẽ nhận được cảnh báo “không

CA Server

Server

Client

Hacker

21

tin cậy” từ CA Server.

Chữ ký số (Digital Signature)

• Giả mạo Chữ ký số

Trường hợp Client đã bị tấn công Man in the middle và người dùng Client đã chấp nhận dùng Certification không tin cậy từ Hacker

1. Hacker dùng Sign. giả gởi tới Server.

2. Server đem Sign. đi chứng thực, nó sẽ nhận được cảnh báo “không

tin cậy” từ CA Server

CA Server

Server

Client

Hacker

22

3. Server hủy phiên giao dịch.

Thảo Luận

Cấu trúc MT – ThS. Vương Xuân Chí

Trang 23