Đĩng gĩi thơng tin của IPSec

Một phần của tài liệu CÔNG NGHỆMẠNG RIÊNG ẢO TRÊN INTERNET IP-VPN (Trang 52)

3.2.1 Các kiu s dng

IPSec cĩ hai kiểu cung cấp nhận thực và mã hĩa mức cao để thực hiện đĩng gĩi thơng tin, đĩ là kiểu Transport (truyền tải) và kiểu Tunnel (đường ngầm). Sau đây chúng ta sẽ xét đến hai kiểu này trước khi tìm hiểu về các giao thức AH và ESP:

3.2.1.1 Kiu Transport

Trong kiểu này, vấn đề an ninh được cung cấp bởi các giao thức lớp cao hơn (từ

lớp 4 trở lên). Kiểu này bảo vệ phần tải tin của gĩi nhưng vẫn để phần IP header ban

đầu ở dạng bản rõ. Địa chỉ IP ban đầu được sử dụng đểđịnh tuyến gĩi qua Internet.

Hình 3.1 Gĩi tin IP kiu Transport

Kiểu Transport cĩ ưu điểm là chỉ thêm vào gĩi IP ban đầu một số it byte. Nhược điểm là kiểu này cho phép các thiết bị trong mạng nhìn thấy địa chỉ nguồn và

đích của gĩi tin và cĩ thể thực hiện một số xử lý (ví dụ như phân tích lưu lượng) dựa Authenticated Encrypted Authenticated Original Header AH Header Payload Original Header ESP Header Payload AH- kiểu Transport ESP- kiểu Transport

trên các thơng tin của IP header. Tuy nhiên nếu được mật mã bởi ESP thì sẽ khơng biết

được dữ liệu cụ thể bên trong gĩi IP là gì. Theo như IETF thì kiểu Transport chỉ cĩ thể được sử dụng khi hai hệ thống đầu cuối IP-VPN cĩ thực hiện IPSec.

3.1.1.2 Kiu Tunnel

Kiểu này bảo vệ tồn bộ gĩi IP. Gĩi IP ban đầu (bao gồm cả IP header) được xác thực hoặc mật mã. Sau đĩ, gĩi IP đã mã hĩa được đĩng gĩi vào một IP header mới. Địa chỉ IP bên ngồi được sử dụng cho định tuyến gĩi IP truyền qua Internet.

Hình 3.2: Gĩi tin IP kiu Tunnel

Trong kiểu Tunnel, tồn bộ gĩi IP ban đầu được đĩng gĩi và trở thành Payload của gĩi IP mới. Kiểu này cho phép các thiết bị mạng như router thực hiện xử lý IPSec thay cho các trạm cuối (host). Hình 3.3 là ví dụ: Router A xử lý các gĩi từ host A, gửi chúng vào đường ngầm. Router B xử lý các gĩi nhận được trong đường ngầm, đưa về

dạng ban đầu và chuyển hĩa chúng tới host B. Như vậy, các trạm cuối khơng cần thay

đổi nhưng vẫn cĩ được tính an tồn dữ liệu của IPSec. Ngồi ra, nếu sử dụng kiểu Tunnel, các thiết bị trung gian trong mạng sẽ chỉ cĩ thể nhìn thấy được các địa chỉ hai

điểm cuối của đường hầm (ởđây là các router A và B). Khi sử dụng kiểu Tunnel, các

đầu cuối của IP-VPN khơng cần phải thay đổi ứng dụng hay hệđiều hành.

Hình 3.3: Thiết b mng thc hin IPSec kiu Tunnel

Authenticated Encrypted Authenticated Original Header AH Header Payload Original Header ESP Header Payload AH- kiểu Tunnel ESP- kiểu Tunnel New Header New Header

3.2.2 Giao thc tiêu đề xác thc AH

3.2.2.1 Gii thiu

Giao thức AH (Authentication Header) được định nghĩa trong RFC 1826 và sau

