Tiêu đề gốc: DeFi đã thấy sự khai thác $25M USR của Resolv nhiều lần trước đây

Tác giả gốc: Camila Russo

Nguồn gốc: https://thedefiant.io/news/hacks/defi-has-seen-resolv-s-usd25m-usr-exploit-many-times-before

Bản sao: Hỏa Tinh Tài Chính

Vào một buổi sáng Chủ nhật yên tĩnh, ai đó đã biến 100.000 đô la thành 25 triệu đô la chỉ trong khoảng 17 phút.

Mục tiêu là giao thức stablecoin sinh lời Resolv. Trước khi Resolv tạm dừng hợp đồng, stablecoin USR gắn với đô la của nó đã giảm xuống còn vài cent. Tính đến thời điểm viết bài này, USR vẫn đang bị mất giá nghiêm trọng, với giá giao dịch khoảng 0,25 đô la, giảm hơn 70% trong tuần.

Cơn sóng chấn động không chỉ dừng lại ở Resolv. Fluid/Instadapp đã hấp thụ hơn 10 triệu đô la khoản nợ xấu trong một ngày, và cùng ngày đó gặp phải dòng tiền ròng vượt quá 300 triệu đô la, lập kỷ lục dòng ra lớn nhất trong lịch sử. 15 kho tiền Morpho đã bị ảnh hưởng. Euler, Venus, Lista DAO và Inverse Finance đều đã tạm ngừng các thị trường liên quan đến USR.

Cơ chế dẫn đến thiệt hại từ lỗ hổng này — định giá stablecoin mất giá ở mức 1 đô la trong thị trường cho vay — không phải là điều mới mẻ. Trong 14 tháng qua, tình huống này đã xảy ra ít nhất bốn lần.

Lỗi hoạt động như thế nào

Việc đúc USR tuân theo một quy trình hai bước ngoài chuỗi: người dùng gửi USDC thông qua hàm `requestSwap`, một khóa ký ngoài chuỗi có quyền hạn `SERVICE_ROLE` sau đó thông qua `completeSwap` xác định số lượng USR phát hành.

Hợp đồng có giới hạn đầu ra tối thiểu nhưng không có giới hạn tối đa. Những gì người nắm giữ khóa ký sẽ thực hiện, hợp đồng sẽ thực thi cái đó.

Kẻ tấn công đã lấy quyền truy cập vào khóa của dịch vụ quản lý khóa AWS của Resolv. Họ đã gửi hai khoản tiền gửi USDC, tổng cộng khoảng 100.000 đến 200.000 đô la, sau đó đã sử dụng khóa bị đánh cắp để được phép đúc 80 triệu USR. Dữ liệu trên chuỗi cho thấy hai giao dịch lần lượt là 50 triệu USR và 30 triệu USR, đều được hoàn thành trong vài phút.

「Lỗi Resolv USR không phải là một bug — mà là một chức năng hoạt động bình thường theo thiết kế. Đó mới là vấn đề.」 nhà phân tích trên chuỗi Vadim (@zacodil) cho biết.

SERVICE_ROLE là một địa chỉ tài khoản bên ngoài thông thường, không phải là đa chữ ký. Khóa quản trị có bảo vệ đa chữ ký, nhưng khóa đúc không có.

「Resolv đã trải qua 18 lần kiểm toán,」 Vadim nói,「một trong những phát hiện được đặt tên trực tiếp là 'Thiếu giới hạn'」。

Kẻ tấn công đã rút lui một cách có tổ chức: trước tiên chuyển đổi USR đã đúc thành wstUSR (phiên bản đóng gói đã được thế chấp) để làm giảm cú sốc thị trường, sau đó đổi chúng lấy ETH thông qua Curve, Uniswap và KyberSwap. Ví của kẻ tấn công nắm giữ khoảng 11,400 ETH (khoảng 24 triệu đô la). Quỹ tài sản thế chấp ETH và BTC hỗ trợ toàn bộ hệ thống đã giữ nguyên trong khi stablecoin sụp đổ.

Lây nhiễm như thế nào lan rộng

Lỗi Resolv thực sự là sự chồng chéo của hai sự kiện. Sự kiện đầu tiên là lỗ hổng đúc tiền, sự kiện thứ hai là thị trường cho vay liên kết mất hiệu lực.

Khi USR và wstUSR sụp đổ, mỗi thị trường cho vay nhận chúng làm tài sản thế chấp đều phải đối mặt với cùng một vấn đề: oracle của chúng vẫn định giá wstUSR gần 1 đô la.

Người sáng lập cơ quan phân tích rủi ro Chaos Labs Omer Goldberg đã ghi lại cơ chế này. Phát hiện cốt lõi của ông là:「Oracle được mã hóa cứng, do đó chưa bao giờ được định giá lại. wstUSR được đánh dấu là 1.13 đô la, trong khi giá giao dịch trên thị trường thứ cấp khoảng 0.63 đô la.」

Các nhà giao dịch mua wstUSR với giá thấp trên thị trường mở, sau đó sử dụng nó làm tài sản thế chấp với báo giá oracle là 1.13 đô la tại Morpho hoặc Fluid, rồi rút USDC và rời đi.

