Các yêu cầu bảo mật thông tin trên mạng

Một phần của tài liệu Nghiên cứu giao thức Mobile IP và giải pháp bảo mật (Trang 75)

Các mục tiêu chính của bảo mật thông tin trong mạng bao gồm:

- Bí mật dữ liệu (Data confidentiality): chỉ cho phép những người có quyền mới được truy cập thông tin;

- Toàn vẹn dữ liệu (Data integrity): những người không được phép thì không được quyền thay đổi dữ liệu;

- Xác thực (Authentication): đảm bảo định danh của đích cũng như xuất xứ của thông tin;

- Nhất quán (Non-repudiation): một thực thể không thể tùy ý phủ nhận việc gửi đi một gói tin hợp lệ do thực thểđó gửi đi;

- Kiểm soát truy cập (Access control): những người không có quyền không thể truy cập các tài nguyên;

- Tính sẵn sàng và hoạt động đúng của dịch vụ (Availability and correct functioning of services): thông tin luôn sẵn sàng cho những người dùng hợp lệ khi người dùng cần tới.

3.1.2. Các nguy cơ vi bo mt ca Mobile IP

Môi trường điện toán di động về tiềm năng là rất khác biệt so với môi trường điện toán truyền thống. Trong hầu hết trường hợp, các máy tính di động sẽ

kết nối với mạng thông qua các liên kết không dây. Các liên kết trong môi trường không dây là dễ bị tổn thương bởi việc nghe lén thụđộng (eavesdropping), tấn công replay chủđộng (active replay attack) và các kiểu tấn công chủđộng khác.

Bên cạnh các nguy cơ của kết nối không dây (không xét tới trong luận văn này như: nghe lén - eavesdropping, truy cập trái phép – unauthorized access, các kiểu tấn công trên tầng MAC…) các vấn đề và nguy cơ về bảo mật do đặc thù của Mobile IP bao gồm:

- Định hướng lại (redirection): trong cơ chế hoạt động của Mobile IP có sự định hướng lại gói tin từ HA tới MN khi MN không ở mạng thường trú. Do dó, các định hướng giả mạo lại gói tin là một nguy cơ

an ninh chính của Mobile IP. Xác thực giữa MN và HA của Mobile IP

đã cung cấp một cơ chế cơ bản để tránh kiểu tấn công này.

- Các thông điệp ARP (Addresss Resolution Protocol): không được xác thực có thể bị lợi dụng để đánh cắp dữ liệu của một trạm khác. Việc sử dụng ARP trong Mobile IP sẽ chứa đựng nguy cơ đó, các trạm không có quyền vẫn có thể sử dụng ARP để tiến hành tấn công giả

mạo (masquerading attack). Hiện tại chưa có giải pháp nào để cung cấp ARP một cách bảo mật. Tuy nhiên, đây là một vấn đề của tầng liên kết dữ liệu và cần được khắc phục ở tầng liên kết dữ liệu chứ

không phải Mobile IP.

- Xác thực (authentication): bên nhận một thông điệp phải có khả năng xác định xuất xứ của thông điệp đó. Do đó, các thủ tục xác thực giữa MA và MN là một chức năng cần có. Tuy nhiên, kỹ thuật xác thực trong Mobile IPv4 giữa MN và FA chưa đủ tin cậy [21]

- Mobile IP không đưa ra yêu cầu xác thực các thông điệp quảng bá (Agent Advertisement) của HA, FA cũng như thông điệp mời quảng bá (Agent Solicitation) của MN. Do đó, một FA giả mạo có thể gửi một quảng bá để nhận được từ MN một yêu cầu đăng ký mới và chưa

được sử dụng. FA giả mạo này sau đó có thể dùng dữ liệu đó để thực hiện các tấn công đối với HA như tấn công từ chối dịch vụ (DoS – Denial-of-Service) hay nghe trộm (man-in-the-middle).

- Tuy Mobile IP chỉ ra rằng một thông điệp quảng bá từ một FA mới không nên tác động để một MN tiến hành đăng ký mới nếu nhưđăng ký hiện tại của MN chưa hết hạn và vẫn đang nhận quảng bá từ FA mà MN đã đăng ký. Nhưng một FA giả mạo vẫn có thể khiến các MN

đang yêu cầu FA mới hoặc các MN đã mất kết nối với FA trước đó. - Lọc đầu vào (Ingress Filtering): Các bộđịnh tuyến ngoại biên của các

nhà cung cấp dịch vụ (ISP) hay của một mạng ngoài có thể bỏ qua các gói tin chứa địa chỉ IP nguồn không thuộc mạng đó. Vấn đề này được gọi là lọc đầu vào. Trong Mobile IP, các MN đang ở mạng ngoài – nhưđang ở một mạng của ISP khác - sử dụng địa chỉ IP gốc của MN sẽ dẫn tới gói tin sẽ bị thiết bịđịnh tuyến bỏ qua.

