Nguyên gốc

Tổn thất vượt quá 40 triệu đô la: Phân tích lỗ hổng bảo mật của GMX và theo dõi số tiền bị đánh cắp

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

GMX bị tấn công, kẻ tấn công đã thực hiện cuộc tấn công thông qua một lỗ hổng có thể nhập lại trong hợp đồng dự án, thu lợi khoảng 42 triệu đô la. Nhóm an ninh Beosin đã phân tích lỗ hổng và truy dấu nguồn vốn của vụ tấn công này, và chia sẻ kết quả như sau:

Các bước tấn công chi tiết

Kẻ tấn công đầu tiên đã sử dụng cơ chế hoàn trả tiền ký quỹ trong hàm executeDecreaseOrder của hợp đồng OrderBook để thực hiện cuộc tấn công nhập lại nhằm vượt qua công tắc đòn bẩy của hợp đồng Timelock của dự án:

Sau đó, cuộc tấn công đã vay USDC thông qua khoản vay nhanh để đặt cọc và đúc GLP, đồng thời tăng vị thế short BTC với USDC làm tiền ký quỹ, dẫn đến giá trị AUM của hợp đồng GLPmanager bị phóng đại, giá trị này sẽ ảnh hưởng đến giá của GLP.

Cuối cùng, kẻ tấn công đã chuộc lại GLP với giá bất thường để thu lợi và chỉ định chuyển đổi sang các token khác.

Phân tích lỗ hổng

Thông qua quy trình tấn công trên, chúng ta có thể thấy hai nguyên nhân khai thác lỗ hổng của sự kiện này:

- Thiếu bảo vệ chống nhập lại, dẫn đến việc sửa đổi trạng thái nội bộ trong quá trình chuộc lại.

- Logic chuộc lại khá phức tạp, thiếu xác thực an toàn đầy đủ.

Mặc dù GMX đã trải qua nhiều đợt kiểm toán an ninh, nhưng lỗ hổng nhập lại này vẫn bị bỏ qua. Nếu tiến hành kiểm tra nghiêm ngặt hơn đối với logic chuộc lại và xem xét các lỗ hổng nhập lại có thể xảy ra, có thể tránh được các sự cố an ninh như vậy.

Truy dấu nguồn vốn bị đánh cắp

Beosin Trace đã truy dấu nguồn vốn bị đánh cắp và phát hiện: Địa chỉ của kẻ tấn công 0x7d3bd50336f64b7a473c51f54e7f0bd6771cc355 thu lợi khoảng 42 triệu đô la, sau đó chuyển đổi stablecoin và altcoin thành ETH và USDC thông qua nhiều giao thức cross-chain khác nhau để chuyển tài sản bị đánh cắp sang mạng Ethereum. Hiện tại, khoảng 32 triệu đô la ETH từ tài sản bị đánh cắp được lưu trữ tại 4 địa chỉ mạng Ethereum sau:

- 0xe9ad5a0f2697a3cf75ffa7328bda93dbaef7f7e7

- 0x69c965e164fa60e37a851aa5cd82b13ae39c1d95

- 0xa33fcbe3b84fb8393690d1e994b6a6adc256d8a3

- 0x639cd2fc24ec06be64aaf94eb89392bea98a6605

Khoảng 10 triệu đô la tài sản được lưu trữ tại địa chỉ 0xdf3340a436c27655ba62f8281565c9925c3a5221 trên mạng Arbitrum. Beosin Trace đã thêm các địa chỉ liên quan đến hacker vào danh sách địa chỉ đen và sẽ tiếp tục theo dõi.

Theo phân tích của Beosin Trace, toàn bộ nguồn vốn bị đánh cắp vẫn được lưu trữ tại nhiều địa chỉ của kẻ tấn công

Tóm tắt

Trọng tâm của vụ tấn công này là lỗ hổng nhập lại trong hợp đồng GMX, cho phép kẻ tấn công chuộc lại một lượng lớn tài sản có lợi thông qua giá trị AUM được tăng giả tạo. Đối với các giao thức DeFi phức tạp như GMX, cần phải tiến hành kiểm toán an ninh toàn diện, đa chiều, thực hiện kiểm tra và xem xét kỹ lưỡng mã hợp đồng. Trước đây, nhóm an ninh Beosin đã hoàn thành kiểm toán an ninh cho nhiều giao thức DeFi (như Surf Protocol, SyncSwap, LeverFi, Owlto Finance), tập trung vào việc phát hiện các khiếm khuyết logic hợp đồng và các trường hợp cực đoan có thể bị bỏ qua, đảm bảo các giao thức DeFi được kiểm tra toàn diện.

Khu vực:
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