Skip to content
Blockchain

Tại sao việc nâng cấp hợp đồng thông minh của tôi lại cho phép tôi âm thầm làm hỏng bộ nhớ lưu trữ mà kiểm toán viên đã phê duyệt?

82

Cơ hội

Các mẫu proxy có thể nâng cấp (UUPS, Transparent Proxy, Diamond) là tiêu chuẩn trong DeFi sản xuất nhưng kèm theo một ràng buộc nghiêm ngặt: bố cục lưu trữ của một triển khai mới phải tương thích với mọi slot mà triển khai trước đó đã gán. Chèn một biến trạng thái mới ở vị trí sai và mọi slot tiếp theo sẽ bị hỏng âm thầm mà không có lỗi nào trên chuỗi. Các công cụ kiểm tra tự động như plugin nâng cấp của OpenZeppelin bắt được các trường hợp đơn giản nhưng bỏ sót lưu trữ có tên miền ERC-7201 với đóng gói tùy chỉnh, các gán slot ở cấp assembly, và va chạm chéo giữa các facet của Diamond khi hai facet cùng chiếm một vùng lưu trữ. Một nghiên cứu đồng đánh giá vào tháng 1 năm 2026 (ProxyLens) đã phát hiện một lớp lỗ hổng va chạm liên facet đáng kể mà các công cụ hiện có không phát hiện được. Kiểm toán viên xem xét các hợp đồng triển khai riêng lẻ và không thể tái tạo bản đồ lưu trữ đầy đủ của một proxy có nhiều facet được ủy quyền.

Tại sao quan trọng

Một công cụ xây dựng bản đồ lưu trữ hoàn chỉnh, có so sánh phiên bản trên tất cả các hợp đồng proxy và triển khai sẽ biến một lớp hỏng dữ liệu âm thầm thành một triển khai bị chặn.

Cách tôi đánh giá cơ hội

Điểm Cơ Hội là đánh giá riêng của tôi, không phải một phép đo chính xác: mức độ gây khó chịu, tần suất xuất hiện và sự khan hiếm của giải pháp hiện có. Điểm càng cao, tôi càng cho rằng vấn đề đó càng đáng để xây dựng.

Mức độ nghiêm trọng9/10

Mức độ phiền toái nó gây ra khi xuất hiện.

Tần suất6/10

Tần suất mọi người thực sự gặp phải nó.

Khoảng trắng8/10

Có rất ít công cụ tốt để xử lý nó hiện nay.

Thêm các vấn đề đáng giải quyết