đĩ là phát triển lại trong RFC 2402. AH cung cấp xác thực nguồn gốc dữ liệu (data origin authentication), kiểm tra tính tồn vẹn dữ liệu (data integrity), và dịch vụ chống phát lại (anti-replay service). Đến đây, cần phải phân biệt được hai khái niệm tồn vẹn dữ liệu và chống phát lại: tồn vẹn dữ liệu là kiểm tra những thay đổi của từng gĩi tin IP, khơng quan tâm đến vị trí các gĩi trong luồng lưu lượng; cịn dịch vụ chống phát lại là kiểm tra sự phát lặp lại một gĩi tin tới địa chỉ đích nhiều hơn một lần. AH cho phép xác thực các trường của IP header cũng như dữ liệu của các giao thức lớp trên, tuy nhiên do một số trường của IP header thay đổi trong khi truyền và phía phát cĩ thể

khơng dự đốn trước được giá trị của chúng khi tới phía thu, do đĩ giá trị của các trường này khơng bảo vệ được bằng AH. Cĩ thể nĩi AH chỉ bảo vệ một phần của IP header mà thơi. AH khơng cung cấp bất cứ xử lý nào về bảo mật dữ liệu của các lớp trên, tất cả đều được truyền dưới dạng văn bản rõ. AH nhanh hơn ESP, nên cĩ thể

chọn AH trong trường hợp chắc chắn về nguồn gốc và tính tồn vẹn của dữ liệu nhưng tính bảo mật dữ liệu khơng cần được chắc chắn.

Giao thức AH cung cấp chức năng xác thực bằng cách thực hiện một hàm băm một chiều (one-way hash function) đối với dữ liệu của gĩi để tạo ra một đoạn mã xác thực (hash hay message digest). Đoạn mã đĩ được chèn vào thơng tin của gĩi truyền

đi. Khi đĩ, bất cứ thay đổi nào đối với nội dung của gĩi trong quá trình truyền đi đều

được phía thu phát hiện khi nĩ thực hiện cùng với một hàm băm một chiều đối với gĩi dữ liệu thu được và đối chiếu nĩ với giá trị hash đã truyền đi. Hàm băm được thực hiện trên tồn bộ gĩi dữ liệu, trừ một số trường trong IP header cĩ giá trị bị thay đổi trong quá trình truyền mà phía thu khơng thể dự đốn trước được (ví dụ trường thời gian sống của gĩi tin bị các router thay đổi trên đường truyền dẫn).

3.2.2.2 Cu trúc gĩi tin AH

Các thiết bị sử dụng AH sẽ chèn một tiêu đề vào giữa lưu lượng cần quan tâm của IP datagram, ở giữa phần IP header và header lớp 4. Bởi vì AH được liên kết với IPSec, IP-VPN cĩ thểđịnh dạng để chọn lưu lượng nào cần được an tồn và lưu lượng nào khơng cần phải sử dụng giải pháp an tồn giữa các bên. Ví dụ như bạn cĩ thể chọn

để xử lý lưu lượng email nhưng khơng đối với các dịch vụ web. Quá trình xử lý chèn AH header được diễn tả như trong hình 3.4.

Hình 3.4: Cu trúc tiêu đề AH cho IPSec Datagram

Giải thích ý nghĩa các trường trong AH header:

Next Header (tiêu đề tiếp theo) Cĩ độ dài 8 bit để nhận dạng loại dữ liệu của phần tải tin theo sau AH. Giá trị này được chọn lựa từ tập các số giao thức IP đã

được định nghĩa trong các RFC gần đây nhất.

Payload length (độ dài tải tin): Cĩ độ dài 8 bit và chứa độ dài của tiêu đề

AH được diễn tả trong các từ 32 bit, trừ 2. Ví dụ trong trường hợp của thuật tốn tồn vẹn mà mang lại một giá trị xác minh 96 bit (3x32 bit), cộng với 3 từ 32 bit đã cố định, trường độ dài này cĩ giá trị là 4. Với IPv6, tổng độ dài của tiêu đề phải là bội của các khối 8.

Reserved (dự trữ): Trường 16 bit này dự trữ cho ứng dụng trong tương lai.

Security Parameters Index (SPI: chỉ dẫn thơng số an ninh): Trường này cĩ

