Gần đây, giao thức tương tác đa chuỗi Poly Network đã bị tấn công bởi Hacker, gây ra sự quan tâm rộng rãi trong ngành. Đội ngũ chuyên gia an ninh đã tiến hành phân tích sâu về sự kiện này và cho rằng kẻ tấn công không thực hiện tấn công thông qua việc rò rỉ khóa riêng, mà thay vào đó đã lợi dụng lỗ hổng hợp đồng để sửa đổi các tham số quan trọng.
Tấn công lõi
Kẻ tấn công đã thành công sửa đổi địa chỉ keeper của hợp đồng EthCrossChainData bằng cách sử dụng hàm verifyHeaderAndExecuteTx của hợp đồng EthCrossChainManager và truyền vào dữ liệu được xây dựng tỉ mỉ. Hành động này đã cho phép kẻ tấn công quyền truy cập để rút tiền từ hợp đồng.
Chi tiết tấn công
Điểm then chốt của cuộc tấn công nằm ở hàm verifyHeaderAndExecuteTx của hợp đồng EthCrossChainManager có thể thực hiện các giao dịch xuyên chuỗi cụ thể thông qua hàm _executeCrossChainTx.
Chủ sở hữu của hợp đồng EthCrossChainData là hợp đồng EthCrossChainManager, do đó hợp đồng sau có thể gọi chức năng putCurEpochConPubKeyBytes của hợp đồng trước để thay đổi keeper.
Kẻ tấn công đã lợi dụng hàm verifyHeaderAndExecuteTx, truyền vào dữ liệu đặc biệt, khiến hàm _executeCrossChainTx thực hiện thao tác thay đổi địa chỉ keeper.
Sau khi thay thế địa chỉ keeper thành công, kẻ tấn công có thể tạo giao dịch, rút bất kỳ số tiền nào từ hợp đồng.
Quy trình tấn công
Kẻ tấn công trước tiên đã gọi hàm putCurEpochConPubKeyBytes qua hàm verifyHeaderAndExecuteTx của hợp đồng EthCrossChainManager, thay đổi keeper.
Sau đó, kẻ tấn công đã lợi dụng quyền keeper mới để thực hiện nhiều thao tác rút tiền.
Sau khi cuộc tấn công hoàn thành, do keeper bị sửa đổi, dẫn đến việc giao dịch bình thường của người dùng khác bị từ chối thực hiện.
Các mô hình tấn công tương tự cũng xuất hiện trên mạng Ethereum.
Kết luận
Lõi của cuộc tấn công lần này nằm ở việc hợp đồng EthCrossChainData có thể bị hợp đồng EthCrossChainManager sửa đổi keeper, trong khi hàm verifyHeaderAndExecuteTx của hợp đồng sau lại có thể thực thi dữ liệu do người dùng truyền vào. Kẻ tấn công đã lợi dụng cơ chế này, thông qua việc xây dựng dữ liệu cụ thể, thành công trong việc sửa đổi địa chỉ keeper, từ đó giành quyền kiểm soát quỹ của hợp đồ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 kiểm toán an ninh hợp đồng thông minh, đặc biệt trong các tình huống phức tạp như các hoạt động đa chuỗi, cần phải thực hiện kiểm tra toàn diện và nghiêm ngặt đối với logic của hợp đồng để phòng ngừa các rủi ro an ninh tiềm ẩn.
Xem bản gốc
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.
15 thích
Phần thưởng
15
7
Chia sẻ
Bình luận
0/400
GmGnSleeper
· 19giờ trước
Lỗ hổng ở đâu cũng có, thà ngủ còn hơn.
Xem bản gốcTrả lời0
CryptoAdventurer
· 19giờ trước
又 một đợt đồ ngốc trả học phí đã kết thúc.
Xem bản gốcTrả lời0
BearMarketSurvivor
· 19giờ trước
Một quỹ đầu tư lại phát nổ
Xem bản gốcTrả lời0
BlockchainFoodie
· 19giờ trước
có vị như một nồi súp hợp đồng thông minh được nấu không đúng cách... cần thêm gia vị bảo mật fr
Phân tích tấn công Hacker Poly Network: Lỗi hợp đồng dẫn đến việc tiền bị đánh cắp qua chuỗi cross
Phân tích sự kiện Poly Network bị Hacker tấn công
Gần đây, giao thức tương tác đa chuỗi Poly Network đã bị tấn công bởi Hacker, gây ra sự quan tâm rộng rãi trong ngành. Đội ngũ chuyên gia an ninh đã tiến hành phân tích sâu về sự kiện này và cho rằng kẻ tấn công không thực hiện tấn công thông qua việc rò rỉ khóa riêng, mà thay vào đó đã lợi dụng lỗ hổng hợp đồng để sửa đổi các tham số quan trọng.
Tấn công lõi
Kẻ tấn công đã thành công sửa đổi địa chỉ keeper của hợp đồng EthCrossChainData bằng cách sử dụng hàm verifyHeaderAndExecuteTx của hợp đồng EthCrossChainManager và truyền vào dữ liệu được xây dựng tỉ mỉ. Hành động này đã cho phép kẻ tấn công quyền truy cập để rút tiền từ hợp đồng.
Chi tiết tấn công
Điểm then chốt của cuộc tấn công nằm ở hàm verifyHeaderAndExecuteTx của hợp đồng EthCrossChainManager có thể thực hiện các giao dịch xuyên chuỗi cụ thể thông qua hàm _executeCrossChainTx.
Chủ sở hữu của hợp đồng EthCrossChainData là hợp đồng EthCrossChainManager, do đó hợp đồng sau có thể gọi chức năng putCurEpochConPubKeyBytes của hợp đồng trước để thay đổi keeper.
Kẻ tấn công đã lợi dụng hàm verifyHeaderAndExecuteTx, truyền vào dữ liệu đặc biệt, khiến hàm _executeCrossChainTx thực hiện thao tác thay đổi địa chỉ keeper.
Sau khi thay thế địa chỉ keeper thành công, kẻ tấn công có thể tạo giao dịch, rút bất kỳ số tiền nào từ hợp đồng.
Quy trình tấn công
Kẻ tấn công trước tiên đã gọi hàm putCurEpochConPubKeyBytes qua hàm verifyHeaderAndExecuteTx của hợp đồng EthCrossChainManager, thay đổi keeper.
Sau đó, kẻ tấn công đã lợi dụng quyền keeper mới để thực hiện nhiều thao tác rút tiền.
Sau khi cuộc tấn công hoàn thành, do keeper bị sửa đổi, dẫn đến việc giao dịch bình thường của người dùng khác bị từ chối thực hiện.
Các mô hình tấn công tương tự cũng xuất hiện trên mạng Ethereum.
Kết luận
Lõi của cuộc tấn công lần này nằm ở việc hợp đồng EthCrossChainData có thể bị hợp đồng EthCrossChainManager sửa đổi keeper, trong khi hàm verifyHeaderAndExecuteTx của hợp đồng sau lại có thể thực thi dữ liệu do người dùng truyền vào. Kẻ tấn công đã lợi dụng cơ chế này, thông qua việc xây dựng dữ liệu cụ thể, thành công trong việc sửa đổi địa chỉ keeper, từ đó giành quyền kiểm soát quỹ của hợp đồ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 kiểm toán an ninh hợp đồng thông minh, đặc biệt trong các tình huống phức tạp như các hoạt động đa chuỗi, cần phải thực hiện kiểm tra toàn diện và nghiêm ngặt đối với logic của hợp đồng để phòng ngừa các rủi ro an ninh tiềm ẩn.