Phân tích Alkimiya Hack

Bài viết này được dịch máy
Xem bản gốc

Alkimiya là một giao thức chuyển đổi các tài nguyên blockspace của blockchain - như phí giao dịch - thành các tài sản có thể giao dịch. Nó sử dụng các hợp đồng thông minh để tạo ra một thị trường ngang hàng, giúp ổn định phí, cải thiện việc phát hiện giá và tối ưu hóa việc sử dụng tài nguyên trên các blockchain.

Vào ngày 28 tháng 3 năm 2025, Alkimiya đã bị tấn công dẫn đến mất khoảng 95,5K đô la. Nguyên nhân gốc rễ là do chuyển đổi số nguyên không an toàn trong quá trình tính toán mint khi người dùng gửi tài sản thế chấp.

Cảm ơn bạn đã đọc! Đăng ký miễn phí để nhận các bài viết mới và hỗ trợ công việc của tôi.

Tổng quan

Phân tích

Hình 1: Giao dịch tấn công

Cuộc tấn công bắt đầu bằng một khoản vay nhanh 10 WBTC từ Morpho (dòng 5). Kẻ tấn công sau đó cố gắng mint chính xác 2^128 + 1 phần bằng cách sử dụng SilicaPools.collateralizedMint() (dòng 12), cung cấp khoảng 1,7 WBTC làm tài sản thế chấp (ô màu xanh).

Hình 2: Nguyên nhân gốc rễ của cuộc tấn công

SilicaPools đã mint chính xác 2^128 + 1 phần cho kẻ tấn công bằng cách sử dụng tham số shares 256-bit đầy đủ. Tuy nhiên, do một lần chuyển đổi không an toàn tại dòng 837, chỉ có 1 phần được ghi lại. Đây là lỗ hổng gốc rễ của cuộc tấn công.

Tham khảo Hình 1, kẻ tấn công đã chuyển 2^128 - 1 phần sang một địa chỉ khác (ô màu vàng), chỉ để lại 2 phần trong hợp đồng. Cuối cùng, họ gọi SilicaPools.redeemShort() để rút tài sản thế chấp.

Hình 3: Việc triển khai redeemShort()

Do sState.sharesMinted được đặt không chính xác thành 1, trong khi hợp đồng của kẻ tấn công nắm giữ 2 phần, SilicaPools đã sai lầm trả lại khoảng 3,4 WBTC - gấp đôi số tiền gửi ban đầu.

Kết luận

Tối ưu hóa hiệu quả gas là có lợi, nhưng chỉ khi mã vẫn còn chính xác. Trong trường hợp này, gas được tiết kiệm là không đáng kể so với mất mát do lỗi gây ra. Mặc dù đã có nhiều đánh giá, nhưng lỗ hổng này vẫn không được phát hiện, dẫn đến một cuộc tấn công thực tế. Để ngăn chặn các vấn đề như vậy, chúng tôi đặc biệt khuyến nghị triển khai các biện pháp bảo mật nghiêm ngặt ngay từ đầu và trong suốt vòng đời dự án. Các đánh giá thường xuyên, xem xét mã và đánh giá các điểm yếu phải là thông lệ tiêu chuẩn để xác định và giảm thiểu rủi ro trước khi chúng bị khai thác.

Cảm ơn bạn đã đọc! Đăng ký miễn phí để nhận các bài viết mới và hỗ trợ công việc của tôi.

Nguồn
Tuyên bố từ chối trách nhiệm: Nội dung trên chỉ là ý kiến của tác giả, không đại diện cho bất kỳ lập trường nào của Followin, không nhằm mục đích và sẽ không được hiểu hay hiểu là lời khuyên đầu tư từ Followin.
Thích
Thêm vào Yêu thích
Bình luận