độ dài 32 bit, mang tính chất bắt buộc.

Sequence Number (số thứ tự): Đây là trường 32 bit khơng đánh dấu chứa một giá trị mà khi mỗi gĩi được gửi đi thì tăng một lần. Trường này cĩ tính bắt buộc. Bên gửi luơn luơn bao gồm trường này ngay cả khi bên nhận khơng sử dụng dịch vụ

chống phát lại. Bộđếm bên gửi và nhận được khởi tạo ban đầu là 0, gĩi đầu tiên cĩ số

thứ tự là 1. Nếu dịch vụ chống phát lại được sử dụng, chỉ số này khơng thể lặp lại, sẽ

cĩ một yêu cầu kết thúc phiên truyền thơng và SA sẽ được thiết lập mới trở lại trước khi truyền 232 gĩi mới.

Authentication Data (dữ liệu nhận thực): Cịn được gọi là ICV (Integrity Check Value: giá trị kiểm tra tính tồn vẹn) cĩ độ dài thay đổi, bằng số nguyên lần của 32 bit đối với IPv4 và 64 bit đối với IPv6, và cĩ thể chứa đệm để lấp đầy cho đủ là bội số các bit như trên. ICV được tính tốn sử dụng thuật tốn nhận thực, bao gồm mã

nhận thực bản tin (Message Authentication Code MACs). MACs đơn giản cĩ thể là thuật tốn mã hĩa MD5 hoặc SHA-1. Các khĩa dùng cho mã hĩa AH là các khĩa xác thực bí mật được chia sẻ giữa các phần truyền thơng cĩ thể là một số ngẫu nhiên, khơng phải là một chuỗi cĩ thể đốn trước của bất cứ loại nào. Tính tốn ICV được thực hiện sử dụng gĩi tin mới đưa vào. Bất kì trường cĩ thể biến đổi của IP header nào

đều được cài đặt bằng 0, dữ liệu lớp trên được giả sử là khơng thể biến đổi. Mỗi bên tại đầu cuối IP-VPN tính tốn ICV này độc lập. Nếu ICV tính tốn được ở phía thu và ICV được phía phát truyền đến khi so sánh với nhau mà khơng phù hợp thì gĩi tin bị

loại bỏ, bằng cách như vậy sẽđảm bảo rằng gĩi tin khơng bị giả mão.

3.2.2.3 Quá trình x lý AH

Hoạt động của AH được thực hiện qua các bước như sau:

Bước 1: Tồn bộ gĩi IP (bao gồm IP header và tải tin) được thực hiện qua một hàm băm một chiều.

Bước 2: Mã hash thu được dùng để xây dựng một AH header, đưa header này vào gĩi dữ liệu ban đầu.

Bước 3: Gĩi dữ liệu sau khi thêm AH header được truyền tới đối tác IPSec.

Bước 4: Bên thu thực hiện hàm băm với IP header và tải tin, kết quả thu được một mã hash.

Bước 5: Bên thu tách mã hash trong AH header.

Bước 6: Bên thu so sánh mã hash mà nĩ tính được mà mã hash tách ra từ AH header. Hai mã hash này phải hồn tồn giống nhau. Nếu khác nhau chỉ một bit trong quá trình truyền thì 2 mã hash sẽ khơng giống nhau, bên thu lập tức phát hiện tính khơng tồn vẹn của dữ liệu.

a) V trí ca AH

AH cĩ hai kiểu hoạt động, đĩ là kiểu Transport và kiểu Tunnel. Kiểu Transport là kiểu đầu tiên được sử dụng cho kết nối đầu cuối giữa các host hoặc các thiết bị hoạt

động như host và kiểu Tunnel được sử dụng cho các ứng dụng cịn lại.

Ở kiểu Transport cho phép bảo vệ các giao thức lớp trên, cùng với một số

trường trong IP header. Trong kiểu này, AH được chèn vào sau IP header và trước một giao thức lớp trên (chẳng hạn như TCP, UDP, ICMP…) và trước các IPSec header đã

