Gần đây, một công ty an ninh hợp đồng thông minh nổi tiếng đã phát hiện ra rằng hợp đồng thông minh của một dự án tài sản số có hai lỗ hổng nghiêm trọng. Hai lỗ hổng này có thể dẫn đến việc tài sản của người dùng bị khóa và bên dự án không thể rút tiền.
Lỗ hổng đầu tiên nằm trong chức năng hoàn tiền. Chức năng này sử dụng vòng lặp để hoàn tiền cho tất cả người dùng, 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 hoàn tiền và dẫn đến việc giao dịch thất bại. Điều này sẽ ngăn cản tất cả người dùng nhận được hoàn tiền. May mắn thay, lỗ hổng này đã không bị khai thác thực tế.
Để tránh các vấn đề tương tự, các chuyên gia gợi ý Bên dự án có thể thực hiện các biện pháp sau để đảm bảo hoàn tiền an toà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 thay vì tài sản gốc
Thiết kế chức năng để người dùng chủ động yêu cầu hoàn tiền, tránh hoàn tiền hàng loạt.
Lỗ hổng thứ hai là do một lỗi logic trong mã. Trong hàm rút tiền của bên dự án, có một câu lệnh điều kiện, nhưng đối tượng so sánh thì sai. Điều này dẫn đến việc điều kiện không bao giờ được thỏa mãn, bên dự án không thể rút tiền từ hợp đồng. Theo ước tính, hiện có khoảng 34 triệu USD tài sản đang bị khóa trong hợp đồng.
Sự kiện này một lần nữa nhấn mạnh rằng ngay cả những dự án nổi tiếng cũng có thể xảy ra sai sót cơ bản. Nhóm phát triển cần xây dựng đủ các trường hợp kiểm tra khi viết hợp đồng thông minh và có nhận thức cơ bản về an toàn. Mặc dù trong lĩnh vực tài chính phi tập trung, kiểm toán an toàn đã trở thành một thực tiễn thông thường, nhưng trong các dự án tài sản số, kiểm toán an toàn vẫn còn thiếu. Sự sơ suất này có thể dẫn đến tổn thất tài chính lớn.
Sự kiện này nhắc nhở chúng ta rằng, với sự phát triển không ngừng của công nghệ blockchain, Bên dự án càng nên chú trọng đến sự an toàn của hợp đồng thông minh để bảo vệ lợi ích của người dùng và chính mình.
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.
Dự án tài sản số xuất hiện lỗ hổng kép, tài sản 34 triệu USD có thể bị khóa.
Gần đây, một công ty an ninh hợp đồng thông minh nổi tiếng đã phát hiện ra rằng hợp đồng thông minh của một dự án tài sản số có hai lỗ hổng nghiêm trọng. Hai lỗ hổng này có thể dẫn đến việc tài sản của người dùng bị khóa và bên dự án không thể rút tiền.
Lỗ hổng đầu tiên nằm trong chức năng hoàn tiền. Chức năng này sử dụng vòng lặp để hoàn tiền cho tất cả người dùng, 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 hoàn tiền và dẫn đến việc giao dịch thất bại. Điều này sẽ ngăn cản tất cả người dùng nhận được hoàn tiền. May mắn thay, lỗ hổng này đã không bị khai thác thực tế.
Để tránh các vấn đề tương tự, các chuyên gia gợi ý Bên dự án có thể thực hiện các biện pháp sau để đảm bảo hoàn tiền an toàn:
Lỗ hổng thứ hai là do một lỗi logic trong mã. Trong hàm rút tiền của bên dự án, có một câu lệnh điều kiện, nhưng đối tượng so sánh thì sai. Điều này dẫn đến việc điều kiện không bao giờ được thỏa mãn, bên dự án không thể rút tiền từ hợp đồng. Theo ước tính, hiện có khoảng 34 triệu USD tài sản đang bị khóa trong hợp đồng.
Sự kiện này một lần nữa nhấn mạnh rằng ngay cả những dự án nổi tiếng cũng có thể xảy ra sai sót cơ bản. Nhóm phát triển cần xây dựng đủ các trường hợp kiểm tra khi viết hợp đồng thông minh và có nhận thức cơ bản về an toàn. Mặc dù trong lĩnh vực tài chính phi tập trung, kiểm toán an toàn đã trở thành một thực tiễn thông thường, nhưng trong các dự án tài sản số, kiểm toán an toàn vẫn còn thiếu. Sự sơ suất này có thể dẫn đến tổn thất tài chính lớn.
Sự kiện này nhắc nhở chúng ta rằng, với sự phát triển không ngừng của công nghệ blockchain, Bên dự án càng nên chú trọng đến sự an toàn của hợp đồng thông minh để bảo vệ lợi ích của người dùng và chính mình.