Tại Fluid, đội ngũ đã huy động khoản vay ngắn hạn để bao phủ 100% khoản nợ xấu, và cam kết bồi thường đầy đủ cho từng người dùng. Tại Morpho, đồng sáng lập Paul Frambot cho biết có khoảng 15 kho tiền đang có nhiều rủi ro, tất cả đều nằm trong chiến lược tài sản thế chấp dài hạn và rủi ro cao.

Curator nổi tiếng Gauntlet cho biết,「Mức độ phơi bày của một số kho tiền sinh lợi cao là hạn chế.」

Nhưng D2 Finance đã phản bác lại tuyên bố này, phát hành dữ liệu trên chuỗi cho thấy kho tiền flagship của Gauntlet「USDC Core」đã phân bổ 4.95 triệu đô la cho thị trường wstUSR/USDC. Goldberg sau đó cho biết, kho tiền Gauntlet chiếm 98% thanh khoản của người cho vay trong thị trường này.

Frambot cho biết trong phản hồi bằng văn bản tới The Defiant:「Chúng tôi đã nghiên cứu cách thể hiện đầy đủ hơn về các loại rủi ro. Tuy nhiên, chúng tôi không cho rằng vấn đề cốt lõi ở đây là thiếu đánh dấu.」

Frambot bổ sung:「Morpho không phụ thuộc vào oracle, điều này có nghĩa là nó cho phép curator chọn bất kỳ oracle nào mà họ cho là phù hợp nhất với thị trường cụ thể. Morpho là cơ sở hạ tầng mở, không cần giấy phép, được thiết kế để ủy quyền quản lý rủi ro cho curator.」

「Thật khó để áp đặt một cách khách quan các rào cản 'đúng đắn' trong tất cả các tình huống」, Frambot nói,「áp đặt ràng buộc ở cấp độ giao thức cũng có rủi ro cản trở việc thực hiện các chiến lược hợp pháp.」

Mặc dù giao thức nền tảng đã để quản lý rủi ro cho curator, nhưng một số người trong ngành cho rằng curator không thực hiện trách nhiệm của họ.

「Tôi nghĩ thiết kế của ngành curator có khuyết điểm, vì không có thực sự curation nào xảy ra.」 Marc Zeller cho biết trên X.

Tính đến thời điểm phát hành, Resolv, Gauntlet và Fluid đều chưa phản hồi yêu cầu bình luận của The Defiant.

Một mô hình thất bại lặp đi lặp lại

Đây không phải là một cuộc tấn công mới. Vào tháng 1 năm 2025, USD0++ của Usual Protocol đã được curator MEV Capital mã hóa cứng trong kho tiền Morpho với giá 1 đô la.

Usual sau đó đã đột ngột điều chỉnh giá đáo hạn xuống còn 0.87 đô la mà không có bất kỳ cảnh báo nào, khiến người cho vay bị khóa trong kho tiền MEV Capital, nơi tỷ lệ sử dụng đã tăng vọt lên 100%.

Vào tháng 11 năm 2025, xUSD của Stream Finance đã sụp đổ, trước đó curator đã định tuyến khoản gửi USDC vào một chu trình đòn bẩy hỗ trợ stablecoin tổng hợp đó, khi oracle của nó từ chối cập nhật, ước tính 285 triệu đến 700 triệu đô la tài sản đang gặp rủi ro trên Morpho, Euler và Silo.

Moonwell đã gặp phải hai lần lỗi oracle liên tiếp vào tháng 10 và tháng 11 năm 2025, tổng cộng tạo ra hơn 5 triệu đô la khoản nợ xấu.

Điều này có nghĩa gì đối với mô hình curator

Kiến trúc của Morpho đã ủy quyền tất cả các quyết định rủi ro cho bên thứ ba「curator」, những người xây dựng kho tiền, chọn tài sản thế chấp, thiết lập tỷ lệ cho vay và chọn oracle. Lý thuyết này cho rằng, các tổ chức chuyên nghiệp có kiến thức chuyên sâu hơn, cạnh tranh có thể mang lại quản lý rủi ro tốt hơn, và giao thức chịu trách nhiệm thực thi các quy tắc.

Nhưng curator dựa vào lợi suất tạo ra để kiếm phí, điều này hình thành một động lực chấp nhận tài sản thế chấp có rủi ro cao hơn và lợi nhuận cao hơn (như stablecoin sinh lợi). Vấn đề là, khi những stablecoin này mất giá, thiệt hại sẽ do người gửi tiền gánh chịu, chứ không phải curator.

Trong sự kiện Resolv, một số robot tự động của curator vẫn tiếp tục bơm tiền vào các kho tiền bị ảnh hưởng hàng giờ sau khi lỗ hổng xảy ra, làm trầm trọng thêm thiệt hại.

Nguyên nhân áp dụng oracle mã hóa cứng cho stablecoin sinh lợi là để ngăn chặn biến động ngắn hạn kích hoạt các thanh lý không cần thiết. Nhưng sự bảo vệ này chỉ hiệu quả khi stablecoin giữ ổn định.

Cơ quan phân tích trên chuỗi Chainalysis cho biết trong hồi tố rằng cần có khả năng phát hiện trên chuỗi theo thời gian thực.

「Hợp đồng thông minh trên chuỗi hoạt động hoàn toàn bình thường. Vấn đề rõ ràng nằm ở thiết kế hệ thống rộng lớn hơn và cơ sở hạ tầng ngoài chuỗi.」 cơ quan phân tích cho biết.