được chen vào. Đối với IPv4, AH đặt sau IP header và trước giao thức lớp trên (ví dụ ởđây là TCP). Đối với IPv6, AH được xem như phần tải đầu cuối-tới - đầu cuối, nên sẽ xuất hiện sau các phần header mở rộng hop-to-hop, routing và fragmentation. Các lựa chọn đích (dest options extension headers) cĩ thể trước hoặc sau AH.

Hình 3.5: Khuơn dng IPv4 trước và sau khi x lý AH kiu Transport

Hình 3.6: Khuơn dng IPv6 trước và sau khi x lý AH kiu Traport

Trong kiểu Tunnel, inner IP header mang địa chỉ nguồn và đích cuối cùng, cịn outer IP header mang địa chỉ để định tuyến qua Internet. Trong kiểu này, AH bảo vệ

tồn bộ gĩi tin IP bên trong, bao gồm cả inner IP header (trong khi AH Transport chỉ

bảo vệ một số trường của IP header). So với outer IP header thì vị trí của AH giống như trong kiểu Trasport.

Hình 3.7: Khuơn dng gĩi tin đã x lý AH kiu Tunnel

IPv4 Nhận thực trừ các trường biến đổi ở New IP header Orig IP hdr (any options) TCP Data New IP hdr (any options) AH IPv6 Nhận thực trừ các trường biến đổi ở New IP header New IP hdr (any options) AH Ext hdr

If present Orig IP hdr TCP Data Ext hdr

If present Sau khi thêm AH

Trước khi thêm AH Orig IP hdr

(any options) TCP Data

Orig IP hdr (any options)

AH IPv4

IPv4 TCP Data

Sau khi thêm ẠH Trước khi thêm ẠH

Orig IP hdr

(any options) TCP Data

Orig IP hdr (any options) AH IPv6 IPv6 Ext hdr if present Hop-by-hop, dest*, routing, fragment Dest opt* TCP Data

b) Các thut tốn xác thc

Thuật tốn xác thực sử dụng để tính ICV được xác định bởi kết hợp an ninh SA (Security Association). Đối với truyền thơng điểm tới điểm, các thuật tốn xác thực thích hợp bao gồm các hàm băm một chiều (MD5, SHA-1). Đây chính là những thuật tốn bắt buộc mà một ứng dụng AH phải hỗ trợ. Chi tiết về hàm băm sẽđược đề cập cụ thể trong chương 4.

c) X lý gĩi đầu ra

Trong kiểu Transport, phía phát chèn AH header vào sau IP header và trước một header của giao thức lớp trên. Trong kiểu Tunnel, cĩ thêm sự xuất hiện của outer IP header. Quá trình xử lý gĩi tin đầu ra như sau:

Tìm kiếm SA: AH được thực hiện trên gĩi tin đầu ra chỉ khi quá trình IPSec đã xác định được gĩi tin đĩ được liên kết với một SA. SA đĩ sẽ yêu cầu AH xử

lý gĩi tin. Việc xác định quá trình xử lý IPSec nào cần thực hiện trên lưu lượng đầu ra cĩ thể xem trong RFC 2401.

Tạo SN: bộ đếm phía phát được khởi tạo 0 khi một SA được thiết lập. Phía phát tăng SN cho SA này và chèn giá trị SN đĩ vào trường Sequence Number. Nếu dịch vụ anti-replay (chống phát lại) được lựa chọn, phía phát kiểm tra để đảm bảo bộđếm khơng bị lặp lại trước khi chèn một giá trị mới. Nếu dịch vụ anti-replay khơng

được lựa chọn thì phía phát khơng cần giám sát đến, tuy nhiên nĩ vẫn được tăng cho

đến khi quay trở lại 0.

Tính tốn ICV: bằng cách sử dụng các thuật tốn, phía thu sẽ tính tốn lại ICV ở phía thu và so sánh nĩ với giá trị cĩ trong AH để quyết định tới khả năng tồn tại của gĩi tin đĩ.

Chèn dữ liệu: cĩ hai dạng chèn dữ liệu trong AH, đĩ là chèn dữ liệu xác thực (Authentication Data Padding) và chèn gĩi ngầm định (Implicit Packet Padding).