- Thêm váo các nguy cơ, Mobile IP không chỉ ra phương thức để đảm bảo tính bí mật (confidentiality) và tính toàn vẹn (integrity).

- Mobile IP chưa đưa ra môt cơ chế quản lý khóa. Do đó việc quản lý khóa thủ công trong trường hợp mạng lớn, phức tạp với nhiều nút di

động có thể là một nguy cơ.

Các công nghệ mạng trong tương lai cần hỗ trợ nhiều hơn nữa các dịch vụ

bảo mật. Trong đó, tính toàn vẹn và bí mật thông tin đầu – cuối (end-to-end integrity and confidentiality) là một vấn đề quan trọng. Tuy nhiên, các mạng thông tin di động hiện tại chưa hỗ trợđầy đủ tính bí mật và toàn vẹn thông tin.

3.1.3. Các gii pháp bo mt cho Mobile IP

Qua phân tích các nguy cơ, các giải pháp bảo mật cho Mobile IP bao gồm: - Giải pháp chống tấn công trong giao thức Mobile IP: Đây là giải pháp

chống replay bằng nhãn thời gian và nonce được đưa ra trong chuẩn giao thức Mobile IP [2] .

- Giải pháp xác thực trong Mobile IP: các gói tin trong Mobile IP được xác thực thông qua mở rộng của các gói tin Mobile IP[2] ; xác thực

