Một vụ cướp trên chuỗi do lưu trữ tạm thời gây ra: Hậu quả của việc mất 300.000 USD
Vào ngày 30 tháng 3 năm 2025, một dự án giao dịch đòn bẩy trên chuỗi Ethereum có tên SIR.trading đã bị tấn công, dẫn đến thiệt hại tài sản lên đến hơn 300.000 đô la. Đội ngũ an ninh đã tiến hành phân tích sâu về sự kiện này, tiết lộ chi tiết và nguyên nhân của cuộc tấn công.
Bối cảnh sự kiện
Kẻ tấn công đã lợi dụng đặc tính lưu trữ tạm thời được giới thiệu trong phiên bản Solidity 0.8.24. Vị trí lưu trữ dữ liệu mới này nhằm cung cấp một phương pháp lưu trữ tạm thời có hiệu quả trong suốt quá trình giao dịch với chi phí thấp. Các đặc điểm chính của lưu trữ tạm thời bao gồm:
Chi phí gas thấp: Chi phí hoạt động cố định là 100 gas.
Tính bền vững trong giao dịch: Dữ liệu giữ nguyên hiệu lực trong suốt thời gian giao dịch.
Tự động xóa: Sau khi giao dịch kết thúc, lưu trữ tự động được đặt lại về 0.
Nguồn gốc tấn công
Nguyên nhân cơ bản của cuộc tấn công là giá trị được lưu trữ tạm thời bằng tstore trong hàm không được xóa sau khi kết thúc cuộc gọi hàm. Điều này cho phép kẻ tấn công tạo ra các địa chỉ độc hại cụ thể, vượt qua kiểm tra quyền hạn và chuyển token ra ngoài.
Quy trình tấn công
Kẻ tấn công tạo ra hai mã thông báo độc hại A và B, và tạo bể cho hai mã thông báo này trên một DEX và bơm thanh khoản.
Kẻ tấn công gọi hàm initialize của hợp đồng Vault, sử dụng token A làm tài sản thế chấp và token B làm token nợ để tạo ra thị trường giao dịch đòn bẩy.
Kẻ tấn công gọi hàm mint của hợp đồng Vault, gửi token nợ B để đúc token đòn bẩy. Trong quá trình này, địa chỉ pool DEX và số lượng đúc được lưu trữ tạm thời.
Kẻ tấn công tạo ra một hợp đồng độc hại, có địa chỉ giống với số lượng đúc đã được lưu trữ tạm thời trước đó.
Kẻ tấn công đã gọi hàm callback của hợp đồng Vault thông qua hợp đồng độc hại, do giá trị trong bộ nhớ tạm thời không được xóa, đã thành công vượt qua kiểm tra quyền.
Cuối cùng, kẻ tấn công trực tiếp thông qua việc tấn công hợp đồng gọi hàm callback của hợp đồng Vault, chuyển các token khác (như WBTC, WETH) ra ngoài để thu lợi.
Phân tích dòng tiền
Theo dữ liệu từ công cụ phân tích on-chain, kẻ tấn công đã đánh cắp khoảng 300.000 đô la tài sản, bao gồm:
17,814.8626 USDC
1.4085 WBTC
119.871 WETH
Các tài sản này sau đó được chuyển đổi thành WETH và cuối cùng được chuyển vào một công cụ ẩn danh nào đó. Nguồn vốn ban đầu của kẻ tấn công là 0.3 ETH được chuyển từ công cụ đó.
Đề xuất an toàn
Để ngăn chặn các cuộc tấn công tương tự, nhóm dự án nên:
Ngay sau khi kết thúc cuộc gọi hàm, hãy sử dụng tstore(key, 0) để xóa giá trị trong bộ nhớ tạm thời.
Tăng cường kiểm tra mã hợp đồng và thử nghiệm an toàn.
Cẩn thận sử dụng các đặc điểm ngôn ngữ mới được giới thiệu, hiểu rõ ràng về những rủi ro tiềm ẩn của chúng.
Sự kiện này một lần nữa nhấn mạnh tầm quan trọng của việc duy trì sự cân bằng giữa an ninh và ứng dụng công nghệ mới trong phát triển dự án blockchain. Khi công nghệ liên tục tiến bộ, các nhà phát triển và chuyên gia an ninh cần phải cảnh giác, kịp thời nhận diện và ứng phó với những thách thức an ninh mới.
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.
11 thích
Phần thưởng
11
7
Chia sẻ
Bình luận
0/400
MemeTokenGenius
· 19giờ trước
Ngốc ngách thật đáng yêu, đã lên sóng mà không đo đạc gì sao?
Xem bản gốcTrả lời0
quiet_lurker
· 19giờ trước
Một dự án nữa bị đè xuống đất cọ xát.
Xem bản gốcTrả lời0
PumpBeforeRug
· 19giờ trước
Nghe nói lần này quay đầu là chạy~hợp đồng thông minh nhỏ lỗ hổng
Lỗ hổng lưu trữ tạm thời dẫn đến việc dự án Ethereum bị tấn công bởi Hacker với số tiền 300.000 USD
Một vụ cướp trên chuỗi do lưu trữ tạm thời gây ra: Hậu quả của việc mất 300.000 USD
Vào ngày 30 tháng 3 năm 2025, một dự án giao dịch đòn bẩy trên chuỗi Ethereum có tên SIR.trading đã bị tấn công, dẫn đến thiệt hại tài sản lên đến hơn 300.000 đô la. Đội ngũ an ninh đã tiến hành phân tích sâu về sự kiện này, tiết lộ chi tiết và nguyên nhân của cuộc tấn công.
Bối cảnh sự kiện
Kẻ tấn công đã lợi dụng đặc tính lưu trữ tạm thời được giới thiệu trong phiên bản Solidity 0.8.24. Vị trí lưu trữ dữ liệu mới này nhằm cung cấp một phương pháp lưu trữ tạm thời có hiệu quả trong suốt quá trình giao dịch với chi phí thấp. Các đặc điểm chính của lưu trữ tạm thời bao gồm:
Nguồn gốc tấn công
Nguyên nhân cơ bản của cuộc tấn công là giá trị được lưu trữ tạm thời bằng tstore trong hàm không được xóa sau khi kết thúc cuộc gọi hàm. Điều này cho phép kẻ tấn công tạo ra các địa chỉ độc hại cụ thể, vượt qua kiểm tra quyền hạn và chuyển token ra ngoài.
Quy trình tấn công
Kẻ tấn công tạo ra hai mã thông báo độc hại A và B, và tạo bể cho hai mã thông báo này trên một DEX và bơm thanh khoản.
Kẻ tấn công gọi hàm initialize của hợp đồng Vault, sử dụng token A làm tài sản thế chấp và token B làm token nợ để tạo ra thị trường giao dịch đòn bẩy.
Kẻ tấn công gọi hàm mint của hợp đồng Vault, gửi token nợ B để đúc token đòn bẩy. Trong quá trình này, địa chỉ pool DEX và số lượng đúc được lưu trữ tạm thời.
Kẻ tấn công tạo ra một hợp đồng độc hại, có địa chỉ giống với số lượng đúc đã được lưu trữ tạm thời trước đó.
Kẻ tấn công đã gọi hàm callback của hợp đồng Vault thông qua hợp đồng độc hại, do giá trị trong bộ nhớ tạm thời không được xóa, đã thành công vượt qua kiểm tra quyền.
Cuối cùng, kẻ tấn công trực tiếp thông qua việc tấn công hợp đồng gọi hàm callback của hợp đồng Vault, chuyển các token khác (như WBTC, WETH) ra ngoài để thu lợi.
Phân tích dòng tiền
Theo dữ liệu từ công cụ phân tích on-chain, kẻ tấn công đã đánh cắp khoảng 300.000 đô la tài sản, bao gồm:
Các tài sản này sau đó được chuyển đổi thành WETH và cuối cùng được chuyển vào một công cụ ẩn danh nào đó. Nguồn vốn ban đầu của kẻ tấn công là 0.3 ETH được chuyển từ công cụ đó.
Đề xuất an toàn
Để ngăn chặn các cuộc tấn công tương tự, nhóm dự án nên:
Sự kiện này một lần nữa nhấn mạnh tầm quan trọng của việc duy trì sự cân bằng giữa an ninh và ứng dụng công nghệ mới trong phát triển dự án blockchain. Khi công nghệ liên tục tiến bộ, các nhà phát triển và chuyên gia an ninh cần phải cảnh giác, kịp thời nhận diện và ứng phó với những thách thức an ninh mới.