Chế độ Tunnel

Một phần của tài liệu Tìm hiểu về An ninh mạng và kỹ thuật tấn công Trojan and Backdoor (Trang 50)

Không giống như Transport mode, Tunnel mode bảo vệ toàn bộ gói dữ liệu. Toàn bộ gói dữ liệu IP được đóng gói trong một gói dữ liệu IP khác và một IPSec Header được chèn vào giữa phần đầu nguyên bản và phần mới của IP.

Hình 2.7: Gói tin ở chế độ Tunnel

Trong AH Tunnel mode, phần đầu mới (AH) được chèn vào giữa phần Header mới và phần Header nguyên bản, như hình bên dưới.

Hình 2.8: Gói tin nguyên bản

Hình 2.9: Gói tin Tunnel

Chế độ Tunnel thường dùng cho những cấu hình sau: - Host to host.

- Host to network. - Network to network.

Quá trình giao tiếp có thể diễn ra khi chế độ Tunnel được định nghĩa như chế độ IPSec ở đây:

- Dữ liệu được di chuyển sử dụng gói dữ liệu IP không được bảo vệ từ một máy tính trên mạng cá nhân.

2.4.1. Giới thiệu về IKE

IKE: Internet Key Exchange

Là một giao thức thực hiện quá trình trao đổi khóa và thỏa thuận các thông số bảo mật với nhau như: Mã hóa như thế nào? Mã hóa bằng thuật toán gì? Bao lâu trao đổi khóa một lần? Sau khi trao đổi khóa xong thì sẽ có một hợp đồng giữa hai đầu cuối, khi đó IPSec SA được tạo ra.

SA là những thông số bảo mật đã được thỏa thuận thành công, SA là một mối quan hệ xác định cách thức sử dụng dịch vụ an ninh và cần cái đặt như thế nào?

Trong quá trình trao đổi khóa thì IKE dùng thuật toán mã hóa đối xứng, những khóa này sẽ được thay đổi theo thời gian. Đây là đặc tính rất hay của IKE giúp hạn chế tình trạng bẻ khóa của các hacker.

IKE còn dùng hai giao thức khác để chứng thực đầu cuối và tạo khóa: ISAKMP (Internet Security Association and Key Management Protocol) và Oakley.

- ISAKMP: Là giao thức thực hiện việc thiết lập, thỏa thuận và quản lý chính sách bảo mật SA.

- Oakley: Là giao thức làm nhiệm vụ chứng thực khóa, bản chất là dùng thuật toán Diffi-Hellman để trao đổi khóa bí mật thống qua môi trường chưa bảo mật.

2.4.2. Các giai đoạn của IKE (IKE Phase)

Giai đoạn 1 và 2 là hai giai đoạn tạo nên phiên làm việc dựa trên IKE, 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.

Hình 2.10: Chế độ IKE (IKE mode)

Giai đoạn hoạt động của IKE cũng được xem tương tự như là quá trình bắt tay trong TCP/IP. Quá trình hoạt động của IKE được chia ra làm 2 giai đoạn chính: Giai đoạn 1 và giai đoạn 2, cả hai giai đoạn này nhằm thiết lập kênh truyền an toàn giữa 2 điểm. Ngoài giai đoạn 1 và giai đoạn 2 còn có giai đoạn 1,5 tùy chọn.

Hình 2.11: Giai đoạn IKE

Giai đoạn 1:

Đây là giai đoạn bắt buộc phải có. Giai đoạn này thực hiện việc chứng thực và thỏa thuận các thông số bảo mật, nhằm cung cấp một kênh truyền bảo mật giữa hai đầu cuối. Các thông số sau khi đồng ý giữa 2 bên gọi là SA, SA trong giai đoạn này gọi là ISAKMP SA hay IKE SA.

Giai đoạn này sử dụng một trong 2 chế độđể thiết lập SA: Chế độ chính (Main mode) và chế độ linh hoạt (Aggressive mode).

Các thông số bảo mật bắt buộc phải thỏa thuận trong giai đoạn 1 này là: - Thuật toán mã hóa: DES, 3DES, AES.

- Thuật toán hash: MD5, SHA.

- Phương pháp chứng thực: Preshare-key, RSA.

- Thông điệp cuối cùng sẽ chứng thực bên vừa gửi.

Giai đoạn 1.5:

Đây là giai đoạn không bắt buộc. Giai đoạn 1 cung cấp cơ chế chứng thực giữa 2 đầu cuối tạo nên một kênh truyền bảo mật. Giai đoạn 1.5 sử dụng giao thức Extended Authentication (Xauth). Giai đoạn này thường sử dụng trong Remote Access VPN.

Giai đoạn 2:

