Tải bản đầy đủ

IPSec Phân tích quá trình ISAKMP và giải mã gói tin ESP

Khoa Mạng máy tính và Truyền thông

TÌM HIỂU VỀ IPSec ( INTERNET PROTOCOL
SECURITY)
Nhóm14
13520067 : Huỳnh Ngọc Cảnh
13520287 : Nguyễn Cao Hòa
13520849 : Nguyễn Văn Thông
13520024 : Nguyễn Thị Lan Anh

I/Phân tích quá trình Security Association (ISAKMP)
IPSec (Internet Protocol Security) là một giao thức được IETF phát triển. IPSec
được định nghĩa là một giao thức trong tầng mạng cung cấp các dịch vụ bảo mật,
nhận thực, toàn vẹn dữ liệu và điều khiển truy cập. Nó là một tập hợp các tiêu
chuẩn mở làm việc cùng nhau giữa các phần thiết bị.[1]
Quản lý khóa với Internet Key Exchange – IKE :
IPSec dùng một giao thức thứ ba Internet Exchange Key (IKE) thực hiện
tính năng thứ ba là quản lý khóa để thỏa thuận các giao thức bảo mật và các thuật
toánmã
hóa
trước


tron
suốt
quá
trình
giao
dịch.
Cơ chế hoạt động của IKE :
-

-

Giao thức IKE sẽ có chức năng trao đổi key giữa các thiết bị tham gia
VPN và trao đổi chính sách an ninh giữa các thiết bị.
Nếu không có giao thức này thì người quản trị phải cấu hình thủ công, và
những chính sách an ninh trên những thiết bị này được gọi là SA
(Security Associate). Do đó các thiết bị trong quá trình IKE sẽ trao đổi
với nhau tất cả những SA mà nó có. Các thiết bị này sẽ tự tìm ra cho
mình những SA phù hợp với đối tác nhất.
Những key được trao đổi trong quá trình IKE cũng được mã hóa và
những key này sẽ thay đổi theo thời gian (Generate Key) để tránh tình
trạng BruteForce của Attacker.

+ Có 2 giai đoạn tạo nên phiên làm việc dựa trên IKE, hình bên dưới trình
bày một số đặc điểm chung của hai giai đoạn. Trong một phiên làm việc


IKE, nó giả sử đã có một kênh bảo mật được thiết lập sẵn. Kênh bảo mật này
phải được thiết lập trước khi có bất kỳ thỏa thuận nào xảy ra.

+ Có 4 chế độ IKE phổ biến thường được triển khai :
-

Chế độ chính – Main mode
Chế độ linh hoạt – Aggressive mode.
Chế độ nhanh – Quick mode .
Chế độ nhóm mới – New Group mode
Ngoài 4 chế độ IKE phổ biến trên, còn có thêm Informational mode. Chế
độ này cung cấp cho các bên có liên quan một số thông tin thêm, xuất
phát từ những thất bại trong quá trình thỏa thuận. Ví dụ, nếu việc giải mã

thất bại tại người nhận hoặc chữ ký không được xác minh thành công,
Informational mode được dùng để thông báo cho các bên khác biết.

Phân tích gói tin [2]
-

Ở đây Main mode sử dụng 6 gói tin để thiết lập. Tạm gọi Bên A: 10.0.0.1
; Bên B 10.0.0.2



Giai đoạn 1

-

Hai bên tiến hành đàm phán về các thông tin sau :
o Hashing (hàm băm)
o Authentication (chứng thực )
o DH (Diffie Hellman) group
o Lifetime
o Encryption

2 Message đầu tiên được dùng để thỏa thuận các chính sách bảo mật IKE
bao gồm: thuật toán mã hóa, độ dài key, thuật toán hash, phương pháp chứng thực,
thời gian bao lâu trao đổi key
+Message 1.




Ở message 1 .Bên A sẽ gửi message đầu tiên , sử dụng UDP port 500
.Trong message này có chuỗi SPI (Security Parameter Index), đây là giá
trị duy nhất để xác định trong SA. Phiên bản sử dụng ở đây là ver1 và ở chế
độ Main mode. Chúng ta có thể thấy được các thuộc tính(thuật toán mã hóa,
hàm băm , các phương pháp xác nhận bảo vệ mã khóa.) sử dụng trong quá
trình SA này ở phần Type Payload: transform

+Message 2




Sau khi bên B nhận được message từ bên A thì bên B tiến hành phản hồi lại.
Message này nhầm thông báo cho bên A về việc đồng ý các thuộc tính trong
payload transform như : thuật toán mã hóa, hash nào?, giải mã , chiều dài
của key. Và bên B cũng đã tự thiết lập SPI cho riêng mình.

