Giao thức ESP 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, nhưng sử dụng mã hố mà khơng yêu cầu xác thực khơng đảm bảo tính bảo mật. Khơng như AH, header của gói tin IP, bao gồm các option khác. ESP thực hiện trên top IP sử dụng giao thức IP và mang số hiệu 50 và AH mang số hiệu 51.
0 - 7 bit 8 - 15 bit 16 - 23 bit 24 - 31 bit Security parameters index (SPI)
Sequence number
Payload data (variable) Padding (0-255 bytes)
Pad Length Next Header Authentication Data (variable)
Ý nghĩa của các phần:
Security parameters index (SPI)
Nhận ra các thơng số được tích hợp với địa chỉ IP.
Sequence number
Tự động tăng có tác dụng chống tấn cơng kiểu replay attacks.
Payload data
Cho dữ liệu truyền đi
Padding
Sử dụng vài block mã hoá
Pad length
Độ lớn của padding.
Next header
Nhận ra giao thức được sử dụng trong q trình truyền thơng tin.
Authentication data
7. Trao đổi khóa trong IPSEC - Key Exchange(IKE)
IPsec được thực hiện trong nhân với các trình quản lý các key và quá trình thương lượng bảo mật ISAKMP/IKE từ người dùng. Tuy nhiên một chuẩn giao diện cho quản lý key, nó có thể được điều khiển bởi nhân của IPsec.Bởi vì được cung cấp cho người dùng cuối, IPsec có thể được triển khai trên nhân của Linux. Dự án FreeS/WAN là dự án đầu tiên hoàn thành việc thực hiện IPsec trong mã nguồn mở cụ thể là Linux. Nó bao gồm một nhấn IPsec stack (KLIPS), kết hợp với trình quản lý key là deamon và rất nhiều shell scripts. Dự án FreeS/WAN được bắt đầu vào tháng 3 năm 2004. Openswan và strongSwan đã tiếp tục dự án FreeS/WAN. Dự án KAME cũng hoàn thành việc triển khai sử dụng IPsec cho NetBSB, FreeBSB. Trình quản lý các khố được gọi là racoon. OpenBSB được tạo ra ISAKMP/IKE, với tên đơn giản là isakmpd (nó cũng được triển khai trên nhiều hệ thống, bao gồm cả hệ thống Linux)
7.1 Trao đổi khóa trong IpSec - Key Exchange(IKE)
Chức năng chính của IKE là chấp nhận các thiết bị trao đổi thơng tin dưới mức an tồn. Thêm vào khóa mã hóa là sử dụng cho việc chứng thực thơng tin và mã hóa thơng tin. IKE được biết đến như một giao thức lai bởi vì nó được phối hợp từ ba giao thức khác. Đầu tiên là ISAKMP(internet secury
associaction and key management protocol). Cung cấp một nền tảng cho
việc trao đổi khóa mã hóa và bảo mật thông tin. ISAKMP hổ trợ nhiều phương thức trao đổi khóa khác nhau, hai giai đoạn chính của ISAKMP đó là
7.1.2 ISAKMP phase 1: Giai đoạn I của IKE đầu tiên xác nhận các điểm thơng tin, và sau đó thiết lập một kênh bảo mật cho sự thiết lạp SA. 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 tốn mã hóa, hàm băm, và các phương
pháp xác nhận bảo vệ mã khóa.
Sau khi cơ chế mã hóa và hàm băm đã được đồng ý ở trên, một khóa chi 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
-Số ngẫu nhiên known as nonces (used for signing purposes) Nếu hai bên đồng ý sử dụng phương pháp xác nhận dựa trên public key, chúng cũng cần trao đổi IDs. Sau khi trao đổi các thông tin cần thiết, cả hai bên phát sinh những key riêng của chính mình 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
7.1.2 ISAKIMP phase 2:
Trong khi giai đoạn I thỏa thuận thiết lập SA cho ISAKMP, giai đoạn II giải
quyết bằng việc thiết lập SAs cho IPSec. Trong giai đoạn này, SAs dùng nhiều dịch vụ khác nhau thỏa thuận. Cơ chế xác nhận, hàm băm, và thuật
tốn mã hóa bảo vệ gói dữ liệu IPSec tiếp theo (sử dụng AH và ESP) dướihình thức một phần của giai đoạn SA.Sự thỏa thuận của giai đoạn xảy ra thường xuyên hơn giai đoạn I. Điển hình, sự thỏa thuận có thể lặp lại sau 4-5 phút. Sự thay đổi thường xuyên các mã khóa ngăn cản các hacker bẻ gãy những khóa này và sau đó là nội dung của gói dữ liệu.
Tổng quát, một phiên làm việc ở giai đoạn II tương đương với một phiên làmviệc đơn của giai đoạn I. Tuy nhiên, nhiều sự thay đổi ở giai đoạn II cũng có thể được hổ trợ bởi một trường hợp đơn ở giai đoạn I. Điều này làm quá trình giao dịch chậm chạp của IKE tỏ ra tương đối nhanh hơn
7.2 IKE Modes
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) 7.2.1. Main Mode
Main mode xác nhận và bảo vệ tính đồng nhất của các bên có liên quan trong qua trình giao dịch. Trong chế độ này, 6 thông điệp được trao đổi giữa các điểm:
· 2 thông điệp đầu tiên dùng để thỏa thuận chính sách bảo mật cho sự thay đổi.
· 2 thông điệp kế tiếp phục vụ để thay đổi các khóa Diffie-Hellman và nonces. Những khóa sau này thực hiện một vai tro quan trọng trong cơ chế mã hóa.
· Hai thơng điệp cuối cùng của chế độ này dùng để xác nhận các bên giao dịch với sự giúp đỡ của chữ ký, các hàm băm, và tuỳ chọn với chứng nhận.
7.2.2 Aggressive Mode
Aggressive mode về bản chất giống Main mode. Chỉ khác nhau thay vì main mode có 6 thơng điệp thì chết độ này chỉ có 3 thơng điệp được trao đổi. Do đó, Aggressive mode nhanh hơn mai mode. Các thơng điệp đó bao gồm : · Thơng điệp đầu tiên dùng để đưa ra chính sách bảo mật, pass data cho khóa chính, và trao đổi nonces cho việc ký và xác minh tiếp theo.
· Thông điệp kế tiếp hồi đáp lại cho thơng tin đầu tiên. Nó xác thực người nhận và hồn thành chính sách bảo mật bằng các khóa.
· Thơng điệp cuối cùng dùng để xác nhận người gửi (hoặc bộ khởi tạo của phiên làm việc).
Cả Main mode và Aggressive mode đều thuộc giai đoạn I. 7.2..3 Quick Mode
Chế độ thứ ba của IKE, Quick mode, là chế độ trong giai đoạn II. Nó dùng để thỏa thuận SA cho các dịch vụ bảo mật IPSec. Ngoài ra, Quick mode cũng có thể phát sinh khóa chính mới. Nếu chính sách của Perfect Forward Secrecy (PFS) được thỏa thuận trong giai đoạn I, một sự thay đổi hoàn toàn Diffie-Hellman key được khởi tạo. Mặt khác, khóa mới được phát sinh bằng các giá trị băm
7.2.4 New Group Mode
New Group mode được dùng để thỏa thuận một private group mới nhằm tạo điều kiện trao đổi Diffie-Hellman key được dễ dàng. Hình 6-18 mơ tả New Group mode. Mặc dù chế độ này được thực hiện sau giai đoạn I, nhưng nó khơng thuộc giai đoạn II.
Ngồi 4 chế độ IKE phổ biến trên, cịn có thêm Informational mode. Chế độ này kết hợp với quá trình thay đổ của giai đoạn II và SAs. 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 q 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.
Chương IV.Demo Thực hành: Chuẩn bị:
-1 Server: Windơw Server 2008 ( domain thuchanhipsec.local),ipv6 -1 client: win 2k8 ,ipv6
-Cài wireshark,Network monitor trên máy Server
Tại máy Server, vào Run=>ncpa.cpl
Hộp thoại Local Area Connection Properties, bỏ dấu chọn Internet
Protocol Version 4 (TCP/IPv4), chọn Internet Protocol Version 6 (TCP/IPv6), chọn Properties
Trong cửa sổ Internet Protocol Version 6 (TCP/IPv6) Properties, nhập thơng số như hình : IPv6 address: fc00:192:168:5::25
Subnet prefix length: 64
Preferred DNS server: fc00:192:168:5::25
-Tương tự ta cũng cấu hình địa chỉ IPv6 của client fc00:192:168:5::27, Preferred DNS server: fc00:192:168:5::25
2.Khi chưa triển khai IPSec
+ 2 máy chưa triển khai IPSec. Trên network monitor của Server. Menu
Capture. Nhấn Pause để thấy kết quả khi capture gói tin ICMP (Destination
Mac. Source Mac. IP) từ máy nào đến máy nào
--Cụ thể gói tin ICMP thì trong phần dữ liệu chưa có mã hóa. Dữ liệu gồm 32 bit. Từ a đến w và a đến i đổi từ con số hexa.
** Tương tự nếu ta gửi gói tin ICMP từ Server qua máy client. Thì khi client capture gói tin dữ liệu cũng khơng bị mã hóa. ( Dữ liệu cũng là 32 bit từ a dến w và a đến i đổi từ con số hexa của gói tin)
3.Cấu hình IP Sec
+ Chúng ta lần lượt cấu hình IP Sec trên máy Server và máy client
-Server: Vào Run=> Gõ secpol.msc để vào Local Security Policy
+ Trong Local Security Policy. Right click vào IP Security Policices on
+ Màn hình Welcome nhấn Next
+ Hộp thoại IP Security Policy Name. Điền 1 tên bất kỳ. Nhấn Next
+ Hộp thoại Requests for Secure Communication. Gỡ dấu check Active
the default response rule. Nhấn Next
+ Right click vào policy mới tạo. Chọn Assign
+ Tiếp tục right click vào policy. Chọn Properties
+ Hộp thoại Welcome. Nhấn Next
+ Hộp thoại Tunnel Endpoint. Để mặc định. This rule does not specify a
+ Hộp thoại Network Type. Chọn Local area network (Lan). Nhấn Next
+ Hộp thoại IP Filter List. chúng ta có thể chọn All IP Traffic (mặc định của IPsec). Chọn Add.
Click add,nhấn Next để chọn source address
Next để chọn 1 loại giao thức
Nhấn Next,ấn finish .Ra bảng IP filter,chọn IP filter list mà ta vừa cấu hình
Click chọn Filter Action,nhấn Edit để chỉnh sửa kiểu Security methods,chọn Negotiate security ,sau đó nhấn Edit để chỉnh sửa
Chọn Custom,click setting ,tại đây ta có thể chọn các kiểu mã hóa dữ liệu như MD5,SHA1..
Sau đó ta chọn OK 2 lần
Accept unsecured communication,but always respond using ipsec(Chấp nhận khơng có bảo đảm thông tin liên lạc, nhưng luôn luôn đáp ứng bằng cách sử dụng ipsec)
Allow fallback to unsecured communication if a secure connection can not be established(Cho phép dự phịng để giao tiếp khơng có bảo đảm nếu một kết nối an tồn khơng thể được thiết lập)
Use session key perfect forward secrecy(PFS)(Sử dụng khóa an tồn chuyển tiếp cho phiên làm việc)
Ấn Finish để kết thúc
Chọn Apply ,OK để kết thúc quá trình cài đặt ,cấu hình Ipsec
** Trên máy Client ta cũng làm tương tự như vậy. Bây giờ ta kiểm tra xem gói tin ICMP gửi đi đã được mã hóa hay chưa ?
---Trường hợp 1: Server cấu hình IPsec,Client khơng cấu hình IPSec - Trên máy Client thực hiện lệnh ping –t tới Server. Báo khơng thấy đích đến,do ta đã cấu hình IPsec trên Server Block,negotiate security tất cả traffic từ bên ngoài vào,tắt IPsec trên Client
Trên Network monitor Giao thức IKE xuất hiện,IKE xác nhận các điểm thơng tin, và sau đó thiết lập một kênh bảo mật cho sự thiết lập SA. 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 tốn mã hóa, hàm băm, và các phương pháp xác nhận bảo vệ mã khóa.
Bật wireshark trên Server ta thấy: ISAKMP(internet secury associaction
and key management protocol) việc trao đổi xác thực khóa 2 bên,nếu Client khơng có khóa sẽ nhận được kết quả như trên
---Trường hợp 2: Server,Client đều cấu hình IPsec
Khi đã bật Ipsec trên Client ta thấy kết quả Ping –t tới Server trên Network moniter trên Server
ICMPv6 Echo Reply,Echo Request đã được thay thế bằng ESP
Nếu ta chọn Block tất cả traffic trong IPSEc thì kết quả như sau:
Kết quả đạt được và phương hướng phát triển đề tài
Dưới sự hướng dẫn tận tình của thầy giáo hướng dẫn ,sự chỉ bảo các thầy trong trường Học Viện Kỹ Thuật Mật Mã,và sự tìm tịi nghiên cứu của các thành viên trong nhóm,cơ bản chúng em đã xây dựng,triển khai thành công công nghệ bảo mật giao thức IP-IPSec,quản trị một cách cơ bản và tổng quan nhất Window Server 2008.
Để thực sự trở thành những Kỹ Sư,Chuyên gia trong lĩnh vực An Tồn Thơng Tin mà trường đang đào tạo ,nhóm em sẽ tích cực tìm hiểu chun sâu về các vấn đề bảo mật của cơng nghệ IPSec ngồi mơi trường window server 2008,unix,linux......và những vấn đề liên quan khác nữa.
Kinh mong các thầy cơ đóng góp ý kiến để bài Báo cáo thực tập của nhóm em được hồn chỉnh và tương lai khơng xa sẽ được áp dụng thực tiễn.
Chúng em xin chân thành cảm ơn
Tài liệu tham khảo
1. www.ddth.com/showthread.php/186571-Bài-viết-về-IPsec 2. http://kmasecurity.net 3. http://www.vnpro.vn/ 4. http://technet.microsoft.com 5. http://www.nhatnghe.com/ 6. http://vnexperts.net/ 7. http://ictpress.vn/ 8. http://technet.com.vn/