Vào ngày 1 tháng 7 năm 2023, một kẻ tấn công đã khai thác lỗ hổng trong hợp đồng Biswap V3Migrator trên Chuỗi thông minh Binance (BSC) để đánh cắp mã thông báo trị giá khoảng 140.000 đô la từ những người dùng cả tin. Những kẻ tấn công đã sử dụng một cuộc tấn công mã thông báo giả để thao túng các tham số của chức năng di chuyển và hút thanh khoản từ những người dùng đã ủy quyền mã thông báo Nhà cung cấp thanh khoản (LP) của họ cho hợp đồng V3Migrator. Cuộc tấn công này có thể xảy ra do hợp đồng V3Migrator không có các tham số xác minh khi di chuyển từ Biswap V2 sang Biswap V3. Nếu cuộc tấn công không được ngăn chặn kịp thời, nó đã gây thiệt hại tài sản gần hàng chục triệu đô la cho Biswap.
buôn bán
Kẻ tấn công đã thực hiện ba giao dịch để thực hiện cuộc tấn công: https://bscscan.com//tx/0xe13ec0941580d3c286b46fa6566f20195bdd52b3d65fc7ff4a953a8fc774c6c4
https://bscscan.com//tx/0xe5c89e9ac217e4e16c2399f3597f7b5fbb73b45c1d3360788ee51ea2561def3a
https://bscscan.com//tx/0x8693a95f8481ba02ceaabed8e95b4e1eb8ac589c69c027c96b12ac5295714c3f
kẻ tấn công
Địa chỉ của kẻ tấn công là [ 0xa1e31b29f94296fc85fac8739511360f279b1976 ]
hợp đồng tấn công
Hợp đồng tấn công là [ 0x1d448e9661c5abfc732ea81330c6439b0aa449b5 ] Hợp đồng này được kẻ tấn công triển khai vào ngày 30 tháng 6 năm 2023, một ngày trước cuộc tấn công. Hợp đồng có logic đơn giản là gọi hợp đồng V3Migrator với các tham số khác nhau.
hợp đồng bị tấn công
Hợp đồng bị tấn công là [ 0x839b0afd0a0528ea184448e890cbaaffd99c1dbf ] Đây là hợp đồng V3Migrator được Biswap triển khai vào ngày 28 tháng 6 năm 2023. Hợp đồng này được thiết kế để giúp người dùng di chuyển mã thông báo LP của họ từ Biswap V2 sang Biswap V3.
các bước tấn công
Những kẻ tấn công đã khai thác một lỗ hổng trong hợp đồng V3Migrator, cho phép chúng can thiệp vào các tham số của chức năng di chuyển.Các bước tấn công như sau:
- Nạn nhân đã ủy quyền mã thông báo LP cho hợp đồng Biswap V3Migrator;
- Kẻ tấn công đã đốt mã thông báo V2 LP của nạn nhân và thêm thanh khoản V3 bằng mã thông báo giả. Ở bước này,
vàtoken0
của V2 LP vẫn nằm trong hợp đồng V3Migrator;token1
- Kẻ tấn công đã đốt các mã thông báo V2 LP giả và thêm thanh khoản V3 bằng
vàtoken0
của V2 LP, đồng thờitoken1
vàtoken0
dư thừa không được sử dụng để thêm thanh khoản V3 đã được chuyển lại cho kẻ tấn công. Đồng thời, thanh khoản V3 trong bước này cũng thuộc về kẻ tấn công.token1
nguyên nhân gốc rễ
Nguyên nhân sâu xa của cuộc tấn công là do hợp đồng V3Migrator của Biswap không có các tham số xác minh khi chuyển từ Biswap V2 sang Biswap V3. Cụ thể, có một vấn đề quan trọng trong hợp đồng:
- Hợp đồng không xác minh rằng các thông số
vàtoken0
khớp với các mã thông báo thực tế trong mã thông báo V2 LP;token1
Những sự cố này cho phép kẻ tấn công chuyển mã thông báo và số tiền giả cho chức năng di chuyển và đánh cắp mã thông báo thực từ người dùng đã ủy quyền mã thông báo LP cho hợp đồng V3Migrator.
Mã khóa
tài sản bị hư hỏng
Kẻ tấn công [0xa1e31b29f94296fc85fac8739511360f279b1976] đã thu được bất hợp pháp tài sản lên tới 140.000 USD
Dòng vốn
Kẻ tấn công rút thanh khoản để đổi lấy $BNB
Cuối cùng, kẻ tấn công đã chuyển 603 $BNB sang Tornadocash để rửa tiền
PoC
https://github.com/SunWeb3Sec/DeFiHackLabs/blob/main/src/test/Biswap_exp.sol
Lời khuyên an toàn
Người dùng thực sự nên hủy ủy quyền của Biswap V3Migrator: https://bscscan.com/tokenapprovalchecker
Tóm lại là
Cuộc tấn công vào Biswap là một ví dụ điển hình, cuộc tấn công mã thông báo giả đã tận dụng triệt để lỗ hổng DEX trên BSC để thu tiền từ người dùng và các bên dự án. Cuộc tấn công cũng nhấn mạnh tầm quan trọng của việc xác minh các tham số và số dư của hợp đồng xử lý tiền của người dùng.Người dùng cũng nên thận trọng khi ủy quyền mã thông báo cho hợp đồng của bên thứ ba và kiểm tra mã nguồn cũng như báo cáo kiểm toán của hợp đồng trước khi sử dụng chúng. Là công ty bảo mật Web3 hàng đầu, MetaTrust Labs lần đầu tiên phát hiện ra cuộc tấn công vào ngày 1 tháng 7 và gửi cảnh báo tới Biswap trên Twitter. Biswap cũng áp dụng hai chiến lược đối phó do MetaTrust Labs đề xuất:
- Yêu cầu người dùng thu hồi ủy quyền đối với hợp đồng V3Migrator càng sớm càng tốt để kẻ tấn công không thể truy cập mã thông báo LP của họ nữa;
- Xóa các tweet của riêng họ quảng bá việc di chuyển V3 và thông báo cho người dùng về lợi ích của việc di chuyển mã thông báo LP
Nếu cuộc tấn công này không được ngăn chặn kịp thời, tất cả các hợp đồng di chuyển của Biswap sẽ bị thiệt hại hàng chục triệu đô la, vì kẻ tấn công có thể sử dụng mã thông báo giả để di chuyển tất cả thanh khoản từ Biswap V2 sang Biswap V3, điều này có hại cho Biswap và người dùng của nó .Đó sẽ là một đòn tàn phá và là bước thụt lùi nghiêm trọng đối với sự phát triển của DEX trên BSC.
Theo chúng tôi
Theo chúng tôi
Twitter: @ MetaTrustLabs
Trang web: metatrust.io
Tất cả bình luận