IP security - Bảo mật trong mô hình TCP/IP

Cơ chế bảo mật dữ liệu khi truyền giữa các máy bằng giao thức IP. Là phần mở rộng của IPv4, nhưng là thành phần bắt buộc trong IPv6. Họat động trong suốt với các ứng dụng ở lớp trên

ppt44 trang | Chia sẻ: lvbuiluyen | Lượt xem: 3339 | Lượt tải: 1download
Bạn đang xem trước 20 trang tài liệu IP security - Bảo mật trong mô hình TCP/IP, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
IP security Bảo mật trong mô hình TCP/IP Bảo mật lớp mạng với IPSec Bảo mật lớp vận chuyển với SSL Nhiều ứng dụng bảo mật ở lớp ứng dụng IPSec Cơ chế bảo mật dữ liệu khi truyền giữa các máy bằng giao thức IP. Là phần mở rộng của IPv4, nhưng là thành phần bắt buộc trong IPv6. Họat động trong suốt với các ứng dụng ở lớp trên. Các ứng dụng của IPSec Bảo vệ kết nối từ các mạng chi nhánh đến mạng trung tâm thông qua Internet. Bảo vệ kết nối truy cập trừ xa (remote access). Thiết lập các kết nối intranet và extranet. Nâng cao tính bảo mật của các giao dịch thương mại điện tử. Các ứng dụng của IPSec IPSec trong mô hình TCP/IP Hệ thống A Hệ thống B IPSec Các thành phần của IPSec IPSec không phải là một ứng dụng hòan tòan mới mà là sự tổ hợp của các cơ chế bảo mật (security mechanisms) đã có sẵn vào trong giao thức IP. Có nhiều cách tổ hợp các cơ chế khác nhau để cho ra nhiều cách thể hiện khác nhau gọi là DOI (Domain of Interpretation) Kiến trúc của IPSec AH và ESP Hai giao thức cơ bản để thực thi IPSec là AH (Authentication Header) và ESP (Encapsulating Security payload) AH chỉ cung cấp các dịch vụ xác thực (Integrity) còn ESP vừa cung cấp dịch vụ xác thực vừa cung cấp dịch vụ bảo mật (Integrity and Confidentiality) Liên kết bảo mật SA (Security association) là quan hệ truyền thông một chiều giữa hai thực thể trên đó có triển khai các dịch vụ bảo mật. Mỗi SA được nhận dạng qua 3 thông số: SPI (Security Parameters Index) Địa chỉ IP đích (Destination IP address) Nhận dạng giao thức (Security protocol Identifier) Mỗi kết nối hai chiều (connection) phải bao gồm ít nhất hai SA ngược chiều nhau. Transport SA và Tunnel SA Transport SA là các liên kết IPSec thiết lập giữa hai hệ thống đầu cuối. Tunnel SA là các liên kết IPSec được thiết lập giữa hai thiết bị kết nối mạng (router hoặc gateway), trong suốt với họat động của thiết bị đầu cuối. Việc thực thi transport và tunnel được xác định với từng giao thức (AH hoặc ESP) Authentication Header Giao thức AH trong IPSec cung cấp 3 dịch vụ cơ bản: Tòan vẹn thông tin (Integrity) Xác thực thông tin (Authentication) Chống phát lại (Anti-replay) Cấu trúc gói dữ liệu AH Cấu trúc gói dữ liệu AH Next header (8 bits): xác định lọai dữ liệu chứa bên trong tiêu đề AH, sử dụng các giá trị quy ước của TCP/IP (*) Payload length (8 bits): xác định chiều dài của tiêu đề AH, tính bằng đơn vị từ (32 bit), trừ đi 2 đơn vị (**) Ví dụ: tòan bộ chiều dài tiêu đề AH là 6 từ thì giá trị vùng Payload length là 4. Cấu trúc gói dữ liệu AH Reserved (16 bits): dành riêng chưa sử dụng, được gán chuỗi bit 0. SPI (32 bits): nhận dạng liên kết SA. Giá trị từ 1 đến 255 được dành riêng, giá trị 0 dùng cho mục đích đặc biệt, các giá trị còn lại được dùng để gán cho SPI. Sequence number (32 bits): số thứ tự gói truyền trên SA (***) Cấu trúc gói dữ liệu AH Authentication data (số bit không xác định): giá trị kiểm tra tính xác thực của dữ liệu (Integrity Check Value_ICV), kết quả của các hàm băm bảo mật. -Thành phần này phải có chiều dài là bội số của 32 bit, nếu không phải gắn bit đệm (padding). -Authentication data tính cho tòan bộ gói. Chống phát lại (Anti-replay) Khi thiết lập SA, số thứ tự (sequence number) ở hai đầu SA được reset về 0. Gói dữ liệu đầu tiên được gởi được đánh số 1. Số thứ tự tăng dần đến 232-1 thì SA được xóa, SA mới được thiết lập và sử dụng một khóa mới, số thứ tự reset về 0. Anti-replay không phải là dịch vụ bắt buộc. Chống phát lại (Anti-replay) Integrity Check Value Hai tùy chọn khác nhau để tạo ra ICV: HMAC-MD5-96 hoặc HMAC-SHA_1-96 HMAC = H[(K  opad)||H[(K  ipad)||M]] ipad = 00110110(0x36) opad = 01011100(0x5c) Kết quả HMAC được cắt lấy 96 bits đầu để đưa vào ICV (bỏ đi bao nhiêu bits?) Lặp lại 64 lần để tạo thành 512 bit (=block size) Integrity Check Value ICV được tính trên: Tòan bộ phần payload của gói IP gốc Tòan bộ phần tiêu đề AH (trừ phần Authentication data được reset về 0 khi tính) Các trường cố định trong tiêu đề IP (hoặc đóan được), các trường khác reset về 0 khi tính Transport mode và tunnel mode trong AH Transport mode và tunnel mode trong AH Encapsulating Security Payload Giao thức ESP trong IPSec họat động ở 2 chế độ: Chế độ thuần mã hóa: cung cấp các dịch vụ bảo mật (confidentiality) và chống phát lại. Chế độ bảo mật và xác thực: cung cấp các dịch vụ bảo mật, tòan vẹn, xác thực và chống phát lại. Cấu trúc gói dữ liệu ESP Cấu trúc gói dữ liệu ESP SPI (32 bits): nhận dạng liên kết SA Sequence number (32 bits): số thứ tự, dùng cho mục đích chống phát lại. Payload data (độ dài bất kỳ): là gói dữ liệu IP được mã hóa. Padding (độ dài bất kỳ) và pad length (8 bits): dữ liệu chèn và độ dài của nó. Next header (8 bits): lọai dữ liệu bên trong ESP Cấu trúc gói dữ liệu ESP Authentication Data (bội số 32 bits): Thông tin xác thực, được tính trên tòan bộ gói ESP ngọai trừ phần Authentication Data. Mã hóa và xác thực trong ESP Mã hóa: DES (thuật tóan chuẩn) 3DES (3 khóa) RC5 IDEA, CAST, Blowfish, … Xác thực: HMAC-MD5-96 HMAC-SHA_1-96 Transport mode và tunnel mode trong ESP Transport mode và tunnel mode trong ESP Quản lý khóa trong IPSec Mã hóa dùng trong IPSec là mã hóa đối xứng. Mỗi hệ thống đầu cuối IPSec có nhu cầu kết nối với nhiều hệ thống đầu cuối khác => cần quản lý khóa Quản lý bằng tay: người sử dụng tự cấu hình Quản lý tự động: dùng giao thức quản lý khóa Oakley/ ISAKMP Giao thức xác định khóa Oakley Chức năng: chọn khóa bí mật cho từng SA. Họat động: dựa trên thuật tóan Diffie-Hellman, có bổ sung các cơ chế bảo mật: Sử dụng cookie để chống tấn công từ chối dịch vụ (clogging) Sử dụng các số ngẫu nhiên (nonce) để chống phát lại (replay) Giao thức xác định khóa Oakley Tạo nhóm và phân phối khóa công khai trong nhóm. Xác thực đầu cuối khi trao đổi khóa Diffie-Hellman Cookie và tấn công từ chối dịch vụ Một hacker giả danh địa chỉ IP nguồn để gởi khóa công khai cho địa chỉ đích. Máy đích sẽ liên tục tính tóan để xác định khóa riêng mà không làm được việc khác clogging. Giải pháp: Mỗi bên phải thực hiện thủ tục trao đổi cookie (số ngẫu nhiên) ngay ở bản tin khởi tạo. Sau đó, cookie phải được xác nhận trong message trao đổi khóa. Cookie được tạo ra dùng một hàm băm nhanh (ví dụ MD5) áp dụng lên địa chỉ IP nguồn, IP đích, Port nguồn và Port đích cùng với một giá trị ngẫu nhiên. Tạo nhóm (group) Hai thực thể kết nối tạo thành một nhóm, sử dụng chung các giá trị khởi tạo của thuật tóan Diffie-Hellman (p, g). Mỗi nhóm có một quy ước riêng về cách chọn các giá trị q và g. Chống phát lại Mỗi phía định kỳ tạo ra các giá trị ngẫu nhiên (nonce). Phía bên kia sẽ xác nhận lại giá trị này sau khi đã mã hóa. Xác thực đầu cuối Xác thực bằng chữ ký số Xác thực bằng mã hóa bất đối xứng Xác thực bằng mã hóa đối xứng. Ví dụ về trao đổi khóa trong Oakley Giao thức quản lý khóa ISAKMP ISAKMP (Internet Security Association and Key Management Protocol) định nghĩa thủ tục và cấu trúc bản tin sử dụng để thiết lập, duy trì và giải tỏa các liên kết bảo mật SA. Cấu trúc gói dữ liệu ISAKMP Các thủ tục trong ISAKMP Các thủ tục trong ISAKMP (tt) IPSec trong Windows server Đối với IPv4, IPSec là một tùy chọn và do đó, IPSec cũng được triển khai dưới dạng các policy trong các hệ thống Windows. Mỗi IPSec policy được tạo thành từ: Filter list: các bộ lọc để tách lấy lọai dữ liệu cần áp dụng IPSec (lọc theo địa chỉ, giao thức, port, …) Action: cách xử lý ứng với từng lọai dữ liệu (Permit, Block, Negotiate) Định nghĩa IPSec policy trong Windows Dùng phần mềm Wireshark để bắt gói trong mạng LAN Dùng DNS động: đăng ký miễn phí trên no-ip.com