BlockSec gần đây phát hiện ra rằng một hợp đồng số sưu tầm tồn tại hai lỗ hổng nghiêm trọng, gây ra sự theo dõi trong ngành. Lỗ hổng đầu tiên có thể dẫn đến việc hợp đồng bị tấn công từ chối dịch vụ, khiến tài sản của người dùng đối mặt với rủi ro bị khóa; lỗ hổng thứ hai có thể khiến bên dự án hơn 34 triệu đô la tài sản bị kẹt vĩnh viễn trong hợp đồng và không thể rút ra.
Lỗ hổng đầu tiên nằm trong chức năng xử lý hoàn tiền. Chức năng này hoàn tiền cho tất cả người dùng qua vòng lặp, nhưng nếu đối tượng hoàn tiền là hợp đồng độc hại, nó có thể từ chối nhận và hoàn nguyên giao dịch, dẫn đến việc toàn bộ quá trình hoàn tiền bị gián đoạn. May mắn là lỗ hổng này chưa được khai thác thực tế.
Đối với các trường hợp như vậy, các chuyên gia an ninh khuyên các dự án nên thực hiện các biện pháp sau để tăng cường tính an toàn của cơ chế hoàn tiền:
Hạn chế chỉ có tài khoản người dùng cá nhân có thể tham gia dự án
Sử dụng token ERC20 và các tài sản thay thế khác
Thiết kế chức năng để người dùng chủ động nhận hoàn tiền, tránh hoàn tiền hàng loạt
Lỗ hổng thứ hai xuất phát từ một lỗi lập trình. Trong hàm rút tiền dự án, có một câu lệnh điều kiện bị sai. Câu lệnh này lẽ ra phải so sánh tiến độ hoàn trả với chỉ số thầu, nhưng lại sai lầm so sánh với tổng số thầu. Do tiến độ hoàn trả luôn nhỏ hơn tổng số thầu và không còn tăng lên, điều kiện không bao giờ được thỏa mãn, dẫn đến việc tiền của bên dự án bị khóa vĩnh viễn trong hợp đồng.
Lỗi này đã khiến hơn 34 triệu đô la tài sản hiện đang bị kẹt trong hợp đồng và không thể rút ra.
Các chuyên gia an ninh cho biết, thật đáng ngạc nhiên, sau sự cố lỗ hổng xác thực chữ ký của các bộ sưu tập kỹ thuật số NBA, một dự án nổi tiếng khác lại xuất hiện lỗi sơ đẳng như vậy. Họ nhấn mạnh rằng, trong quá trình phát triển dự án cần phải viết đủ các trường hợp kiểm tra và có nhận thức cơ bản về an ninh. Mặc dù trong lĩnh vực tài chính phi tập trung, kiểm toán an ninh đã trở thành một thực tiễn thông thường, nhưng trong các dự án bộ sưu tập kỹ thuật số, kiểm toán an ninh vẫn còn thiếu sót, sự lơ là này đã trực tiếp dẫn đến tổn thất lớn.
Sự kiện này một lần nữa làm nổi bật tầm quan trọng của việc kiểm toán an ninh dự án blockchain, kêu gọi ngành công nghiệp tăng cường kiểm tra an ninh đối với hợp đồng sản phẩm kỹ thuật số, nhằm ngăn chặn các sự kiện tương tự xảy ra lần nữa.
Xem bản gốc
Trang này có thể chứa nội dung của bên thứ ba, được cung cấp chỉ nhằm mục đích thông tin (không phải là tuyên bố/bảo đảm) và không được coi là sự chứng thực cho quan điểm của Gate hoặc là lời khuyên về tài chính hoặc chuyên môn. Xem Tuyên bố từ chối trách nhiệm để biết chi tiết.
11 thích
Phần thưởng
11
5
Chia sẻ
Bình luận
0/400
TokenomicsTinfoilHat
· 07-27 20:38
Lại không còn gì, tài sản không đủ để trả nợ.
Xem bản gốcTrả lời0
LidoStakeAddict
· 07-26 12:54
Hợp đồng gg đều cho tôi ướt
Xem bản gốcTrả lời0
LiquidationKing
· 07-25 03:43
Một NFT giảm về 0
Xem bản gốcTrả lời0
TopBuyerBottomSeller
· 07-25 03:42
Hợp đồng lại nổ rồi, kinh điển sản xuất đồ ngốc
Xem bản gốcTrả lời0
PanicSeller
· 07-25 03:32
Lại kiếm được nhiều rồi chứ? Chắc chắn không có tiền để hoàn lại rồi.
Hợp đồng tài sản số xuất hiện lỗ hổng kép, 34 triệu USD tài sản bị khóa vĩnh viễn.
BlockSec gần đây phát hiện ra rằng một hợp đồng số sưu tầm tồn tại hai lỗ hổng nghiêm trọng, gây ra sự theo dõi trong ngành. Lỗ hổng đầu tiên có thể dẫn đến việc hợp đồng bị tấn công từ chối dịch vụ, khiến tài sản của người dùng đối mặt với rủi ro bị khóa; lỗ hổng thứ hai có thể khiến bên dự án hơn 34 triệu đô la tài sản bị kẹt vĩnh viễn trong hợp đồng và không thể rút ra.
Lỗ hổng đầu tiên nằm trong chức năng xử lý hoàn tiền. Chức năng này hoàn tiền cho tất cả người dùng qua vòng lặp, nhưng nếu đối tượng hoàn tiền là hợp đồng độc hại, nó có thể từ chối nhận và hoàn nguyên giao dịch, dẫn đến việc toàn bộ quá trình hoàn tiền bị gián đoạn. May mắn là lỗ hổng này chưa được khai thác thực tế.
Đối với các trường hợp như vậy, các chuyên gia an ninh khuyên các dự án nên thực hiện các biện pháp sau để tăng cường tính an toàn của cơ chế hoàn tiền:
Lỗ hổng thứ hai xuất phát từ một lỗi lập trình. Trong hàm rút tiền dự án, có một câu lệnh điều kiện bị sai. Câu lệnh này lẽ ra phải so sánh tiến độ hoàn trả với chỉ số thầu, nhưng lại sai lầm so sánh với tổng số thầu. Do tiến độ hoàn trả luôn nhỏ hơn tổng số thầu và không còn tăng lên, điều kiện không bao giờ được thỏa mãn, dẫn đến việc tiền của bên dự án bị khóa vĩnh viễn trong hợp đồng.
Lỗi này đã khiến hơn 34 triệu đô la tài sản hiện đang bị kẹt trong hợp đồng và không thể rút ra.
Các chuyên gia an ninh cho biết, thật đáng ngạc nhiên, sau sự cố lỗ hổng xác thực chữ ký của các bộ sưu tập kỹ thuật số NBA, một dự án nổi tiếng khác lại xuất hiện lỗi sơ đẳng như vậy. Họ nhấn mạnh rằng, trong quá trình phát triển dự án cần phải viết đủ các trường hợp kiểm tra và có nhận thức cơ bản về an ninh. Mặc dù trong lĩnh vực tài chính phi tập trung, kiểm toán an ninh đã trở thành một thực tiễn thông thường, nhưng trong các dự án bộ sưu tập kỹ thuật số, kiểm toán an ninh vẫn còn thiếu sót, sự lơ là này đã trực tiếp dẫn đến tổn thất lớn.
Sự kiện này một lần nữa làm nổi bật tầm quan trọng của việc kiểm toán an ninh dự án blockchain, kêu gọi ngành công nghiệp tăng cường kiểm tra an ninh đối với hợp đồng sản phẩm kỹ thuật số, nhằm ngăn chặn các sự kiện tương tự xảy ra lần nữa.