theo giao thức yêu cầu/đáp ứng (challenge/response[5] ; xác thực với khóa công khai [14] ; hoặc xác thực với khóa công khai tối thiểu [22] .

- Giải pháp kết hợp xác thực, kiểm soát, tính phí và quản lý khóa thông qua kiến trúc AAA (authentication, authorization, and accounting) [6] , [20] , [7]

- Giải pháp tránh xung đột với với hệ thống tường lửa có chức năng lọc đầu vào (Ingress Filtering) bằng định hướng nghịch (reverse tunnneling) [11] .

- Giải pháp bổ sung vào các hệ thống tương lửa (firewall) nhằm hỗ trợ Mobile IP: ngoài chức năng vốn dĩ của firewall sẽ giúp nâng cao tính sẵn sàng của hệ thống tránh các tấn công, việc bổ sung thêm chức năng hỗ trợ Mobile IP sẽ giúp các hệ thống tường lửa đảm bảo tính hoạt động đúng đắn với Mobile IP của các hệ thống mạng được bảo vệ [12] .

- Giải pháp bảo mật dữ liệu với IPsec: Đây là giải pháp đảm bảo tính bí mật của thông tin và toàn vẹn dữ liệu trong quá trình truyền đi trên mạng.

Từng giải pháp trên sẽđược trình bày trong từng phần dưới đây.

3.2. Chống tấn công replay trong Mobile IP

Trường định danh (Identification) trong thông điệp đăng ký của MN với HA để HA có thể kiểm tra rằng một thông điệp đăng ký mới được gửi đi bởi MN mà không phải là một thông điệp tấn công replay lợi dụng được từ một lần đăng ký trước đó. Có hai phương pháp để chống tấn công replay được đưa ra trong chuẩn giao thức Mobile IP: sử dụng nhãn thời gian (bắt buộc) và sử dụng nonce (tùy chọn). Theo chuẩn giao thức Mobile IP [2] , tất cả các MN và HA đều phải cài đặt

cơ chế chống tấn công replay sử dụng nhãn thời gian. MN (bắt buộc); và HA cũng có thể cài đặt cơ chế chống tấn công replay dựa trên nonce (tùy chọn).

Cách thức chống tấn công replay trong cài đặt cụ thể giữa một MN và HA tương ứng là một phần của thiết lập bảo mật giữa MN và HA. Theo đó, MN và HA sẽ thống nhất phương thức chống tấn công replay được sử dụng. Cách hiểu trường

định danh trong thông điệp đăng ký sẽ phụ thuộc vào phương thức chống replay cụ

thể.

Cho dù phương pháp chống replay nào được sử dụng thì 32bit thấp trong trường định danh phải được sao nguyên vẹn từ yêu cầu đăng ký sang trả lời đăng ký. FA sử dụng các bit đó (và địa chỉ gốc của MN) để khớp các yêu cầu đăng ký với các trả lời tương ứng. MN phải kiểm tra rằng 32bit của mọi trả lời đăng ký là khớp với 32 bit mà MN đã gửi trong yêu cầu đăng ký.

Trường định danh trong một yêu cầu đăng ký mới phải không giống một yêu cầu ngay trước đó. Trường định danh cũng không nên được sử dụng lại khi một ngữ cảnh bảo mật vẫn đang được dùng giữa MN và HA.

3.2.1. Chng tn công replay bng nhãn thi gian

Nguyên lý cơ bản của biện pháp chống tấn công bằng nhãn thời gian (timestamp) là một nút tạo một thông điệp sẽ chèn thời gian hiện tại; nút nhận được thông điệp kiểm tra nhãn thời gian đảm bảo rằng thời gian đó tương đối gần với ngày giờ của chính MN. Trừ khi được chỉ ra khác đi trong ngữ cảnh bảo mật cho nút, giá trị ngầm định là 7 giây – được sử dụng để giới hạn sự khác nhau về thời gian. Giá trị này cần lớn hơn 3 giây. Giải pháp này hiển nhiên chỉ khả thi khi hai nút tham gia có đồng hồđồng bộ.

Theo phương thức sử dụng nhãn thời gian thì MN sẽ phải thiết lập giá trị định danh của thông điệp đăng ký theo khuôn dạng 64 bit của giao thức NTP (Network Time Protocol). Trong đó, 32 bit thấp của khuông dạng NTP biểu thị

phần phân của thời gian tính theo giây, nếu các bit này không nhận được từ các nguồn thời gian thì chúng cần được sinh từ các nguồn ngẫu nhiên. Lưu ý rằng, khi

sử dụng nhãn thời gian cho trường định danh 64 bit trong thông điệp yêu cầu đăng ký của MN tới HA, trường định danh đó phải có giá trị lớn hơn giá trị trường định danh đã sử dụng trong các yêu cầu đăng ký trước đó bởi HA cũng sử dụng trường này như là số thứ tự (sequence number). Nếu không có số thứ tự, một bản yêu cầu

đăng ký bị trễ của một đăng ký trước đó có thể tới HA và sẽ được xử lý một cách nhầm lẫn, gây ra thay đổi trong địa chỉ COA đã đăng ký của MN.

Khi nhận được một thông điệp yêu cầu đăng ký có mở rộng xác thực, HA sẽ phải kiểm tra tính xác thực của trường định danh. Để đảm bảo tính đúng đắn, nhãn thời gian trong trường định danh phải có độ lệch với thời gian của HA trong khoảng giá trị cho phép; đồng thời nhãn thời gian đó phải lớn hơn tất cả các nhãn thời gian đã được chấp nhận của cùng MN đó.

Nếu nhãn thời gian là hợp lệ, HA sẽ chép toàn bộ trường định danh vào thông điệp trả lời đăng ký (registration reply) để trả lời MN. Nếu nhãn thời gian không hợp lệ, HA sẽ chỉ chép 32 bit thấp sang thông điệp trả lời yêu cầu và cung cấp 32 bit cao từ thời gian của chính nó. Trong thường hợp này, HA phải từ chối

đăng ký bằng cách trả lời MN với mã 133 (định danh không hợp lệ) trong thông

điệp trả lời đăng ký. Lúc đó, MN sẽ phải kiểm tra đểđảm bảo rằng 32 bit thấp trong trường định danh của thông điệp trả lời đăng ký là giống với 32 bit của thông điệp yêu cầu đăng ký MN đã gửi đi; sau đó MN sẽ dùng 32 bit cao của thông điệp trả lời

đểđồng bộ thời gian.

3.2.2. Chng tn công bng Nonces

Nguyên lý của phương pháp chống tấn công này là nút A sẽ gửi cho nút B một số ngẫu nhiên mới trong mỗi thông điệp gửi nút B, và kiểm tra rằng nút B trả

lại đúng số ngẫu nhiên đó trong thông điệp tiếp theo cho nút A. Cả hai thông điệp sử dụng một mã xác thực để chống việc làm thay đổi giá trị từ một kẻ tấn công.

Đồng thời, nút B có thể gửi các nonces của nó trong mọi thông điệp tới nút A, để

HA sẽ tính toán các số giả ngẫu nhiên (pseudo-random) và chèn vào 32 bit cao của trường định danh trong tất cả các thông điệp trả lời đăng ký. HA chép 32 bit thấp của trường định danh trong thông điệp yêu cầu đăng ký vào 32 bit thấp của trường định danh trong thông điệp trả lời đăng ký. Khi MN nhận được một trả lời

đăng ký chấp nhận (authenticated) từ HA, MN lưu 32 bit cao của trường định danh trong thông điệp trả lời để sử dụng cho 32 bit cao trong các thông điệp đăng ký tiếp theo.

MN sẽ chịu trách nhiệm sinh 32 bit thấp của trường định danh trong các thông điệp yêu cầu đăng ký. Một cách lý tưởng, MN sẽ tự tạo các nonce ngẫu nhiên. Tuy nhiên, MN có thể sử dụng các phương pháp thích hợp, bao gồm cả việc ghép đôi giá trị ngẫu nhiên nhận được từ HA. Phương pháp lựa chọn là tùy thuộc vào MN vì chính MN sẽ kiểm tra giá trị được trả lại trong thông điệp trả lời đăng ký. Giá trị 32 bit cao và 32 bit thấp của trường định danh nên khác với các giá trị

của chúng trước đó. HA sử dụng các giá trị 32 bit cao mới và MN sử dụng các giá trị 32 bit thấp mới cho mỗi thông điệp đăng ký.

Nếu một thông điệp đăng ký bị từ chối vì một nonce không hợp lệ, thông

điệp trả lời sẽ cung cấp cho MN một nonce mới để MN sử dụng cho đăng ký tiếp theo.

3.3. Giải pháp xác thực cho Mobile IP

3.3.1. Chun xác thc thông đip trong Mobile IP

Khi MN thực hiện quá trình trao đổi thông tin, MN cần tiến hành đồng thời quá trình xác thực thông tin. Do các liên kết ởđây là các liên kết vô tuyến, trạm di

động không kết nối trực tiếp với mạng cho nên rất dễ xảy ra tình trạng giả mạo thông tin khi các nút khác muốn truy cập mạng. Hơn nữa, kết quả quá trình đăng ký của Mobile IP sẽđưa đến kết quả là các luồng dữ liệu sẽđược định hướng lại tới địa chỉ COA của MN. Việc định hướng lại gói tin này là một ngưy cơ an ninh trên Internet nếu như không được xác thực.[2]

Vì vậy, cần thực hiên cơ chế xác thực thông tin. Trong Mobile IP, cơ chế

xác thực thông tin được sử dụng thuật toán mặc định là MD5 với kích thước khoá 128 bit hoặc lớn hơn cùng với cơ chế phân phối khóa thủ công. Thuật toán MD5 theo dạng “tiền tố - hậu tố” để bảo vệ dữ liệu với một “khóa bí mật” được xem là “dễ bị tổn thương” trong cộng đồng mã hóa. Do đó, tuy việc đảm bảo tính tương thích với phiên bản Mobile IP hiện tại là cần thiết nhưng những cài đặt mới nên sử

dụng thuật toán xác thực MD5 khóa (Keyed MD5) làm một thuật toán dự phòng khi tạo và kiểm tra các dữ liệu xác thực trong các thông điệp đăng ký của Mobile IP.

Mobile IP sử dụng các cấu trúc mở rộng trong các thông điệp điều khiển (sử

dụng cổng UDP 434) cho các quá trình xác thực giữa MN và HA, giữa MN và FA, giữa FA và HA.

a) Tính toán các giá trị xác thực