2 message tiếp theo được dùng để trao đổi key Diffire-Hellman và Nonce.
Những key thực hiện một vai trò quan trọng trong cơ chế mã hóa
+ Message 3




Sau khi cơ chế mã hóa và hàm băm đã được đồng ý ở trên, một khóa sẽ bí
mật phát sinh.Bên A tiến hành dùng Diffie-Hellman để trao đổi.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, số ngẫu nhiên known as nonces (dùng ký
xác nhận)

+ Message 4




Bên B cũng sẽ gửi Diffie Hellman nonces cho Bên A . Hai bên bắt đầu tính
toán trong việc Diffie Hellman shared key

2 message cuối cùng được dùng để xác nhận lại các giao dịch đã sử dụng với sự
giúp đỡ của chữ ký, các hàm băm và tùy chọn các chứng thực
+ Message 5



Message 5 và 6 đã được mã hóa nên không thể xem được nội dung của
chúng nữa.Cả 2 message cuối dùng để nhận dạng và xác thực của mỗi bên.

+ Message 6




Bên B sẽ phản hồi các thông tin nhận dạng và xác thực của nó


-

Giai đoạn 2
Ở giai đoạn 2 dữ liệu người dùng sẽ được bảo vệ vì thế chỉ có 1 chế độ
Quick
mode
được
sử
dụng
.
Cũng giống như giai đoạn 1 , ở giai đoạn 2 các Bên sẽ tiến hành thỏa
thuận các thông tin bảo mật IPSec như :
o IPsec Protocol : ESP hoặc AH
o IPSec mode: Tunnel hoặc transport.
o Trao đổi khóa Diffie-Hellman
o Encryption
o Authentication
o IPSec SA lifetime: dùng để thỏa thuận lại SA IPSec sau một
khoảng thời gian mặc định hoặc được chỉ định.
o (Optional) DH exchange.
o Session key được làm mới hoặc thay đổi, các SAs, key và SPI
được thông qua cho IPSec.
SA IPSec của phase 2 hoàn toàn khác với SA IKE ở phase 1, SA
IKE chứa các thông số để tạo nên kênh truyền bảo mật, còn SA IPSec
chứa các thông số để đóng gói dữ liệu theo ESP hay AH, hoạt động theo
tunnel mode hay transport mode.

-

Ở giai đoạn này các thỏa thuận sẽ xảy ra trong phạm vi bảo vệ của giai
đoạn 1 vì vậy chúng ta sẽ không thấy bất cứ gì.

+ Message 7


+ Message 8

+ Message 9

II/ Giải mã các gói tin ESP
Ta tiến hành giải mã các gói tin ESP dựa vào cơ chế giải mã của WireShark [3]
Trong wireshark , chọn Edit -> Preferences->Protocols->ESP ra được bảng như
hình:


Tiếp theo ta dựa vào các thông tin trong file readname để điền vào:


So sánh trước và sau khi giải mã các gói tin:
Trước giải mã thì chỉ có 2 trường trong Encapsulating Security Payload là ESP
SPI Security parameters index (chỉ dẫn thông số an ninh, trường này bắt buộc phải
có) và ESP Sequence (đơn giản chỉ là số thứ tự)





Sau khi giải mã :


Ta thấy sau khi giải mã các gói tin ESP thì những trường nằm trong
Encapsulating Security Payload sẽ xuất hiện như :
-

-

-

Payload Data (trường dữ liệu tải tin): Đây là trường bắt buộc. Nó bao
gồm một số lượng biến đổi các byte dữ liệu gốc hoặc một phần dữ liệu
yêu cầu bảo mật đã được mô tả trong trường Next Header
Padding (0->255 bytes): cần thiết để đảm bảo phần dữ liệu mật mã
(ciphertext) sẽ kết thúc ở biên giới 4 byte để phân biết rõ ràng với trường
Authentication Data.
Pad Length chiều dài của Pad
Authentiaction data (bội số của 32 bits):Thông tin xác thực được tình trên
toàn bộ gói ESP ngoại trừ phần authentiaction data.

Nguồn:
[1] Wikipedia. IPSec. [Online]. Available:

https://en.wikipedia.org/wiki/IPsec
[2] Wikipedia. IPsec (Internet Protocol Security). [Online]. Available:

https://networklessons.com/security/ipsec-internet-protocol-security/
[3] Wikipedia. ESP_Preferences. [Online]. Available:

https://wiki.wireshark.org/ESP_Preferences



x

Tài liệu bạn tìm kiếm đã sẵn sàng tải về

Tải bản đầy đủ ngay

×