Đây là giai đoạn bắt buộc, đến giai đoạn này thì thiết bị đầu cuối đã có đầy đủ các thông số cần thiết cho kênh truyền an toàn. Quá trình thỏa thuận các thông số ở giai đoạn 2 là để thiết lập IPSec SA dựa trên những thông số của giai đoạn 1. Chế độ nhanh (Quick mode) là phương thức được sử dụng trong giai đoạn 2.

Các thông số mà chế độ nhanh (Quick mode) thỏa thuận trong giai đoạn 2: - Giao thức IPSec: ESP hoặc AH.

- Chế độ IPSec: Tunnel hoặc Transport.

- IPSec SA lifetime: Dùng để thỏa thuận lại IPSec SA sau một khoảng thời gian mặc định hoặc được chỉ định.

- Trao đổi khóa Diffie-Hellman.

- IPSec SA của giai đoạn 2: Chứa các thông số để tạo nên kênh truyền bảo mật, còn IPSec SA chứa các thông số để đóng gói dữ liệu theo ESP hay AH, hoạt động theo chế độ Tunnel hay chế độ Transport.

2.5. Chính sách bảo mật IPSec và các phương thức xác thực

2.5.1. Chính sách bảo mật IPSec

IPSec policy bao gồm một hoặc nhiều chính sách xác định cách thức hoạt động IPSec. Người quản trị có thể cài đặt IPSec thông qua một Policy.

Mỗi Policy có thể chứa một hoặc nhiều chính sách, nhưng chỉ có thể xác định một Policy hoạt động ở máy tính tại một thời điểm bất kì. Người quản trị phải kết

hợp tất cả những chính sách mong muốn vào một Single Policy. Mỗi chính sách bao gồm:

- Filter: Báo cho Policy những thông tin lưu chuyển nào sẽ áp dụng với

Filter action. Ví dụ: Administrator có thể tạo một Filter chỉ xác định các lưu thông dạng HTTP hoặc FTP.

- Filter action: Báo cho Policy phải đưa ra hành động gì nếu thông tin lưu

chuyển trùng với định dạng đã xác định tại Filter. Ví dụ: Thông báo cho IPSec chặn tất cả những giao tiếp FTP, nhưng với những giao tiếp HTTP thì dữ liệu sẽ được mã hóa. Filter action cũng có thể xác định những thuật toán mã hóa và hàm băm mà Policy nên sử dụng.

- Authentication Mode: IPSec cung cấp 3 phương thức xác thực:

• Certificate: Khi các computer triển khai IPSec nhận Certificate từ một Certificate Authority-CA server.

• Kerberos: Giao thức chứng thực phổ biến trong Active Directory Domain.

• Preshare key: Khóa ngầm hiểu, một phương thức xác thực đơn giản. Mỗi chính sách của IPSec Policy có thể bao gồm nhiều phương thức xác thực trên.

2.5.2. Chính sách mặc định

IPSec có ba chính sách mặc định được tạo sẵn tên là: Client, Server và

Secure server. Cả ba chính sách này đều ở trạng thái chưa áp dụng. Bạn cần lưu ý,

ngay cùng một thời điểm thì chỉ có một chính sách được áp dụng và hoạt động, có nghĩa là khi bạn áp dụng một chính sách mới thì chính sách đang hoạt động hiện tại sẽ trở về trạng thái không hoạt động.Chi tiết của ba chính sách tạo sẵn này:

- Client (respond only)

Đây là chính sách thụ động, chính sách này quy định máy tính của bạn không chủ động dùng IPSec trừ khi được yêu cầu dùng IPSec từ máy đối tác. Chính sách này cho phép bạn có thể kết nối cả với các máy tính dùng IPSec hoặc không dùng IPSec. Ví dụ: Giả sử bạn đã ấn định chính sách này trên máy client và cố gắng truy cập một website trên một máy server không yêu cầu IPSec. Trong trường hợp này, máy server (web server) sẽ không cố gắng thực hiện IPSec với máy client nên máy

packet).

• Filter Action: Default Response (có nghĩa là thao tác bảo mật không được cấu hình và bộ lọc Negotiate Security filter action được dùng).

• Authentication: Kerberos.

Mặc định quy tắc này sẽ kích hoạt tất cả các chính sách IPSec. Bạn có thể cho quy tắc này không hoạt động, nhưng không thể gỡ bỏ nó.

- Server (request security)

Khi máy chủ thiết lập chính sách này, khi có kết nối đến nó hay từ nó đi nơi khác thì máy chủ sẽ yêu cầu thương lượng phương thức bảo mật (trong windows tất cả các máy tính trong một Domain đều có thể thương lượng bảo mật với nhau qua giao thức Kerberos). Với các máy trả lời là có thể thương lượng bảo mật ví như cùng trong domain có thể sử dụng Kerberos thì hai máy sẽ sử dụng phương thức đó để mã hóa và truyền dữ liệu với nhau. Nhưng khi nó yêu cầu thương lượng bảo mật một số máy không trong Domain thì sẽ không thể thương lượng được thì quá trình truyền dữ liệu vẫn được thực hiện nhưng không được mã hóa thông tin và đáp ứng yêu cầu bảo mật cao.

