Phân tích sự kiện Cellframe Network bị cuộc tấn công cho vay chớp nhoáng
Vào lúc 10 giờ 7 phút 55 giây sáng ngày 1 tháng 6 năm 2023 (UTC+8), Cellframe Network đã bị tấn công bởi hacker trên chuỗi thông minh do vấn đề tính toán số lượng token trong quá trình di chuyển thanh khoản. Cuộc tấn công này đã khiến hacker thu lợi khoảng 76,112 USD.
Nguyên nhân gốc rễ của cuộc tấn công
Vấn đề tính toán trong quá trình di chuyển thanh khoản là nguyên nhân cơ bản của cuộc tấn công này.
Giải thích chi tiết quy trình tấn công
Kẻ tấn công trước tiên thông qua Khoản vay nhanh lấy 1000 BNB và 500000 token New Cell. Sau đó, sẽ đổi tất cả token New Cell thành BNB, khiến số lượng BNB trong pool gần như bằng không. Cuối cùng, dùng 900 BNB để đổi lấy token Old Cell.
Đáng chú ý là kẻ tấn công đã thêm tính thanh khoản của Old Cell và BNB trước khi thực hiện cuộc tấn công, nhận được Old lp.
Tiếp theo, kẻ tấn công gọi hàm di chuyển tính thanh khoản. Lúc này, trong bể mới hầu như không có BNB, trong khi bể cũ hầu như không có token Old Cell.
Quá trình di chuyển bao gồm các bước sau:
Gỡ bỏ thanh khoản cũ và hoàn trả số lượng token tương ứng cho người dùng
Thêm thanh khoản mới theo tỷ lệ của bể mới
Do có rất ít token Old Cell trong bể cũ, số lượng BNB nhận được khi loại bỏ tính thanh khoản tăng lên, trong khi số lượng token Old Cell giảm xuống. Điều này dẫn đến giá trị của Resoult và Token1 tăng lên.
Người dùng chỉ cần thêm một lượng nhỏ BNB và token New Cell để nhận được thanh khoản, số BNB và token Old Cell thừa sẽ được hoàn trả lại cho người dùng.
Cuối cùng, kẻ tấn công loại bỏ tính thanh khoản của bể mới và đổi các token Old Cell được trả lại sau khi di chuyển thành BNB. Lúc này, bể cũ có rất nhiều token Old Cell nhưng không có BNB, kẻ tấn công sẽ đổi token Old Cell thành BNB một lần nữa, từ đó hoàn thành việc kiếm lời. Sau đó, kẻ tấn công lặp lại thao tác di chuyển.
Tóm tắt và đề xuất
Khi thực hiện chuyển đổi thanh khoản, cần xem xét tổng thể sự thay đổi số lượng của hai loại token trong bể cũ và mới cũng như giá token hiện tại. Việc tính toán chỉ dựa trên số lượng của hai loại tiền tệ trong cặp giao dịch dễ bị thao túng.
Ngoài ra, để đảm bảo an toàn, nhóm dự án nên tiến hành kiểm toán an ninh toàn diện trước khi mã được triển khai. Điều này không chỉ giúp phát hiện các lỗ hổng tiềm ẩn mà còn nâng cao tính an toàn và độ tin cậy của hệ thống tổng thể.
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.
Cellframe Network遭 cuộc tấn công cho vay chớp nhoáng Thanh khoản迁移漏洞致损76,112美元
Phân tích sự kiện Cellframe Network bị cuộc tấn công cho vay chớp nhoáng
Vào lúc 10 giờ 7 phút 55 giây sáng ngày 1 tháng 6 năm 2023 (UTC+8), Cellframe Network đã bị tấn công bởi hacker trên chuỗi thông minh do vấn đề tính toán số lượng token trong quá trình di chuyển thanh khoản. Cuộc tấn công này đã khiến hacker thu lợi khoảng 76,112 USD.
Nguyên nhân gốc rễ của cuộc tấn công
Vấn đề tính toán trong quá trình di chuyển thanh khoản là nguyên nhân cơ bản của cuộc tấn công này.
Giải thích chi tiết quy trình tấn công
Kẻ tấn công trước tiên thông qua Khoản vay nhanh lấy 1000 BNB và 500000 token New Cell. Sau đó, sẽ đổi tất cả token New Cell thành BNB, khiến số lượng BNB trong pool gần như bằng không. Cuối cùng, dùng 900 BNB để đổi lấy token Old Cell.
Đáng chú ý là kẻ tấn công đã thêm tính thanh khoản của Old Cell và BNB trước khi thực hiện cuộc tấn công, nhận được Old lp.
Tiếp theo, kẻ tấn công gọi hàm di chuyển tính thanh khoản. Lúc này, trong bể mới hầu như không có BNB, trong khi bể cũ hầu như không có token Old Cell.
Quá trình di chuyển bao gồm các bước sau:
Do có rất ít token Old Cell trong bể cũ, số lượng BNB nhận được khi loại bỏ tính thanh khoản tăng lên, trong khi số lượng token Old Cell giảm xuống. Điều này dẫn đến giá trị của Resoult và Token1 tăng lên.
Người dùng chỉ cần thêm một lượng nhỏ BNB và token New Cell để nhận được thanh khoản, số BNB và token Old Cell thừa sẽ được hoàn trả lại cho người dùng.
Tóm tắt và đề xuất
Khi thực hiện chuyển đổi thanh khoản, cần xem xét tổng thể sự thay đổi số lượng của hai loại token trong bể cũ và mới cũng như giá token hiện tại. Việc tính toán chỉ dựa trên số lượng của hai loại tiền tệ trong cặp giao dịch dễ bị thao túng.
Ngoài ra, để đảm bảo an toàn, nhóm dự án nên tiến hành kiểm toán an ninh toàn diện trước khi mã được triển khai. Điều này không chỉ giúp phát hiện các lỗ hổng tiềm ẩn mà còn nâng cao tính an toàn và độ tin cậy của hệ thống tổng thể.