Các giá trị xác thực được tính toán để sử dụng cho mở rộng xác thực phải có khả năng bảo vệ các trường dữ liệu sau trong các thông điệp đăng ký:

- Tải dữ liệu UDP (UDP payload): đó là các dữ liệu yêu cầu đăng ký và trả lời đăng ký.

- Các phần mở rộng khác của thông điệp đăng ký

- Các trường kiểu, độ dài và chỉ mục tham số bảo mật SPI

Thuật toán xác thực ngầm định sử dụng thuật toán HMAC-MD5 (Hashed- based Message Authentication Code – Message Digest Algorithm 5) để tính toán giá trị 128 bit “message digest” của thông điệp. Các dữ liệu mà thuật toán HMAC tính toán bao gồm:

- Tải dữ liệu UDP (UDP payload): đó là các dữ liệu yêu cầu đăng ký và trả lời đăng ký.

- Các phần mở rộng khác của thông điệp đăng ký

Lưu ý rằng, trường giá trị xác thực và phần tiêu đề UDP không được bao gồm trong tính toán giá trị xác thực.

Chỉ số tham số bảo mật (SPI) trong các mở rộng xác thực định nghĩa ngữ

cảnh được sử dụng để tính toán giá trị xác thực và phải được sử dụng bởi bên nhận

để kiểm tra giá trịđó. Cụ thể hơn, giá trị SPI chỉ ra thuật toán xác thực, “mode” xác thực, và khóa bí mật (có thể là một khóa được chia sẻ, hay một cặp khóa bí mật/khóa công khai thích hợp).. Để đảm bảo tính tương thích giữa những cài đặt của Mobile IP, một cài đặt phải có khả năng gán một giá trị SPI bất kỳ với một

Một phần của tài liệu Nghiên cứu giao thức Mobile IP và giải pháp bảo mật (Trang 75)

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

(121 trang)