Quản lý định danh bảo mật trong mạng ngang hàng có cấu trúc
Cùng với sự phát triển của mạng Internet và sự gia tăng các dịch vụ ứng
dụng, mạng ngang hàng P2P với các tính năng phân cấp, tự chủ và ẩn danh, đã
và đang được ứng dụng trong rất nhiều lĩnh vực như chia sẻ file, nhắn tin hợp
nhất, blockchain. Các mạng P2P được sử dụng rộng rãi bao gồm BitTorrent,
Gnutella, eDonkey,. Trong hệ thống mạng P2P tất cả các máy tham gia đều bình
đẳng, nó đóng vai trò của cả máy chủ và máy khách đối với các máy khác trong
mạng. Do thiếu xác thực tập trung nên mạng P2P có cấu trúc dễ bị tấn công bởi
các kiểu tấn công khác nhau. Vì vậy vấn đề bảo mật mạng P2P có cấu trúc gặp rất
nhiều khó khăn. Bài báo đưa ra giải pháp gán định bảo mật sử dụng khóa công
khai và giải câu đố xác thực, đồng thời xây dựng hệ thống kiểm soát truy nhập
phân cấp ACS. Mục đích để ngăn chặn tấn công Sybil sao cho mỗi nút gia nhập
mạng được cấp một định danh duy nhất và bảo mật, hạn chế tối đa việc sử dụng
định danh giả mạo tấn công vào Chord_DHT.
Trang 1
Trang 2
Trang 3
Trang 4
Trang 5
Tóm tắt nội dung tài liệu: Quản lý định danh bảo mật trong mạng ngang hàng có cấu trúc
hiếm là sử Successor Nút tiếp theo trên vòng tròn định danh, là finger [1] dụng hệ thống mã hóa khóa công khai trong lớp phủ. Predecssor Nút trước đó trên vòng tròn định danh Thông thường, PK sử dụng chứng thực khóa công khai PKC 2.2. Quản lý định danh bảo mật trong Chord_DHT (Public Key Cryptosystems) để bảo vệ tính toàn vẹn của Tạo định danh dùng số ngẫu nhiên [7]: để tạo một định chúng. Một chứng thực là một tài liệu điện tử dùng để xác danh nút hệ thống sử dụng RNG (Random Number minh một khóa công khai là của ai. PKC chứa đầy đủ thông Generator). Trong trường hợp này, kết quả các định danh tin cho những thực thể khác có thể xác nhận hoặc kiểm tra được phân phối đồng đều trong không gian ảo và đảm bảo danh tính của chủ nhân sở hữu chứng thực số. Tuy nhiên, tính ẩn danh của chủ sở hữu của chúng. Tuy nhiên, nếu cách mà các PKC được tạo ra rất quan trọng. Cụ thể, có ba RNG được thực hiện trong ứng dụng khách, có thể dễ dàng khía cạnh quan trọng: (1) thông tin liên quan đến các nút thao tác bởi người dùng cho phép kẻ tấn công chọn định được chứa trong PKC, (2) ai chọn mã hóa các cặp khóa và danh của mình. Vấn đề là cách tạo nút ID tự động này cho (3) ai phát hành (và quản lý) các PKC này. Một mặt, PKC có phép người dùng tạo nhiều hơn một định danh ID hợp lệ. thể chứa một số thông tin nhất định liên quan đến nút, ví Ngoài ra, nó tránh các nút khác có thể xác minh xem định dụ, địa chỉ IP của nó hoặc thậm chí tên thật của người dùng danh đã được tạo đúng hoặc nó thuộc về bất cứ ai đang sử đằng sau nút này. Rõ ràng, việc đưa thông tin này vào PKC dụng nó, vì định danh không bị ràng buộc với chủ sở hữu có thể gây ra sự mất tính riêng tư của người dùng. Nếu của họ trong bất kỳ cách nào. Trong bối cảnh này, nếu P2P người dùng chọn cặp khóa của họ, họ có thể có được một không thực hiện một hệ thống kiểm soát truy cập, mạng sẽ định danh nút nằm trong một vùng mục tiêu của không dễ bị tấn công Sybil, vì bất kỳ người dùng nào cũng có thể gian ảo. Mặt khác, nếu PK được chọn bởi một đối tác thứ 3 quản lý một tập hợp các định danh và thay đổi chúng trong tin cậy TTP (Trusted Third Party), người dùng không thể một cách không kiểm soát. Do đó, BitTorrent và mạng Kad chọn định danh nút, nhưng TTP có thể tạo PK để xác định vị [5] dễ bị ảnh hưởng bởi các cuộc tấn công. trí các nút trong các khu vực nhất định của lớp phủ. Trong Tạo định danh dùng địa chỉ IP: Đây là một giải pháp tốt bối cảnh này, PKC có thể được cấp bởi tổ chức cung cấp chứng thực số, một bên đáng tin cậy cho tất cả các thực thể vì tất cả người dùng Internet đều có địa chỉ IP và việc tạo Website: https://tapchikhcn.haui.edu.vn Vol. 56 - No. 1 (Feb 2020) ● Journal of SCIENCE & TECHNOLOGY 35 KHOA H ỌC CÔNG NGHỆ P - ISSN 1859 - 3585 E - ISSN 2615 - 961 9 của mạng. Tuy nhiên dùng khóa công khai kẻ tấn công vẫn Ví dụ kẻ tấn công muốn chặn truy vấn trên PKE (ID khóa có thể tấn công vào bảng định tuyến vào một nút cụ thể 25), nó tạo ra nhiều nút sybil xung quanh khóa 25 và tăng hoặc vào một khóa cụ thể trong quá trình một nút gia khả năng chặn truy vấn. Truy vấn trên PKE sẽ không bao giờ nhập, rời mạng hoặc bị lỗi. được trả lời. 2.3. Tấn công vào định danh bảo mật trong Chord_DHT 3. MÔ HÌNH KIỂM SOÁT TRUY NHẬP MẠNG ACS Tấn công vào bảng định tuyến (Attack on DHT (ADMISSION CONTROL SYSTEM) routing): Nhằm mục tiêu vào định tuyến DHT bằng cách kẻ 3.1. Mô hình kiểm soát truy nhập ACS tấn công tạo nhiều ID nút sybil sau đó không gửi lại truy Để tăng cường xác thực quá trình cấp định danh nút, vấn phản hồi hoặc gửi thông tin sai lệch. nghiên cứu đưa hệ thống kiểm soát nhập truy nhập ACS vào mạng Chord_DHT nhằm giảm thiểu ảnh hướng tấn công Sybil. ACS yêu cầu duy trì một cây phân cấp, yêu cầu các nút khi gia nhập mạng phải giải câu đố từ nút lá tới nút gốc, nút gốc là một nút tin cậy (bootstrap). Sau khi được xác thực, nút tham gia trở thành một nút lá. Quá trình giải đố này là đệ quy và được lặp lại cho đến khi nút tham gia đạt đến gốc. Nút gốc cấp cho nút tham gia một thẻ bài token chứng nhận nút tham gia vào mạng hay còn được gọi khóa công khai. Khóa công khai được sử dụng trong các Hình 2. Tấn công vào bảng định tuyến hoạt động tiếp theo để chứng minh danh tính của nút. ACS Tấn công theo cụm vào một nút cụ thể (Clustering mang lại một số các ưu điểm như: bảo mật; hiệu quả; tính attack on specific node): Tấn công theo cụm vào một nút công bằng; chống tấn công Sybil; quyền riêng tư của người cụ thể bằng cách dự đoán hàm băm h (key) -> ID, sau đó dùng, khả năng mở rộng. chèn nhiều khóa bằng h (key) gần ID nút cụ thể dẫn tới nút chuẩn bị tràn bộ nhớ. Hình 3. Tấn công theo cụm vào một nút cụ thể Hình 5. Tổ chức ACS X là nút bootstrap, A là nút gia nhập Ví dụ mục tiêu của kẻ tấn công tại nút C, nó chèn n đối 0 tượng vào DHT, tất cả khóa được băm là 25. Các đối tượng Câu đố: h(PK, TS, R) = H này được lưu trữ tại C điều này khiến bộ nhớ của nút C bị A muốn gia nhập ( join): tràn và không hoạt động. 1) A yêu cầu nút lá (puzzle) Tấn công theo cụm vào một khóa cụ thể (Clustering 2) A giải câu đố và nhận token từ Xi attack on specific key): Tấn công cụm vào một khóa cụ thể 3) A yêu cầu một câu đố khác từ X bằng cách đoán hàm băm h (key) -> ID sau đó tạo nhiều i-1 định danh ID nút sybil gần ID khóa điều này làm ảnh hưởng 4) A tiếp tục giải cho đến khi đạt đến gốc (root) đến các truy vấn trên khóa. 5) Cuối cùng A được khai báo định danh ngẫu nhiên và được chứng nhận bởi nút gốc Quá trình thiết lập gia nhập của nút (Join Setup): Trước khi tham gia mạng, một nút A phải tạo ra một cặp khóa công khai / khóa riêng KA+ / KA-. Mã định danh nút được băm mã hóa của khóa công khai của nút và giá trị ngẫu nhiên RA do nút gốc tạo ra, ví dụ: bằng cách sử dụng SHA-1. Điều này ngăn một nút chọn ID riêng của nó, phân phối đồng nhất định danh. Tất cả các nút là được cấu hình với khóa bí mật của nút gốc. Quá trình gia nhập của nút (Join Protocol): Khi một nút A Hình 4. Tấn công theo cụm vào một khóa cụ thể muốn tham gia mạng, đầu tiên nó phải khám phá một nút 36 Tạp chí KHOA HỌC & CÔNG NGHỆ ● Tập 56 - Số 1 (02/2020) Website: https://tapchikhcn.haui.edu.vn P-ISSN 1859-3585 E-ISSN 2615-9619 SCIENCE - TECHNOLOGY lá Xi. Điều này được thực hiện bằng cách nó hỏi tư vấn một bảng định tuyến của mình tất cả các nút có tiền tố như vậy nút bootstrap hoặc kết nối ngẫu nhiên với một nút lá. Tiếp trong đường dẫn của chúng. theo, để được chấp nhận từ Xi, A yêu cầu một câu đố. Sau Kẻ tấn công không phải là thành viên của ACS có thể khi A giải câu đố của Xi, nó sẽ được cấp một thẻ bài. Token đạt được định danh chậm hơn. Mỗi lần yêu cầu ID nó sẽ này được sử dụng để chứng minh A được chấp nhận để được yêu cầu duyệt toàn bộ cây cho đến khi tới nút root. tiếp tục với nút cha của Chi phí một nút bỏ ra để giải toàn bộ các câu đố trên toàn + Xi :A → Xi : KA (request) bộ cây dọc đường đi rất lớn, nhất là khi kích thước của + Xi → A : TS1, h(KA · TS1 · R1), (puzzle) mạng lên tới hàng 1.000.000 nút. Vì vậy việc tấn công để + MAC(KA · TS1 · R1, KXi ) làm chủ một phần ID của mạng là rất khó thậm chí là + + không thể. A → Xi : KA · R1.TS1, MAC(KA · TS1 · R1, KXi) (solution) + Xi → A : IDxi, TS1, MAC(KA · TS1, Kxi, xi-1) (token) 3.2.2. Mô hình hóa đánh giá hiệu năng Nếu A trả lời câu hỏi đúng A sẽ được Xi cấp thẻ bài Trong phần này, việc đánh giá hiệu năng của mô hình (token) để cho phép A kết nối tiếp tới nút cha của nó. Quá ACS thông qua tham số chi phí (thời gian) để kẻ tấn công trình được thực hiện đệ quy cho tới khi A đạt tới nút gốc, có được một phần nhỏ định danh của mạng P2P (10% số lúc này nút gốc sẽ cấp token cuối cùng và cấp định danh nút trong mạng P2P). Qua phân tích cho thấy kẻ tấn công cho nút A: phải tiêu tốn một khoảng thời gian đáng kể để làm chủ + - được một phần nhỏ định danh của mạng ngang hàng Xi → A : IDA, TSj, Sig(IDA.KA · TSj, KX0 ) + (KA khóa công khai của nút A; IDA định danh nút A; TS Mô hình hóa hệ thống: Mô hình giả định rằng các nút dấu thời gian; R1 giá trị ngẫu nhiên được nút gốc tạo ra hợp pháp đến mạng theo phân phối Poisson với tốc độ đến λg. Đây là một giả định phổ biến được sử dụng để mô hình trong phiên cấp định danh, là khóa bí mật của nút gốc, MAC(x, k) mã xác thực bản tin x với khóa k). Sau khi nhận hóa các yêu cầu trên máy chủ khác nhau. Thời gian sống được token từ gốc, A cố gắng kết nối với mạng dùng định của nút được phân phối hàm mũ với giá trị trung bình μ , danh được root cấp ở vị trí được xác định bởi giao thức mạng có kích thươc N nút. Cuối cùng, độ khó của câu đố định tuyến Chord_DHT. được đo bằng thời gian cần thiết để giải quyết nó t. Giả sử rằng kẻ tấn công có năng lực tính toán bằng năng lực trung Định danh của A: ID = h(K .R ), trong đó RA là giá ngẫu nhiên được sinh bởi nút gốc. bình của người dùng hợp pháp. Để phân tích sức mạnh kẻ tấn công, mô hình sử dụng khái niệm những kẻ thông Để kết nối, A phải chứng minh với hàng xóm tương lai đồng với các nút tấn công. Ví dụ: nếu kẻ tấn công có khả định danh của nó đã được chấp nhận bởi root X. năng tính toán nhanh gấp đôi người dùng trung bình, nó 3.2. Mô hình hóa đánh giá hiệu năng được xem xét như có hai kẻ thông đồng tấn công. Kẻ tấn ACS được thiết kế để hạn chế các cuộc tấn công Sybil, công giữ lại định danh nút mà nó có được trong một thời không phòng ngừa chúng. Các cuộc tấn công Sybil vẫn có gian vô hạn; bất cứ khi nào nó có được một ID, kẻ tấn công thể xảy ra, nhưng rất tốn kém. Có hai kịch bản tấn công ngay lập tức sẽ cố gắng để có được một cái khác. Theo cách đáng quan tâm: khi kẻ tấn công là thành viên của ACS và này, một kẻ tấn công có thể tích lũy nhiều ID theo thời gian. khi nó không là thành viên. Ở trạng thái ổn định số lượng nút trong mạng: 3.2.1. Kịch bản tấn công ACS N = λ ∗ μ (1) Nếu kẻ tấn công là thành viên của ACS, nó có thể lợi Để có thể kiểm soát f phần các nút trong mạng P2P, kẻ dụng tính ưu việt của vị trí này. Thay vì yêu cầu định danh tấn công sẽ phải yêu cầu đạt được số định danh (ID): ( ). mới phải duyệt qua toàn bộ cây, kẻ tấn công có thể phát ra Nếu thời gian để một nút tham gia được vào mạng là t (liên các thẻ (token), làm giảm số câu đố cần phải giải. Một cuộc quan tới độ khó của câu đố) và có n kẻ tấn công, tốc độ đến tấn công như vậy có thể dễ dàng bị phát hiện bởi cha mẹ của các nút tấn công sẽ là: của kẻ tấn công bằng cách quan sát tỷ lệ yêu cầu thẻ token. λ = (2) Nếu tỷ lệ này vượt quá ngưỡng xác định trước, nút được phát hiện bị cắt khỏi cây cùng toàn bộ nhánh. Bởi vì quá Thời gian cần thiết để khởi động một cuộc tấn công trình gia nhập xảy ra tại một lá ngẫu nhiên, số lượng yêu thành công: cầu tham gia trung bình khi quan sát tại nút phụ thuộc vào t (3) tỷ lệ gia nhập trung bình chung và độ cao của nút trong ấ ô ( ) cây. Biết được thông tin này giúp cho mọi nút trong hệ thống xác định giá trị của ngưỡng này. Giải thuật loại bỏ Ví dụ nếu xét mạng có kích thước 9000 nút, độ khó câu toàn bộ cây con vì không thể xác định được nút nào là hợp đố là 300s, với số nút tấn công là n = 1, nếu muốn quản lý pháp. Sau khi loại bỏ các nút từ cây, nhiệm vụ tiếp theo là 10% ID của mạng thì nút phải mất khoảng thời gian 77 giờ đẩy chúng ra khỏi mạng P2P, root đơn giản chỉ cần phát (nhiều hơn 3 ngày), nếu 4 kẻ tấn công muốn làm chủ 10% quảng bá thông báo thu hồi các ID chứa tiền tố của cây của mạng thì mất khoảng 20 giờ. Nếu tăng số nút 1.000.000 con. Sau khi nhận được thông báo này, các nút loại bỏ khỏi nút và giảm thời gian giải câu đố xuống còn 3s thì thời gian Website: https://tapchikhcn.haui.edu.vn Vol. 56 - No. 1 (Feb 2020) ● Journal of SCIENCE & TECHNOLOGY 37 KHOA H ỌC CÔNG NGHỆ P - ISSN 1859 - 3585 E - ISSN 2615 - 961 9 để hoàn thành tấn công tăng lên rất nhiều và thậm chí là việc tấn công không xảy ra. TÀI LIỆU THAM KHẢO [1]. Jiang, J., Wen, S., Yu, S., Xiang, Y., & Zhou, W., 2017. Identifying propagation sources in networks: State-of-the-art and comparative studies. IEEE Communications Surveys & Tutorials, 19(1), 465-481. [2]. Luo, B., Jin, Y., Luo, S., & Sun, Z., 2016. A symmetric lookup-based secure P2P routing algorithm. KSII Transactions on Internet and Information Systems (TIIS), 10(5), 2203-2217. [3]. Wang, F., 2017. Detecting Malicious nodes Using Failed Query Paths in Structured P2P Networks. Boletín Técnico, ISSN: 0376-723X, 55(7). [4]. SHAREH, Morteza Babazadeh, et al., 2019. Preventing Sybil attacks in P2P file sharing networks based on the evolutionary game model. Information Sciences, 470: 94-108. [5]. WANG, Feng, 2017. Preventing Sybil Attacks in Structured P2P Networks Hình 6. Thời gian tấn công vào mạng P2P using Social Network. Boletín Técnico, 55.5: 424-429. 4. KẾT LUẬN VÀ HƯỚNG NGHIÊN CỨU TIẾP THEO [6]. Rottondi, C., Panzeri, A., Yagne, C., & Verticale, G., 2014. Mitigation of Qua phân tích lý thuyết cho thấy một số tấn công như: the eclipse attack in chord overlays. Procedia Computer Science, 32, 1115-1120. Tấn công mạo nhận (Sybil Attack), tấn công che khuất [7]. Fernández, J. C., 2015. Secure identity management in structured peer- (Eclipse Attack), tấn công từ chối dịch vụ, tấn công chuyển to-peer (P2P) networks. Doctoral dissertation, Technical University of Catalonia. tiếp dữ liệu, tấn công định tuyến là các mối đe dọa nghiêm trọng tới bảo mật hệ thống P2P có cấu trúc. Để tăng tính bảo mật P2P, quan trọng nhất là phải chú ý cách thức gán định danh ID cho nút khi tham gia lớp phủ P2P và cách AUTHOR INFORMATION người dùng kiểm tra tính hợp lệ của các nodeID và xác thực Vu Thi Thuy Ha chủ sở hữu của chúng. Mô hình cấp định danh phân cấp Posts and Telecommunications Institute of Technology đưa ra với mục đích ngăn chặn tấn công Sybil sao cho mỗi nút gia nhập mạng được cấp một định danh duy nhất và bảo mật, hạn chế tối đa việc sử dụng định danh giả mạo tấn công vào Chord_DHT. Qua phân tích cho thấy kẻ tấn công muốn làm chủ một phần nhỏ của mạng cũng phải mất khoảng thời gian rất dài và tiêu tốn rất nhiều công sức. Trong trường hợp kích thước của mạng lớn thì việc tấn công Sybil gần như là không thể. Tuy nhiên hiện nghiên cứu đang để thời gian tiêu tốn khi một nút gia nhập là như nhau, trong thực tế việc giải câu đố để đạt được định danh của các nút là không đồng nhất vì vậy việc mô hình hóa cần phải tính tới cả yếu tố đó. Hơn nữa nếu sử dụng một máy chủ dẫn tới dễ xảy ra lỗi điểm đơn vì vậy việc sao lưu dữ liệu từ root ra một số máy chủ cũng là hướng nghiên cứu cần thiết để nâng cao độ tin cậy và giúp cân bằng tải cho các máy chủ trong việc cấp định danh. 38 Tạp chí KHOA HỌC & CÔNG NGHỆ ● Tập 56 - Số 1 (02/2020) Website: https://tapchikhcn.haui.edu.vn
File đính kèm:
- quan_ly_dinh_danh_bao_mat_trong_mang_ngang_hang_co_cau_truc.pdf