CHƯƠNG 1: TỔNG QUAN VỀ VẤN ĐỀ NGHIÊN CỨU Tóm tắt: Trong chương này, trình bày những thông tin cơ bản liên quan đến hệ thống thông tin di động; về vấn đề an toàn và bảo mật trong mạng GSM; về các phương pháp mã thoại nói chung và mã (nén) trong hệ thống GSM; cả nhiều phương pháp luận được tóm lược trình bày như động lực của vấn đề nghiên cứu. Tổng quan về mạng viễn thông di động GSM [1][2][29][34] Cấu trúc mạng di động GSM được chia thành 3 khối chính gồm: Hệ thống con MS, Hệ thống con trạm gốc BSS (bao gồm BSC và các BTS), Hệ thống con mạng lõi NSS; ngoài ra còn có 3 lớp giao diện: Um (giao diện vô tuyễn giữa MS và BTS), Abit (là giao tiếp giữa BTS và BSC) và A giao tiếp giữa BSC và MSC (như Hình 1. Trong đó, khối MS (bao gồm thiết bị máy điện thoại ME và Module SIM); khối BSS (gồm các BTS và BSC) là phần kết nối các mobile user với mạng lõi GSM; khối mạng lõi (gồm NSS và NMS), NSS là một tổng đài đầy đủ các khả năng định tuyến các cuộc gọi giữa các mobile user qua BSS và mobile user – thuê bao PSTN qua MSC và GMSC; NMS là hệ thống con thực hiện quản lý, giám sát các chức năng, các thành phần của toàn mạng. Các khối con cơ bản của hệthống được mô tả dưới đây: Cấu trúc cơ bản mạng GSM: Hình 1.
Cấu trúc cơ bản mạng GSM - Module nhận thực thuê bao – SIM: Subscriber Identity Module Module này thực chất là một Smart Card chưa các thuật toán A3/8, số IMSI, khóa bí mật Ki và số điện thoại. - Thiết bị đầu cuối – ME: Mobile Equipment LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com 9 Thiết bị này hoạt động độc lập (tương đối) với các thiết bị mạng truyền dẫn, nó chưa thuật toán A5 và nó chỉ có thể kết nối với mạng GSM khi nó phải có SIM và nó không bao giờ biết được thuật toán A3/8 và Ki trên SIM. - Trạm thu phát gốc – BTS: Base Transceiver Station BTS là thành phần mạng thông tin di động mặt đất phục vụ cho các MS (Thiết bị ME khi được gắn Module SIM). Các trạm gốc sẽ kết nối liên thông các Cells sóng vô tuyến trong khu vực và các trạm gốc được kết nối đến trạm điều khiển MSC của vùng đó.
- Trạm điều khiển gốc – BSC: Base Staition Controller BSC thực hiện chức năng điều khiển điều khiển các BTS quanh nó, như: điều khiển công suất phát cho các MS; cấp phát tần số kênh cho các BTS và MS; điều khiển nhảy tần số của các MS khi bị nhiễu. - Trung tâm chuyển mạch – MSC: Mobile Switching Center MSC là một nốt (node) điều khiển một số BSC. Nó là thiết bị trung tâm và có nhiều chức năng trong hệ thống GSM.Nó thực hiện chuyển mạch, xác thực, đăng ký và liên kết giữa các nốt (node). Nó còn được kết nối đến mạng PSTN.
- Đăng ký Thuê bao – HLR: Home Location Register HLR là cơ sở dữ liệu của các thuê bao di động được tạo ra, bị chặn hay bị xóa bởi nhà cung cấp dịch vụ mạng. HLR chứa tất cả các thông tin lâu dài của các thuê bao cũng như các dịch vụ, giới hạn dịch vụ thuê bao được phép sử dụng, bao gồm: Số IMEI, bản copy Khóa bí mật Ki, VLR hiện tại của thuê bao và các dịch vụ hiện tại của thuê bao di động. - Đăng ký đăng nhập vùng - VLR: Visitor Location Register Cũng là một CSDL để chứa thông tin thuê bao của di động. Thông tin trong VLR cho biết vị trí hiện tại, trạng thái của MS.
và VLR cung cấp dữ liệu của thuê bao để xử lý cuộc gọi bất cứ khi nào được yêu cầu. Thông tin trong VLR được cập nhật thường xuyên theo Cell MS đang tham gia, việc cập nhật thông tin trong VLR xảy ra khi: MS bật máy, MS di chuyển sang BTS hay BSC khác và theo định kỳ; - Trung tâm xác thực thuê bao – AuC: Authentication Center LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com 10 AuC có chức năng kết hợp với HLR để cung cấp thông tin cho VLR các thông số xác thực một thuê bao MS có quyền truy nhập vào mạng hay không và các quyền dịch vụ của nó, sinh số ngẫu nhiên (RAND). Cơ sở dữ liệu của AuC lưu các thông tin: danh sách các thiết bị ME chuẩn quốc tế (IMSI), các thông tin xác thực như khóa bí mật Ki, thông tin định danh Vùng LAI (Location Area Identity), định danh thuê bao tạm TMSI - Temporary Mobile Subscriber Identity, - Đăng ký nhận dạng thiết bị - EIR: Equitment Identity Register EIR lưu giữ một CSDL để giám sát toàn bộ các ME có IMSI sử dụng trên mạng mạng đó (mỗi mạng chỉ có một EIR). An toàn, bảo mật và một số điểm yếu về vấn đề này trong hệ thống mạng GSM [2,3,6,7,16,29,31,34] Ban đầu GSM được dự định là một hệ thống không dây an toàn.
Để đạt được mục đích này, hệ thống đã được xây dựng bằng các cơ chế: • Xác thực người dùng, xác thực dịch vụ di động • Mã hóa các thông tin trao đổi trên môi trường radio. Xác thực người dùng bằng cách sử dụng khóa được chia sẻ trước, có cơ chế mã hóa qua mạng. GSM dễ bị tấn công bởi các loại tấn công khác nhau, mỗi loại đều nhắm vào một phần khác nhau của mạng, GSM chỉ xác thực người dùng với mạng. Mô hình cung cấp bảo mật và xác thực, nhưng không có khả năng chống chối bỏ.
GSM sử dụng một số thuật toán A5/(1, 2, 3) chỉ để mã hóa đảm bảo bảo mật thoại trên kênh vô tuyến, trong khi giọng nói được truyền ở dạng rõ qua mạng lõi dưới dạng PCM và ADPCM [31]. A5 có một số hạn chế về mật mã và không thể liên lạc an toàn [2][6]. Do đó, A5 không thể cung cấp bảo mật cuộc gọi thoại hoàn toàn cho khách hàng GSM. Hơn nữa, người dùng không có quyền kiểm soát bảo mật mã hóa được kiểm soát bởi nhà cung cấp mạng và nhà sản xuất điện thoại di động 1.
Nguyên lý xác thực và bảo mật trong mạng di động GSM Một số chức năng xác thực và bảo mật đã được tích hợp vào GSM, bao gồm: Ø Xác thực chủ thể thuê bao đăng ký LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com 11 Ø Sử dụng mã hóa để đảm bảo bí mật thông tin trao đổi Ø Bảo vệ định danh của thuê bao Ø SIM (Mô dun nhận dạng thuê bao) được bảo vệ bằng mã số PIN Ø SIM bị nhân bản không được cho phép gia nhập mạng đồng thời với SIM gốc Ø Mã số bí mật Ki được bảo vệ an toàn. Hệ thống GSM đảm bảo an toàn bảo mật bằng nhiều thuật toán với các loại thiết bị khác nhau. 2 nguyên lý chính là xác thực và mã hóa dữ liệu người dùng: • Xác thực người dùng đăng nhập mạng (Au) Trong mạng GSM, việc xác thực thuê bao (xác thực người sử dụng) là đầu tiên, tiếp sau là xác thực các dịch vụ đã được chấp nhận. Với mỗi MS khi khởi tạo lần đầu, hoặc chuyển đến vùng BS mới, nó sẽ yêu cầu BTS cấp kênh truyền, khi có kênh truyền đã thống nhất với BTS, nó sẽ gửi yêu cầu cập nhật thông tin mạng vùng hiện tại đến MSC qua BSC.
MSC sẽ trả lời nếu MS xác thực đúng. Trong toàn bộ quá trình xác thực, có 3 nhân tố chính đó là: MS, MSC/VLR và HLR/AuC như trong Hình 1. Quá trình xác thực trong mạng GSM Quá trình xác thực cụ thể như sau: đầu tiên MS gửi số IMSI (lấy từ SIM) gửi đến VLR qua trạm BTS gần nhất, để báo hiệu cần xác thực. VLR sẽ gửi IMSI đến trung tâm HLR/AuC.
Trung tâm HLR/AuC dựa trên số IMSI sẽ tra cơ sở dữ liệu tìm ra khóa bí mật Ki của IMSI, tiếp đó sử dụng thuật toán xác thực (A3) và thuật toán sinh khóa mã (A8) để tạo ra khóa mã theo phiên (Kc) và kết quả ký được gọi là SRES. LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com 12 Tiếp theo, HLR sinh ra một số ngẫu nhiên RAND 128bit và gửi bộ 3 (Kc, SRES, RAND) về VLR. Tiếp theo, VLR lấy số ngẫu nhiên RAND 128bit gửi lại cho MS để yêu cầu MS tính ra số SRES và gửi quay trở lại. Cũng từ khóa bí mật Ki trên SIM và RAND nhận được, bằng các thuật toán A3/8 MS tính ra Kc và SRES.
MS sẽ dùng Kc làm khóa cho phiên làm việc và gửi SRES quay về VLR để xác thực. VLR sẽ so sánh 2 SRES của MS và HLR, nếu trùng nhau thì xác thực thuê bao thành công, và MS sẽ được cấp quyền truy nhập mạng. Tuy nhiên nếu nhìn qua cơ chế xác thực trên, có thể thấy số IMSI được gửi trong bước một của quá trình xác thực, và nếu lấy được số này, hacker xem như sẽ có được 50% thông tin cần thiết để nhân bản SIM (số còn lại cần lấy là mã Ki). Xác thực người dùng và các dịch vụ, mã hóa dữ liệu thoại, tin nhắn và Data trong các thế hệ với các công nghệ khác nhau của mạng GSM là có khác nhau, như xác thực và mã hóa trong chế độ UMTS là khác so với trong GSM/GPRS.
Tuy nhiên trong khuôn khổ của Luận án chỉ tập trong vào công nghệ chuyển mạch kênh (CS) để truyền tín hiệu thoại trên kênh GSM, nên nội dung Luận án sẽ không phân tích các chế độ khác. • Mã hóa dữ liệu người dùng như thoại, tin nhắn, Dữ liệu người dùng Như trên đã mô tả, khóa phiên mã hóa Kc được sử dụng cho cả MS và hệ thống mạng lõi sử dụng thuật toán mã hóa A5 để mã/giải mã thông tin dữ liệu người dùng. Việc mã hóa này không được thực hiện bởi Module SIM vì không đủ năng lực xử lý, mà được thực hiện trên ME.3 [3] dưới đây mô tả toàn bộ quá trình xác thực, sinh khóa và mã hóa: Hình 1. Toàn bộ quá trình xác thực, sinh khóa và mã hóa trong mạng GSM LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com 13 Trước hết tìm hiểu về các thuật toán A3, A8, A5: - Thuật toán A3 [3]: Sơ đồ khối thuật toán A3 như Hình 1.
Mô hình thuật toán A3 Sơ đồ thực hiện các hàm chức năng trong thuật toán A3 để sinh ra SRES (32bit) được mô tả trong Hình 1.5, dưới đây: Nhìn vào lược đồ thuật toán trên thì thấy thuật toán rất dễ bị phá. RAND 64bits (Left) 64bits (Right) LHS XORED 64bits 32 bits left 32 bits left SRES LHS XORED 32bits 64bits - Thuật toán Ki A8: Sơ đồ khối thuật toán A8 như Hình 1.