Một sự kiện mất mát tài sản trên chuỗi do lưu trữ tạm thời gây ra
Cuối tháng 3 năm 2025, một dự án giao dịch đòn bẩy trên chuỗi Ethereum đã bị tấn công, dẫn đến thiệt hại tài sản trên 300.000 USD. Đội ngũ an ninh đã tiến hành phân tích sâu về sự kiện này, tiết lộ nguyên lý và quy trình của cuộc tấn công.
Bối cảnh sự kiện
Sự kiện này xảy ra vào ngày 30 tháng 3 năm 2025, dự án bị thiệt hại là một nền tảng giao dịch đòn bẩy hoạt động trên Ethereum. Kẻ tấn công đã lợi dụng một lỗ hổng trong tính năng lưu trữ tạm thời được giới thiệu trong phiên bản Solidity 0.8.24, thành công vượt qua kiểm tra quyền truy cập của hợp đồng và trái phép chuyển ra một lượng lớn tài sản.
Giới thiệu về lưu trữ tạm thời
Lưu trữ tạm thời là tính năng mới được giới thiệu trong Solidity vào tháng 1 năm 2024, nhằm cung cấp một phương thức lưu trữ dữ liệu tạm thời với chi phí thấp. Nó có các đặc điểm sau:
Tiêu thụ gas thấp: Các thao tác đọc và ghi chỉ cần 100 gas, thấp hơn nhiều so với các thao tác lưu trữ thông thường.
Tính bền vững trong giao dịch: Dữ liệu vẫn có hiệu lực trong suốt thời gian thực hiện giao dịch.
Tự động xóa: Dữ liệu được lưu trữ sẽ tự động được đặt lại về zero sau khi giao dịch kết thúc.
Nguyên lý tấn công
Trung tâm của cuộc tấn công nằm ở việc lợi dụng đặc tính của bộ nhớ tạm thời không được xóa kịp thời sau khi kết thúc cuộc gọi hàm. Kẻ tấn công thông qua một chuỗi thao tác được xây dựng cẩn thận, khiến cho dữ liệu ban đầu được sử dụng để xác minh danh tính bị thay thế, từ đó vượt qua kiểm tra an toàn của hợp đồng.
Các bước tấn công
Tạo mã thông báo độc hại và xây dựng bể giao dịch
Khởi tạo thị trường giao dịch đòn bẩy
Đúc token đòn bẩy, đồng thời thực hiện lần lưu trữ tạm thời đầu tiên
Tạo hợp đồng độc hại cho địa chỉ cụ thể
Sử dụng lưu trữ tạm thời để vượt qua xác thực
Chuyển nhượng tài sản mục tiêu bất hợp pháp
Dòng chảy tài sản
Theo phân tích dữ liệu trên chuỗi, kẻ tấn công đã đánh cắp khoảng 300.000 USD tài sản, bao gồm USDC, WBTC và WETH. Những tài sản này sau đó đã được đổi và chuyển vào dịch vụ trộn tiền, cố gắng che giấu hướng di chuyển của quỹ.
Đề xuất an toàn
Để ngăn chặn sự cố tương tự xảy ra lần nữa, các nhà phát triển nên chú ý đến những điểm sau:
Sau khi sử dụng bộ nhớ tạm thời, hãy xóa giá trị đã lưu kịp thời.
Tăng cường kiểm tra mã hợp đồng và thử nghiệm an ninh
Cẩn thận sử dụng các tính năng ngôn ngữ mới được giới thiệu, hiểu rõ những rủi ro tiềm ẩn của chúng.
Sự kiện này đã làm nổi bật những rủi ro an ninh có thể xảy ra do các đặc tính của công nghệ mới, nhắc nhở các nhà phát triển dự án blockchain cần thận trọng hơn khi áp dụng các tính năng mới, đồng thời cũng nhấn mạnh tầm quan trọng của việc kiểm tra an ninh và đánh giá rủi ro liên tụ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 giao dịch ký quỹ Ethereum bị tấn công, lỗ hổng lưu trữ tạm thời gây thiệt hại 300.000 USD.
Một sự kiện mất mát tài sản trên chuỗi do lưu trữ tạm thời gây ra
Cuối tháng 3 năm 2025, một dự án giao dịch đòn bẩy trên chuỗi Ethereum đã bị tấn công, dẫn đến thiệt hại tài sản trên 300.000 USD. Đội ngũ an ninh đã tiến hành phân tích sâu về sự kiện này, tiết lộ nguyên lý và quy trình của cuộc tấn công.
Bối cảnh sự kiện
Sự kiện này xảy ra vào ngày 30 tháng 3 năm 2025, dự án bị thiệt hại là một nền tảng giao dịch đòn bẩy hoạt động trên Ethereum. Kẻ tấn công đã lợi dụng một lỗ hổng trong tính năng lưu trữ tạm thời được giới thiệu trong phiên bản Solidity 0.8.24, thành công vượt qua kiểm tra quyền truy cập của hợp đồng và trái phép chuyển ra một lượng lớn tài sản.
Giới thiệu về lưu trữ tạm thời
Lưu trữ tạm thời là tính năng mới được giới thiệu trong Solidity vào tháng 1 năm 2024, nhằm cung cấp một phương thức lưu trữ dữ liệu tạm thời với chi phí thấp. Nó có các đặc điểm sau:
Nguyên lý tấn công
Trung tâm của cuộc tấn công nằm ở việc lợi dụng đặc tính của bộ nhớ tạm thời không được xóa kịp thời sau khi kết thúc cuộc gọi hàm. Kẻ tấn công thông qua một chuỗi thao tác được xây dựng cẩn thận, khiến cho dữ liệu ban đầu được sử dụng để xác minh danh tính bị thay thế, từ đó vượt qua kiểm tra an toàn của hợp đồng.
Các bước tấn công
Dòng chảy tài sản
Theo phân tích dữ liệu trên chuỗi, kẻ tấn công đã đánh cắp khoảng 300.000 USD tài sản, bao gồm USDC, WBTC và WETH. Những tài sản này sau đó đã được đổi và chuyển vào dịch vụ trộn tiền, cố gắng che giấu hướng di chuyển của quỹ.
Đề xuất an toàn
Để ngăn chặn sự cố tương tự xảy ra lần nữa, các nhà phát triển nên chú ý đến những điểm sau:
Sự kiện này đã làm nổi bật những rủi ro an ninh có thể xảy ra do các đặc tính của công nghệ mới, nhắc nhở các nhà phát triển dự án blockchain cần thận trọng hơn khi áp dụng các tính năng mới, đồng thời cũng nhấn mạnh tầm quan trọng của việc kiểm tra an ninh và đánh giá rủi ro liên tục.