Đối với chèn dữ liệu xác thực, nếu đầu ra của thuật tốn xác thực là bội số của 96 bit thì khơng được chèn. Tuy nhiên nếu ICV cĩ kích thước khác thì việc chèn thêm dữ

liệu là cần thiết. Nội dung của phần dữ liệu chèn là tùy ý, cũng cĩ mặt trong phép tính ICV và được truyền đi. Chèn gĩi ngầm định được sử dụng khi thuật tốn xác thực yêu cầu tính ICV là số nguyên của một khối b byte nào đĩ và nếu độ dài gĩi IP khơng thỏa mãn điều kiện đĩ thì chèn gĩi ngầm định được thực hiện ở phía cuối của gĩi trước khi tính ICV. Các byte chèn này cĩ giá trị là 0 và khơng được truyền đi cùng với gĩi.

Phân mảnh: khi cần thiết, phân mảnh sẽđược thực hiện sau khi đã xử lý AH. Vì vậy AH trong kiểu transport chỉđược thực hiện trên tồn bộ gĩi IP, khơng thực hiện trên từng mảnh. Nếu bản thân gĩi IP đã qua xử lý AH bị phân mảnh trên đường

truyền thì ở phía thu phải được ghép lại trước khi xử lý AH. Ở kiểu Tunnel, AH cĩ thể

thực hiện trên gĩi IP mà phần tải tin là một gĩi IP phân mảnh.

d) X lý gĩi đầu vào

Quá trình xử lý gĩi tin đầu vào ngược với quá trình xử lý gĩi tin đầu ra:

Ghép mảnh: được thực hiện trước khi xử lý AH (nếu cần).

Tìm kiếm SA: khi nhận được gĩi chứa AH header, phía thu sẽ xác định một SA phù hợp dựa trên địa chỉ IP đích, giao thức an ninh (AH) và SPI. Quá trình tìm kiếm cĩ thể xem chi tiết trong RFC 2401. Nếu khơng cĩ SA nào thích hợp được tìm thấy cho phiên truyền dẫn, phía thu sẽ loại bỏ gĩi.

Kiểm tra SN: AH luơn hỗ trợ dịch vụ chống phát lại, mặc dù dịch vụ này

được sử dụng hay khơng là hồn tồn dựa vào tùy chọn phía thu. Vì vậy quá trình kiểm tra này cĩ thểđược thực hiện hoặc khơng.

3.2.3 Giao thc đĩng gĩi an tồn ti tin ESP

3.2.3.1 Gii thiu

ESP được định nghĩa trong RFC 1827 và sau đĩ được phát triển thành RFC 2408. Cũng như AH, giao thức này được phát triển hồn tồn cho IPSec. Giao thức này cung cấp tính bí mật dữ liệu bằng việc mật mã hĩa các gĩi tin. Thêm vào đĩ, ESP cũng cung cấp nhận thực nguồn gốc dữ liệu, kiểm tra tính tồn vẹn dữ liệu, dịch vụ

chống phát lại và một số giới hạn về luồng lưu lượng cần bảo mật. Tập các dịch vụ

cung cấp bởi ESP phụ thuộc vào các lựa chọn tại thời điểm thiết lập SA, dịch vụ bảo mật được cung cấp độc lập với các dịch vụ khác. Tuy nhiên nếu khơng kết hợp sử

dụng với các dịch vụ nhận thực vào tồn vẹn dữ liệu thì hiệu quả bí mật sẽ khơng được

đảm bảo. Hai dịch vụ nhận thực và tồn vẹn dữ liệu luơn đi kèm nhau. Dịch vụ chống phát lại chỉ cĩ thể cĩ nếu nhận thực được lựa chọn. Giao thức này được sử dụng khi yêu cầu về bí mật của lưu lượng IPSec cần truyền.

Một phần của tài liệu CÔNG NGHỆMẠNG RIÊNG ẢO TRÊN INTERNET IP-VPN (Trang 52)

Tải bản đầy đủ (PDF)

(121 trang)