Kiểm toán bảo mật ví Nym

Kiểm toán bảo mật của Ví Nym

6 phút Đọc

Giới thiệu

Vào tháng 12 năm 2022, Nym đã trải qua một cuộc kiểm toán bảo mật độc lập thực hiện bởi Oak Security, một công ty tư vấn bảo mật mạng có trụ sở tại Đức, chuyên về kiểm toán blockchain thế hệ thứ ba và các giao thức phi tập trung. Với kinh nghiệm phong phú trong các hệ sinh thái như Cosmos, Terra, Polkadot và Flow, Oak Security đã được tin tưởng để đảm nhiệm nhiệm vụ đánh giá hai thành phần quan trọng của hệ sinh thái Nym: (1) Nym mixnet và các hợp đồng vesting (xem báo cáo đầy đủ) và (2) Ví Nym (xem báo cáo đầy đủ). Cuộc kiểm toán nhằm đánh giá tính bảo mật và độ mạnh mẽ của các thành phần này, xác định các lỗ hổng tiềm ẩn và đảm bảo tuân thủ các thực hành tốt nhất trong phát triển mã nguồn bảo mật. Để dễ theo dõi hơn, chúng tôi đã tóm tắt các phát hiện cho từng thành phần. Bạn có thể xem tóm tắt kiểm toán mixnet và hợp đồng vesting của Nym tại đây.

Tóm tắt Kiểm toán Ví Nym thực hiện bởi Oak Security

Cuộc kiểm toán kéo dài hai tuần, có sự tham gia của một nhóm bốn chuyên gia từ Oak Security. Nym đã cung cấp quyền truy cập đầy đủ vào toàn bộ codebase, thông số kỹ thuật dự án và tài liệu liên quan. Phạm vi kiểm toán bao gồm kho lưu trữ "nym-wallet".

Các kiểm toán viên đã tiến hành đánh giá toàn diện kho lưu trữ nym-wallet, đánh giá các lỗ hổng bảo mật, cơ chế tích hợp, độ mạnh của mật mã và mức độ tuân thủ chung đối với các thực hành phát triển bảo mật.

Oak Security đã áp dụng phương pháp kết hợp, giữa phân tích tự động với kiểm tra mã thủ công để phát hiện các điểm yếu về bảo mật.

Tổng quan về các phát hiện

Ví Nym được phát hiện có một mã nguồn được cấu trúc tốt với độ dễ đọc từ trung bình đến cao. Các kiểm toán viên đã đề xuất tăng cường phạm vi kiểm tra và tài liệu để tăng cường độ tin cậy và khả năng bảo trì.

Tổng cộng có 17 phát hiện trong ví Nym đã được báo cáo. Không có phát hiện nào được phân loại là nghiêm trọng; bốn phát hiện được đánh giá là lớn, trong khi 13 phát hiện còn lại được phân loại là nhỏ hoặc mang tính thông tin, tạo cơ hội để tinh chỉnh thêm việc triển khai ví.

Nhóm Nym đã nhanh chóng giải quyết tất cả các phát hiện chính, và Oak Security đã xem xét và phê duyệt các bản sửa lỗi.

NYM-WALLET-1: Mật khẩu vẫn còn trong bộ nhớ sau khi đăng xuất (Lớn)

Các kiểm toán viên đã xác định rằng, không giống như cụm từ ghi nhớ, mật khẩu được sử dụng để lấy lại cụm từ ghi nhớ vẫn hiển thị trong bộ nhớ ngay cả sau khi người dùng đã đăng xuất.

Để giải quyết vấn đề, Nym đã triển khai một giải pháp tái chế cửa sổ khi đăng xuất và tạo tài khoản. Hành động này thực sự phá hủy WebView, nơi giữ môi trường thực thi JavaScript và xóa bất kỳ dữ liệu nhạy cảm nào, bao gồm cụm từ ghi nhớ và mật khẩu từ bộ nhớ.

NYM-WALLET-2: Cụm từ ghi nhớ được giữ trong bộ nhớ sau khi tạo tài khoản trong ví (Lớn)

Các kiểm toán viên đã xác định rằng mặc dù cụm từ ghi nhớ được ghi đè đúng cách trong bộ nhớ khi người dùng đăng xuất, nhưng điều này không xảy ra sau khi tạo tài khoản. Cụ thể, khi một tài khoản mới được tạo trong ví, cụm từ ghi nhớ không bị xóa khỏi bộ nhớ ngay cả sau khi người dùng đăng xuất, có thể làm lộ thông tin nhạy cảm.

Giải pháp được triển khai trong NYM-WALLET-1 cũng đã giải quyết vấn đề này.

NYM-WALLET-3: Phạm vi ký tự đặc biệt cho mật khẩu bị hạn chế (Lớn)

Các kiểm toán viên đã xác định rằng thành phần PasswordStrength trong ví sử dụng một mẫu regex để thực thi độ mạnh của mật khẩu, nhưng mẫu này quá hạn chế và được khuyến nghị sử dụng một bộ ký tự linh hoạt hơn để cho phép phạm vi mật khẩu rộng hơn. Chúng tôi đã giải quyết vấn đề này bằng cách cập nhật mẫu regex, theo đề xuất của các nhà kiểm toán, để cho phép phạm vi ký tự rộng hơn và tăng cường tính bảo mật của mật khẩu.

Chúng tôi đã giải quyết vấn đề này bằng cách tích hợp gói Dropbox "zxcvbn" để xác thực độ mạnh của mật khẩu một cách chính xác và hiệu quả hơn.

NYM-WALLET-4: Người dùng bị buộc phải sao chép cụm từ ghi nhớ vào bộ nhớ tạm (Lớn)

Trong quá trình tạo tài khoản, người dùng được cung cấp cụm từ ghi nhớ và phải nhấp vào nút "Sao chép cụm từ nhớ" để sao chép cụm từ này vào bộ nhớ tạm. Các kiểm toán viên xác định hành vi này tiềm ẩn rủi ro bảo mật vì các ứng dụng khác có khả năng truy cập vào cụm từ ghi nhớ.

Để giải quyết vấn đề này, chúng tôi đã tuân theo khuyến nghị của các kiểm toán viên bằng cách loại bỏ nút "Sao chép cụm từ ghi nhớ". Thay vào đó, chúng tôi đã thêm hướng dẫn về cách lưu trữ và sử dụng cụm từ ghi nhớ một cách an toàn và hộp kiểm cho người dùng xác nhận rằng họ đã đọc và hiểu thông tin được cung cấp.

Last Words

Chúng tôi muốn cảm ơn đội ngũ Oak Security vì chuyên môn và sự tận tâm của họ trong suốt quá trình kiểm toán này. Chúng tôi cũng đánh giá cao sự hợp tác và tính chuyên nghiệp được thể hiện trong cả giai đoạn lập kế hoạch và thực hiện kiểm toán. Cam kết của chúng tôi đối với bảo mật vẫn là ưu tiên hàng đầu, và chúng tôi mong muốn tiếp tục hợp tác với các chuyên gia để duy trì các tiêu chuẩn cao nhất cho hệ sinh thái.

Chia sẻ