Nhiều hợp đồng thông minh DeFi có thể rút số tiền không giới hạn từ ví người dùng, điều đó có khả năng gây ra thảm họa.
- CEO Messari: ADA sẽ là tiền điện tử lớn thứ năm vào năm 2021
- Giá LINK gần chạm mức ATH mới – Đây là 3 lý do thúc đẩy cuộc biểu tình
Một lỗ hổng được phát hiện trên Bancor vào thứ Năm cho phép hacker rút tiền của bất kỳ ai tương tác với các hợp đồng thông minh của nó. Lỗ hổng dựa trên khái niệm ủy quyền rút tiền, được giới thiệu trong tiêu chuẩn ERC-20. Điều này cho phép các ứng dụng phi tập trung (Dapp) dựa trên Ethereum khác nhau tự động rút tiền từ ví của người dùng.
Như Oded Leiba, một kỹ sư nghiên cứu tại ZenGo đã viết, chức năng rút tiền trên hợp đồng thông minh Bancor đã bị thiết lập sai mang lại cơ hội bất kỳ ai cũng có thể chỉ định nó.
Bancor đã rút tiền của người dùng trước khi các bên độc hại có thể can thiệp.
Các hợp đồng Bancor đã yêu cầu ủy quyền không giới hạn để rút tiền trong lần tương tác đầu tiên với giao thức. Ngay cả khi người dùng chỉ có kế hoạch kiểm tra giao thức với số tiền hạn chế, hệ thống có thể rút toàn bộ số dư của token cụ thể đó.
Hóa ra, nhiều DApp khác trên Ethereum cũng làm như vậy.
Phê duyệt không giới hạn trong thời gian không giới hạn
Như Leiba nói, nhiều ứng dụng Defi nổi tiếng yêu cầu phê duyệt vô hạn. Trong số những thử nghiệm được thực hiện bởi nhóm ZenGo, Compound, Uniswap, bZX, Aave, Kyber và dYdX đều có các phê duyệt vô hạn hoặc cực kỳ lớn.
Kain Warwick, người sáng lập Synthetix nói rằng, sự chấp thuận vô hạn cho phép khả năng sử dụng tốt hơn và Gas thấp hơn, nhưng đổi lại rủi ro cao hơn. Cho đến nay, hầu hết các nền tảng DeFi dường như thích mức độ mà một cái gì đó có thể hoặc phù hợp để được sử dụng. Tuy nhiên, sau vụ tai nạn, Bancor đã quyết định sửa đổi hợp đồng của mình để chỉ phê duyệt số tiền cần thiết với mỗi giao dịch.
Warwick tin rằng, “đây là một vấn đề nghiêm trọng vì mỗi hợp đồng mới mà bạn đưa ra một sự chấp thuận vô hạn, sẽ khiến bạn gặp nhiều rủi ro hơn nếu hợp đồng bị xâm phạm”.
Ngay cả khi nền tảng không còn được sử dụng, các phê duyệt vẫn có hiệu lực. Leiba lưu ý rằng hơn 160 địa chỉ vẫn dễ bị tổn thương đối với hợp đồng thông minh Bancor bị lỗi. Tuy nhiên, nếu họ quay trở lại hoạt động, hacker sẽ có thể đánh cắp tiền bất cứ lúc nào.
Đổ lỗi cho các tiêu chuẩn
Có những hạn chế cơ bản đối với tiêu chuẩn token ERC-20 thường được sử dụng ngày nay. Các phê duyệt không thể có giới hạn thời gian, điều này có thể giúp giảm thiểu một số tác động dài hạn của các khoản phụ cấp vô hạn.
Các tiêu chuẩn cạnh tranh khác nhau như ERC-223 đã tìm cách giảm thiểu vấn đề bằng cách loại bỏ hoàn toàn sự cần thiết phải phê duyệt. Trong hầu hết các ứng dụng hiện có, những tương tác với hợp đồng thông minh có thể được ký tắt thủ công mỗi lần mà không ảnh hưởng đáng kể đến trải nghiệm người dùng.
Tuy nhiên, các hợp đồng thông minh không thể đáp ứng với các chỉ định chuyển đơn phương đơn giản do người dùng thực hiện. Thay vào đó, họ phải tự mình thu thập các token bằng cách sử dụng chức năng transferFrom, trong đó yêu cầu thiết lập trợ cấp thông qua phương thức phê duyệt của Wap.
Warwick giải thích rằng ban đầu nhóm sử dụng tiêu chuẩn ERC-223 tiên tiến hơn. Các vấn đề về sử dụng Gas quá mức và lỗi với các hợp đồng không hỗ trợ tiêu chuẩn mới đã buộc cộng đồng phải từ bỏ nó.
“Các tiêu chuẩn rất khó và khi mọi thứ được thiết kế cho ERC20 đơn phương chuyển sang ERC223 sẽ tạo ra rất nhiều xung đột”.
Làm thế nào để khắc phục điều này?
Một số ví cho phép người dùng sửa đổi số tiền trợ cấp cụ thể trong yêu cầu phê duyệt, mặc dù ít người tiết lộ rõ giá trị mặc định là gì. ZenGo đã triển khai một hệ thống trong đó các phê duyệt được gửi đồng thời với mỗi lần chuyển, điều này có thể giúp bảo vệ người dùng với chi phí sử dụng Gas cao hơn.
Warwick đã chia sẻ các hoạt động bảo mật của mình:
“Tôi có thể chấp thuận hợp đồng vô hạn nhưng tôi rất cẩn thận với tài khoản nào tôi thực hiện và hợp đồng nào tôi cung cấp cho nó vì nó ít xung đột hơn, nhưng rủi ro cao hơn nhiều”.
Ông cũng đề xuất rằng “nên bảo trì” bằng cách loại bỏ các khoản phụ cấp cho các hợp đồng không sử dụng thông qua các công cụ như Revoke, Approved Zone và TAC..
- Giá ETH đã sẵn sàng bùng nổ khi giá trị DeFi parabol và khối lượng DEX tăng đột biến
- Cựu CEO Wirecard Markus Braun bị cảnh sát Đức bắt với cáo buộc thổi phồng 2.1 tỷ đô la tài sản để lôi kéo nhà đầu tư