Cú đánh ngọt ngào? Ai đứng đằng sau hậu trường? Phân tích XSURGE về chuỗi BSC bị tấn công bởi các khoản vay chớp nhoáng
Cách thức cuộc tấn công xảy ra Tổng quan về sự kiện
#1 Tổng quan sự kiện
Cách thức cuộc tấn công xảy ra Tổng quan về sự kiện
Dự án DeFi XSURGE đã gặp phải một cuộc tấn công flash loan ngày hôm nay, nhưng trước khi XSURGE bị tấn công, tuyên bố chính thức về lỗ hổng SurgeBNB đã được đưa ra.
XSURGE tuyên bố rằng một lỗ hổng bảo mật tiềm ẩn trong hợp đồng SurgeBNB đã được phát hiện vào ngày 16 tháng 8 theo giờ địa phương. Vì hợp đồng SurgeBNB là bất biến và bị hủy bỏ, mã thông báo không thể được vá lỗi hồi tố. XSURGE không tiết lộ bất kỳ chi tiết cụ thể nào về bản chất của lỗ hổng này, nhưng người dùng được khuyên nên rời khỏi SurgereBnb càng sớm càng tốt vì lỗ hổng có thể được kích hoạt bởi kẻ tấn công bất cứ lúc nào.

Đã quá muộn để nói rằng, sau khi tuyên bố được đưa ra, XSURGE sau đó tuyên bố rằng nó đã bị tấn công, đòn ngọt ngào này khiến dự án khó có thể đề phòng. Các quan chức cho biết những kẻ tấn công đã đánh cắp 5 triệu đô la trong SurgeBNB thông qua khai thác cửa sau. Vì SurgeUSD hoặc SurgeETH không rút BNB nên chúng không thể trở thành mục tiêu của các cuộc tấn công trong tương lai.

#2 Phân tích sự kiện cụ thể
#2 Phân tích sự kiện cụ thể
Làm thế nào những kẻ tấn công thành công Tổng quan về sự kiện
hợp đồng tấn công
0x59c686272e6f11dC8701A162F938fb085D940ad3

hợp đồng tấn công
để giao dịch
0x8c93d6e5d6b3ec7478b4195123a696dbc82a3441be090e048fe4b33a242ef09d làm ví dụ
round 0
Đầu tiên hãy cho vay 10.000BNB thông qua khoản vay nhanh.
Round 1
Sử dụng tất cả số BNB để mua SURGE. Theo giá hiện tại, bạn có thể mua 1.896.594.328.449.690 SURGE.

Mua lại SURGE
Round 2
Gọi chức năng bán để bán SURGE thu được và bán được 9346 BNB.
Round 3
Bởi vì chức năng bán sửa đổi dữ liệu sau khi chuyển và có một lỗ hổng reentrancy trong mã chuyển. Khi hợp đồng tấn công nhận được BNB, trước khi trạng thái của hợp đồng SURGE thay đổi (dòng 595), hợp đồng tấn công có thể mua lại SURGE thông qua lỗ hổng reentrancy.
Do hợp đồng tấn công sử dụng tất cả số dư BNB để mua SURGE mỗi lần, số lượng bnb của hợp đồng không thay đổi và tổng số lượng token SURGE _totalSupply không được cập nhật (vẫn là số lượng trước khi bán), vì vậy giá của SURGE giảm, khiến kẻ tấn công nhận được nhiều SURGE hơn.

Round 4
Lặp lại Vòng 2 và Vòng 3 ba lần, kẻ tấn công tích lũy một lượng lớn SURGE thông qua việc vào lại, sau đó bán tất cả SURGE để kiếm lợi nhuận.
Chúng ta cần chú ý gì đến Case Review

#3 Đánh giá sự kiện
Chúng ta cần chú ý gì đến Case Review
Đối với cuộc tấn công này, nhóm kỹ thuật Thành Đô Lianan đã đưa ra các đề xuất sửa đổi: 1. Để ngăn chặn các cuộc tấn công vào lại, mọi hoạt động chuyển giao nên xảy ra sau khi thay đổi trạng thái; 2. Sử dụng chuyển hoặc gửi để chuyển, không sử dụng giá trị gọi.
Trong những sự cố bảo mật như vậy, kẻ tấn công thường là một "sói trắng găng tay rỗng". Đầu tiên, anh ta sử dụng các khoản vay chớp nhoáng để thu được một số tiền lớn. Và các thỏa thuận khác, sau khi nhận ra sự thao túng và bóp méo dữ liệu giá tài sản, chênh lệch giá được thực hiện, và "hiệu trưởng" cuối cùng đã được trả lại.
🌀Chú ý 🌀
Trong sự cố này, kẻ tấn công đã kiếm được hơn 13111BNB bằng cách khai thác lỗ hổng reentrancy của hợp đồng. Thành Đô Lianan xin nhắc nhở tất cả người dùng chú ý kiểm soát rủi ro, chẳng hạn như thực hiện các biện pháp tương ứng kịp thời sau khi có tuyên bố chính thức về lỗ hổng SurgeBNB.