Thiết lập mặc định này máy chủ sẽ yêu cầu toàn bộ giao tiếp IP phải thương lượng bảo mật trước khi truyền và tự động trả lời cho quá trình thương lượng bảo mật. Nếu thương lượng thất bại quá trình truyền dữ liệu không được mã hóa. Gói ICMP không luôn luôn được cho phép và không cần mã hóa. Trong thiết lập mặc định của Server (request security) bao gồm 3 chính sách bảo mật:

Với thiết lập mặc định này sẽ được áp dụng cho toàn bộ giao tiếp thông qua IP, được áp dụng với Port, IP nguồn là địa chỉ của chính máy yêu cầu, Port và IP đích là các máy tính kết nối với nó.

• IP Filter List: All IP Traffic.

• Filter action: Permit, Request Security, Require Security (mặc đinh là Require Security).

• Authentication: CA, Kerberos, Preshare key (mặc định là Kerberos).

Thiết lập All ICMP Traffic:

• IP Filter List: All ICMP Traffic. • Filter action: Permit.

• Authentication: Không cần xác thực. • Dynamic

• IP Filter List:<Dynamic>. • Filter action: Default Response. • Authentication: Kerberos. - Secure Server (require security)

Chính sách này quy định không cho phép bất kỳ phiên trao đổi dữ liệu nào với server hiện tại mà không dùng IPSec. Chính sách này có ba quy tắc chứa các thiết lập sau:

Thiết lập All IP Traffic:

• IP Filter List: All IP Traffic. • Filter action: Require Security. • Authentication: Không cần xác thực.

Thiết lập All ICMP Trafic:

• IP Filter List: All ICMP Traffic. • Filter action: Permit.

• Authentication: Kerberos.

• Dynamic (Default response rule): • IP Filter List: <Dynamic>. • Filter action: Default Response. • Authentication: Kerberos.

2.5.3. Phương pháp xác thực

IPSec cung cấp 3 phương thức xác thực: Certificate, Kerberos, Preshare key.

- Certificate

này để xin cấp giấy chứng nhận cho riêng mình có như vậy khi thông tin bị đánh cắp hay sửa đổi thì nhờ có CA Server sẽ xác thực tính tin cậy của dữ liệu nhận được cho người dùng biết. Qui trình này như sau:

CA Server sẽ lấy thông tin Public Key của người dùng nào đó gọi là CRC hay thông tin đặc trưng của người dùng đó.

Kế tiếp nó mã hóa CRC này với chính Private Q của nó cho ra một giá trị S và giá trị này được công khai. Như vậy lúc này mỗi tài khoản người dùng sẽ tồn tại 2 Public Key và một Private Key.

Hình 2.13: Mã hóa bằng khóa do CA cấp

Có như vậy khi B nhận được một thông tin từ A nó sẽ đem thông tin S của nó giải mã với P của CA Server và thu được CRC nào đó.

Nó sẽ lấy tiếp giá trị CRC vừa thu được đem so sánh với CRC của chính mình nếu trùng khớp thì cho qua. Ngược lại nó biết đây chính là nội dung không đáng tin cậy do bị sửa đổi từ trước.

Hình 2.14: Giải mã bằng private key do CA cấp - Kerberos

Giao thức Kerberos là một giao thức an toàn, và nó cung cấp xác thực lẫn nhau giữa một máy khách và máy chủ. Trong giao thức Kerberos, sự xác nhận của khách hàng đối với máy chủ và máy chủ xác thực chính nó đối với khách hàng. Với xác thực lẫn nhau, mỗi máy tính hoặc một người dùng và máy tính có thể xác minh căn cước của nhau. Kerberos là cực kỳ hiệu quả để xác thực khách hàng trong môi trường mạng doanh nghiệp lớn. Kerberos sử dụng mã hóa khóa bí mật cho lưu lượng truy cập xác thực của khách hàng.

Chìa khóa bí mật tương tự cũng được sử dụng bởi các giao thức Kerberos trên máy chủ để giải mã lưu lượng truy cập xác thực.

