Theo báo cáo từ nền tảng an ninh blockchain Peck Shield, giao thức DeFi (DeFi) Onyx đã bị khai thác với số tiền thiệt hại là 3,8 triệu USD vào ngày 26 tháng 9. Cuộc tấn công này dựa trên một lỗi đã biết trong mã nguồn Compound Finance v2. Lỗi này đã từng được sử dụng để khai thác Onyx vào ngày 1 tháng 11 trước đó. Báo cáo cho biết lỗ hổng trong hợp đồng thanh lý NFT cũng góp phần vào cuộc tấn công này.
Vào ngày 27 tháng 9, đội ngũ Onyx đã tuyên bố trên X rằng, hợp đồng NFT bị lỗi chính là nguyên nhân dẫn đến vụ khai thác này.
Theo báo cáo của Peck Shield, số tài sản bị rút khỏi giao thức bao gồm 4,1 triệu USD ảo (VUSD), 7,35 triệu Onyxcoin (XCN), 0,23 Wrapped Bitcoin (WBTC), 5.000 USD giá trị của stablecoin Dai (DAI) và 50.000 USD giá trị của stablecoin Tether (USDT), tổng cộng vượt qua 3,8 triệu USD.
Lỗ hổng đã biết này tồn tại trong phiên bản 2 của Compound Finance, một mã nguồn thường được các giao thức DeFi phân nhánh và sử dụng. Nó đã dẫn đến một cuộc tấn công vào Hundred Finance vào tháng 4 năm 2023. Tháng 11 năm ngoái, lỗ hổng này đã lần đầu tiên được sử dụng để khai thác Onyx.
Lỗi này chỉ có thể bị khai thác khi tồn tại một “thị trường rỗng” hoặc một thị trường không có thanh khoản, thường chỉ xảy ra khi một thị trường mới được khởi chạy.
Đội ngũ Onyx đã thừa nhận cuộc tấn công trong một bài viết trên X. “Giao thức Onyx đã gặp phải sự cố an ninh khi một kẻ xấu đã khai thác giao thức để rút VUSD,” họ tuyên bố. Tuy nhiên, họ khẳng định rằng lỗi đã biết không phải là nguyên nhân chính. “[V]ấn đề chính không phải là thị trường rỗng mà là Hợp đồng Thanh lý NFT,” họ viết trong một bài viết khác.
Peck Shield đồng ý rằng hợp đồng NFT “là một yếu tố khác tạo điều kiện cho cuộc tấn công.” Hợp đồng lỗi này cho phép kẻ tấn công “tăng số tiền thưởng tự thanh lý” vì nó không “kiểm tra đầy đủ đầu vào từ người dùng (không đáng tin cậy).”
Các vụ khai thác DeFi là nguồn tổn thất phổ biến cho người dùng Web3. Ngày 27 tháng 9, giao thức đặt cược thanh khoản Bedrock đã mất hơn 2 triệu USD do lỗ hổng trong hợp đồng uniBTC của nó. Ngày 23 tháng 9, Mạng lưới Bankroll đã mất 230.000 USD khi một kẻ tấn công thực hiện nhiều lần tự chuyển, khai thác chức năng “buyFor” bị lỗi để tăng lợi nhuận của họ.