4.1.1. Kiến trúc an ninh UMTS
Kiến trúc an ninh chung của các mạng UMTS được xây dựng trên một tập hợp các đặc tính bảo mật và cơ chế bảo vệ. Một đặc tính bảo mật là một khả năng dịch vụ phù hợp với một hoặc nhiều yêu cầu bảo mật. Một cơ chế bảo mật là một quá trình được sử dụng để thực hiện một chức năng bảo mật. Hình 4.1 mô tả cách các chức năng bảo mật được tổ chức với nhau trong năm lớp. Mỗi lớp đang đối mặt với một mối đe dọa cụ thể và đạt được mục tiêu bảo mật cụ thể..
Hình 4.1: Kiến trúc bảo mật UMTS
An ninh lớp truy cập mạng (Lớp I): Các chức năng của lớp này cung cấp truy cập an toàn vào các dịch vụ 3G và bảo vệ chống lại các cuộc tấn công vào liên kết vô tuyến.
An ninh lớp miền mạng (Lớp II): Lớp này có chức năng cho phép các nút trong mạng của nhà khai thác để bảo mật việc trao đổi tin nhắn báo hiệu và bảo vệ chống lại các cuộc tấn công trên mạng có dây nhằm vào UMTS.
An ninh miền sử dụng (Lớp III): Chức năng lớp này là bảo mật việc truy cập của các trạm di động (MS) tới mạng UMTS và dịch vụ.
An ninh miền ứng dụng (Lớp IV): Các chức năng thuộc lớp này cho phép các ứng dụng thực hiện ở miền sử dụng và các nhà cung cấp miền để trao đổi tin nhắn an toàn.
Tầm nhìn và cấu hình bảo mật (Lớp V): Chức năng của lớp này là cho phép người dùng có được thông tin về các chức năng bảo mật. Lớp này cũng cho phép người dùng kiểm tra xem việc cung cấp các dịch vụ phụ thuộc vào kích hoạt một số tính năng bảo mật.
Ngoài ra, chức năng bảo mật truy cập mạng (Lớp I) có thể được tiếp tục phân thành ba loại: chức năng xác thực thực thể, chức năng bảo mật, và chức năng toàn vẹn dữ liệu.
o Khách hàng xác nhận: mạng phục vụ xác nhận danh tính của thuê bao.
o Xác nhận mạng: các thuê bao xác nhận đã được kết nối với một mạng phục vụ, được ủy quyền bởi mạng lưới nhà của thuê bao cung cấp cho thuê bao với các dịch vụ.
o Tín hiệu dữ liệu toàn vẹn và xác thực nguồn gốc: các tính năng bảo mật sau đây được cung cấp đối với sự toàn vẹn của dữ liệu trên mạng truy cập liên kết:
+ Thuật toán thỏa thuận toàn vẹn: các trạm điện thoại di động (MS) và mạng phục vụ (SN) an toàn có thể thương lượng các thuật toán toàn vẹn mà họ sử dụng.
+ Thoả thuận khóa toàn vẹn: MS và các SN đồng ý về một khóa toàn vẹn có thể sử dụng sau đó, điều này được thực hiện như là một phần của giao thức cũng cung cấp chứng thực thực thể.
o Dữ liệu toàn vẹn và xác thực nguồn gốc của tín hiệu dữ liệu: các đơn vị nhận (MS hoặc SN) có thể xác minh rằng dữ liệu báo hiệu đã không được sửa đổi một cách trái phép từ khi nó được gửi bằng các thực thể gửi (SN hoặc MS), và rằng nguồn gốc dữ liệu của dữ liệu nhận được tín hiệu thực sự.
4.1.2. Bảo mật truy cập mạng
Bảo mật truy cập mạng là một lớp thiết yếu của chức năng bảo mật trong kiến trúc an ninh 3G. Nó có liên quan đến thiết lập cơ chế bảo mật cung cấp cho người dùng di động truy cập an toàn tới các dịch vụ 3G, cũng như bảo vệ chống lại các cuộc tấn công trên giao diện vô tuyến. Cơ chế này bao gồm: bí mật nhận dạng người dùng, chứng thực và thỏa thuận khóa, bảo mật dữ liệu, và bảo vệ sự toàn vẹn của thông điệp báo hiệu. Bảo mật truy cập mạng diễn ra một cách độc lập trong từng lĩnh vực dịch vụ.
4.1.2.1. Bảo mật nhận dạng ngƣời sử dụng
Bảo mật nhận dạng người sử dụng cho phép nhận dạng của một người dùng truy cập mạng vô tuyến liên kết bằng phương tiện của nhận dạng thuê bao di động tạm thời (TMSI). Có nghĩa rằng các bí mật danh tính người dùng được bảo vệ, hầu như luôn luôn, chống nghe lén thụ động. Việc đăng ký ban đầu là một trường hợp đặc biệt, một nhận dạng tạm thời không sử dụng được, từ mạng không thể biết được nhận dạng thường trực của người dùng. Nhận dạng cấp tạm thời được chuyển cho người sử dụng khi mã hóa được bật. Một TMSI trong miền CS (hoặc P-TMSI trong miền PS) chỉ có ý nghĩa địa phương duy nhất trong khu vực địa điểm hoặc khu vực các định tuyến, trong đó người sử dụng được đăng ký. Sự kết hợp giữa nhận thực người sử dụng thường xuyên và người dùng tạm thời được lưu trữ trong các VLR / SGSN. Mặt khác, nếu người sử dụng điện thoại di động đến vào một khu vực mới, sau đó sự kết hợp giữa
các đặc tính thường xuyên và tạm thời có thể thu được từ vị trí cũ hoặc khu vực định tuyến. Nếu địa chỉ của khu vực cũ là không biết hoặc kết nối không thể được thành lập thì nhận dạng người dùng thường xuyên phải được yêu cầu từ người sử dụng điện thoại di động.
Để tránh người dùng truy xuất nguồn gốc, điều này có thể dẫn đến những thỏa hiệp giữ bí mật danh tính của người sử dụng và vị trí người dùng theo dõi, người dùng không nên được kết hợp trong một thời gian dài với cùng một nhận dạng tạm thời. Hơn nữa, các dữ liệu tín hiệu hoặc người sử dụng có thể được sử dụng để tiết lộ danh tính của người sử dụng phải được mã hoá vào liên kết truy cập vô tuyến. Các tính năng bảo mật sau đây liên quan đến bí mật danh tính người dùng được bảo đảm:
- Bảo mật nhận dạng người dùng: nhận dạng thường trú (IMSI) của một người sử dụng điện thoại di động mà một dịch vụ được cung cấp được bảo vệ chống lại nghe trộm vào liên kết truy cập vô tuyến.
- Bảo mật vị trí người sử dụng: sự hiện diện trong một khu vực hay sự xuất hiện của một người sử dụng trong một khu vực nhất định được bảo vệ chống lại nghe trộm trong các liên kết truy cập vô tuyến.
- Không truy xuất nguồn gốc của người dùng: một kẻ xâm nhập không thể suy ra, bằng cách nghe trộm trên liên kết truy cập vô tuyến, cho dù dịch vụ cụ thể được giao cho cùng một người dùng.
Để đạt được các mục tiêu nói trên, người sử dụng thường được xác định trên liên kết truy cập vô tuyến bởi một nhận dạng tạm thời mà ta được biết tại các mạng lưới phục vụ. Để tránh người dùng truy xuất nguồn gốc, có thể dẫn đến những thỏa hiệp giữ bí mật nhận thực của người sử dụng điện thoại di động, người sử dụng không nên được xác định trong một thời gian dài điều này tương tự như nhận thực tạm thời. Ngoài ra, nó là yêu cầu bất kỳ bản tin báo hiệu hoặc gói tin người dùng nào cho biết nhận dạng người dùng trên kênh truy cập vô tuyến. Những tính năng này giống hệt các tiêu chuẩn GSM. Nó bảo vệ chống lại các cuộc tấn công thụ động, nhưng không chống lại cuộc tấn công đang hoạt động.
- Xác định các thiết bị di động: Tính năng này giống như trong GSM. Trong trường hợp nhất định, mạng lưới phục vụ có thể yêu cầu các trạm điện thoại di động để gửi nhận dạng thiết bị di động quốc tế của nó (IMEI). Tuy nhiên, cả GSM và UMTS đều đưa ra một phương pháp chứng thực để nhận dạng thiết bị di động. Điều này có nghĩa rằng bất kỳ tính năng mạng dựa trên số IMEI, chẳng hạn như chặn cuộc gọi của điện thoại bị đánh cắp, dựa vào các thiết bị đầu cuối cung cấp số IMEI hợp pháp vào mạng UMTS. Các tiêu chuẩn UMTS do đó áp đặt các yêu cầu về thiết bị đầu cuối để bảo vệ sự toàn vẹn của IMEI để nó không thể giả mạo hoặc sửa đổi.
- Nhận thực người dùng với USIM: Tính năng này giống như trong mạng GSM. Nó cung cấp đặc tính truy cập vào các USIM bị hạn chế cho đến khi USIM đã
nhận thực người dùng. Qua đó, nó đảm bảo rằng việc truy cập với USIM có thể được giới hạn người dùng có thẩm quyền hoặc một số người dùng được phép. Để thực hiện chức năng này, người sử dụng và các USIM phải chia sẻ một bí mật (số nhận dạng cá nhân) được lưu trữ an toàn trong USIM. Người sử dụng muốn truy cập vào phần USIM thì phải biết được bí mật này.
- Nhận thực của USIM - liên kết đầu cuối: Tính năng này đảm bảo rằng các quyền truy cập vào một thiết bị đầu cuối hoặc các thiết bị di động của người dùng khác có thể được hạn chế một USIM có thẩm quyền. Các mạng USIM và thiết bị đầu cuối phải chia sẻ một bí mật được lưu trữ an toàn trong USIM và các thiết bị di động. Nếu một nút USIM không chứng minh được là nó biết bí mật này thì nó sẽ bị từ chối truy cập vào các thiết bị di động.
4.1.2.2. Nhận thực và thỏa thuận khóa
Việc nhận thực và cơ chế thỏa thuận khóa dẫn tới việc nhận thực lẫn nhau giữa người sử dụng điện thoại di động và SN về chia sẻ khóa bí mật. Chúng cũng cho phép nguồn gốc của mã hóa và khóa toàn vẹn cho việc thiết lập phiên. Thuật toán nhận thực gồm giao thức Các phương pháp thẩm định bao gồm các giao thức hỏi/đáp (như được mô tả bằng hình 4.2), và là lựa chọn để đạt được khả năng tương thích tối đa với kiến trúc an ninh GPRS/GSM. Điều này sẽ giúp tạo thuận lợi cho chuyển từ GSM/GPRS lên UMTS. Hơn nữa, USIM và các thiết bị cá nhân theo dõi bằng hai bộ đếm, biểu hiện bằng SQNMS và SQNHE, để hỗ trợ xác thực mạng. Số thứ tự SQNHE là biểu thị số truy cập cá nhân cho mỗi người dùng, trong khi SQNMS các biểu thị số thứ tự cao nhất mà các USIM đã chấp nhận.
Nhận thực và thỏa thuận khóa trong UMTS (UMTS AKA) là một cơ chế bảo mật để đạt được nhận thực và cung cấp tất cả các tính năng thỏa thuận khóa đã được mô tả. Cơ chế này dựa trên các cơ chế hỏi/đáp tương tự như giao thức xác thực để chứng thực thuê bao và thành lập khóa trong GSM. Điều này làm cho việc chuyển đổi từ mạng GSM sang mạng UMTS được thực hiện dễ dàng. Giao thức hỏi/đáp là một biện pháp an ninh được thiết lập cho một thực thể để xác minh danh tính của một tổ chức khác mà không để lộ mật khẩu bí mật được chia sẻ bởi hai thực thể. Khóa là mật khẩu mà nó không được tiết lộ hay truyền. Hình 4.2 mô tả thỏa thuận khóa AKA trong mạng 3G.
Hình 4.2: Nhận thực và thỏa thuận khóa trong 3G
Quá trình nhận thực và thỏa thuận khóa trong UMTS được thực hiện bởi mạng dịch vụ sau khi đăng ký đầu tiên của người sử dụng, một yêu cầu dịch vụ, yêu cầu cập nhật vị trí, yêu cầu kết nối, yêu cầu tách hoặc tái lập kết nối. Ngoài ra, các thông tin liên quan về người sử dụng phải được chuyển giao từ mạng nhà của người dùng với mạng phục vụ để hoàn thành quá trình yêu cầu. Các mạng nhà HLR/AuC cung cấp mạng phục vụ VLR/SGSN với véc tơ nhận thực (AVs), mỗi người nắm giữ các trường thông tin được mô tả như sau: khi nhận yêu cầu từ VLR/SGSN, trung tâm nhận thực của mạng nhà (HN/AuC) ra lệnh chuyển một mảng của vectơ nhận thực (AV) cho VLR/SGSN. Mỗi AV bao gồm: số ngẫu nhiên RAND, mã nhận thực XRES, khóa mật mã CK, khóa toàn vẹn IK, thẻ nhận thực AUTN.
Hình 4.3 cho thấy quá trình tạo ra AV bởi HE/AuC. HE/AuC bắt đầu với việc tạo ra một dãy số mới SQN, việc này giúp cho người sử dụng thấy rằng các AV tạo ra đã không được sử dụng trước và một yêu cầu không đoán trước RAND. Sau đó, bằng cách sử dụng khóa bí mật K, nó tính toán các thành phần sau đây bằng cách sử dụng các hàm cụ thể : f1, f2, f3, f4, và f5:
Thành phần đầu tiên là mã nhận thực bản tin (MAC) được tính bởi công thức:
MAC = f1 (K, SQN, RAND, AMF),
Với f1 là hàm nhận thực bản tin và nhận thực và trường quản lý khóa AMF được sử dụng để tinh chỉnh hiệu suất hoặc mang lại một khóa nhận thực mới đã được lưu trong USIM.
Hình 4.3: Tạo ra véc tơ nhận thực
- Thành phần thứ hai là đáp ứng mong đợi XRES, được tạo bởi hàm:
f2(K, RAND), với f2 là một hàm nhận thực bản tin.
- Ba thành phần: khóa mật mã CK, khóa toàn vẹn IK và khóa dấu tên AK được tính bởi các hàm sau:
CK = f3 (K, RAND), IK = f4 (K, RAND), AK = f5 (K, RAND),
với f3, f4, và f5 là các hàm tạo khóa riêng biệt.
- Thành phần cuối cùng là thẻ nhận thực AUTN, được tính bằng cách sử dụng các biểu thức sau đây:
AUTN = (SQN AK, AMF, MAC)
Năm hàm f1, f2, f3, f4, f5 được sử dụng bởi AuC và trong USIM, được kiểm soát, lựa chọn bởi nhà khai thác dịch vụ. Do việc thiết kế thuật toán mã hoá mạnh cho các hàm này rất khó nên 3GPP đã cung cấp một tập mẫu các thuật toán AKA với tên gọi là MILENAGE.
Khi VLR/SGSN bắt đầu thủ tục nhận thực và thoả thuận quan trọng, nó sẽ chọn các AV kế tiếp từ những vector của AVs, và chuyển tiếp các thông số RAND và AUTN cho người dùng. Dựa trên cùng một khóa bí mật K, USIM tính toán khóa AK bằng cách sử dụng f5(K, RAND) và khôi phục các SQN bằng cách áp dụng công thức:
Sau đó, nó tính XMAC = f1 (K, SQN, RAND, AMF) và kiểm tra xem AUTN đã nhận và lấy giá trị SQN đã thực sự được tạo ra trong AuC. Nếu đây là trường hợp, USIM tính toán RES = f2 (k, RAND) và kích hoạt MS để gửi lại một nhận thực người dùng. Cuối cùng, USIM tính toán các khóa CK và IK bằng cách sử dụng công thức:
CK = f3 (k, RAND) và
IK = F4 (k, RAND).
VLR/SGSN so sánh RES nhận được với trường XRES của AV. Nếu chúng phù hợp, nó xem xét việc trao đổi nhận thực và thỏa thuận khóa đã được hoàn tất thành công. Cuối cùng, USIM và VLR/SGSN chuyển mã hóa được thành lập và khóa bảo vệ toàn vẹn (CK và IK) tới thiết bị di động và bộ điều khiển mạng vô tuyến, tương ứng, cho phép chúng sử dụng mã hóa và các hàm toàn vẹn.
4.1.2.3. Bảo mật dữ liệu và bảo vệ toàn vẹn của tin nhắn báo hiệu
Một khi người sử dụng và mạng đã nhận thực với nhau, chúng bắt đầu đảm bảo việc truyền dữ liệu mà đã thiết lập giữa chúng. Các gói tin người dùng và tin nhắn báo hiệu được gửi qua giao diện vô tuyến có thể mã hóa bằng cách sử dụng hàm f8: quá trình mã hóa/giải mã diễn ra trong MS và RNC ở phía mạng. Hàm f8 là thuật toán đối xứng đồng bộ dòng được sử dụng để mã hóa khung có độ dài biến. Các đầu vào chính cho hàm f8 là một khóa mật mã CK 128-bit mã khóa. Các đầu vào được sử dụng để đảm bảo rằng hai khung hình được mã hóa bằng cách sử dụng các khóa dòng khác nhau, chúng được hình thành bởi một giá trị 32-bit gọi là COUNT, một giá trị 5-bit được biểu diễn bởi BEARER, và giá trị 1-bit được gọi là DIRECTION. Khóa dòng và mã hóa được tính bởi công thức sau đây:
keystreamBlock = f8 (CK, BEARER, DIRECTION, length) Cipher-text = keystreamBlock plaintextBlock
Đầu ra là một dãy các bit (hoặc khóa dòng) của cùng độ dài như khung. Khung hình được mã hóa bằng phép XOR dữ liệu với khóa dòng. Thực hiện hàm f8 cơ bản dựa trên thuật toán Kasumi. Các tính năng bảo mật sau đây được đảm bảo bởi UMTS và có liên quan đến bảo mật dữ liệu trên các liên kết truy cập mạng:
Thỏa thuận thuật toán mã hóa: trạm điện thoại di động và mạng UMTS có thể thỏa thuận an toàn thuật toán mã hóa mà họ muốn sử dụng để thiết lập việc truyền