Giao thức Kerberos được xây dựng trên đầu trang của một bên thứ ba đáng tin cậy, gọi là Trung tâm phân phối khóa (KDC). Key Distribution Center (KDC) hoạt động như một máy chủ xác thực và cả hai như là một máy chủ cấp vé. Khi khách hàng cần truy cập một nguồn tài nguyên trên máy chủ, các thông tin người dùng (mật khẩu, thẻ thông minh) được trình bày cho Trung tâm phân phối khóa (KDC) để xác thực. Nếu các thông tin người dùng được xác minh thành công tại Trung tâm phân phối chính (KDC), Trung tâm phân phối chính (KDC) sẽ cấp Vé (TGT) cho khách hàng. Các vé được cấp này được lưu trữ trong máy địa phương để sử dụng trong tương lai. Các vé được cấp hết hạn khi người dùng ngắt kết nối hoặc log off mạng, hoặc sau khi nó hết hạn. Thời hạn sử dụng mặc định là một ngày (86.400 giây).

Hình 2.15: Quá trình xin key Kerberos qua DC

Khách hàng muốn truy cập một nguồn tài nguyên trên một máy chủ từ xa, khách hàng xuất trình đã được cấp và lưu trữ vé được cấp (TGT) để các KDC chứng thực. Các Trung tâm phân phối chính xác thực (KDC) trả về một vé phiên cho khách hàng để truy cập vào tài nguyên. Khách hàng trình bày các vé phiên với máy chủ tài nguyên từ xa. Các máy chủ từ xa cho phép phiên làm việc để được thành lập để tài nguyên sau khi chấp nhận vé phiên.

- Preshare key

Preshared có nghĩa là các bên đồng ý về một khóa chia sẻ bí mật, được sử dụng để xác thực trong một chính sách IPSec.

Trong quá trình đàm phán an ninh, thông tin được mã hóa trước khi truyền đi bằng cách sử dụng một khóa phiên. Các khóa phiên được tạo ra bằng cách sử dụng một tính toán Diffie-Hellman và chia sẻ khóa bí mật. Thông tin được giải mã ở đầu nhận được sử dụng cùng khóa. Một IPSec peer xác nhận gói dữ liệu đồng đẳng khác bằng cách giải mã và xác minh của băm bên trong các gói tin (các băm bên trong gói tin là một băm của khóa chia sẻ trước). Nếu xác thực không thành công, gói tin sẽ bị loại.

Việc sử dụng các chứng thực khóa chia sẻ trước là không nên bởi vì nó là một phương pháp xác thực tương đối yếu. Preshared chính xác thực tạo ra một khóa chủ đó là kém an toàn (có thể sản xuất một dạng yếu hơn của mã hóa) hơn so với chứng chỉ hoặc các giao thức Kerberos V5. Ngoài ra, các khóa chia sẻ trước được

lưu trữ thô trong Registry. Trong Active Directory, các khóa chia sẻ trước được lưu trữ trong định dạng thập lục phân có thể đọc được.

- Dữ liệu không bị loại bỏ

- Sự gián đoạn các dịch vụ mạng.

Khi nhận được gói tin, người nhận sẽ giải mã dữ liệu lại dạng cơ bản ban đầu. Cho dù dữ liệu có bị chặn trong suốt quá trình trao đổi dữ liệu.

Người gửi và người nhận, phụ thuộc vào quá trình mã hóa,dưới hình thức là một hệ thống mã hóa. Hệ thống mã hoá (Cryptosystems) có 2 loại sau :

• Đối xứng (Symmetric). • Bất đối xứng (Asymmetric).

Một hệ thống mã hóa được phân loại dựa vào con số của khoá mà nó dùng. Một khoá có thể là một con số, một từ, hoặc một cụm từ được dùng vào mục đích mã hóa và giải mã dữ liệu.

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

Mã hóa đối xứng, tức là cả hai quá trình mã hóa và giải mã đều dùng một chìa khóa. Để đảm bảo tính an toàn, chìa khóa này phải được giữ bí mật. Vì thế các thuật toán loại này còn có tên gọi khác là secret key cryptography (hay private key cryptography), tức là thuật toán mã hóa dùng chìa khóa riêng (hay bí mật). Các thuật toán loại này lý tưởng cho mục đích mã hóa dữ liệu của cá nhân hay tổ chức đơn lẻ nhưng bộc lộ hạn chế khi thông tin đó phải được chia sẻ với một bên thứ hai.

Giả sử nếu Alice chỉ gửi thông điệp đã mã hóa cho Bob mà không hề báo trước về thuật toán sử dụng, Bob sẽ chẳng hiểu Alice muốn nói gì. Vì thế bắt buộc Alice phải thông báo cho Bob về chìa khóa và thuật toán sử dụng tại một thời điểm nào đó trước đấy. Alice có thể làm điều này một cách trực tiếp (mặt đối mặt) hay

gián tiếp (gửi qua email, tin nhắn...). Điều này dẫn tới khả năng bị người thứ ba xem

Một phần của tài liệu Tìm hiểu về An ninh mạng và kỹ thuật tấn công Trojan and Backdoor (Trang 50)

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

(94 trang)
w