Phân tích lỗ hổng hợp đồng thông minh Poly Network: Kẻ tấn công đã thay đổi vai trò keeper như thế nào để lấy tiền.

robot
Đang tạo bản tóm tắt

Phân tích lỗ hổng bảo mật Poly Network: Kẻ tấn công đã lợi dụng lỗ hổng hợp đồng để thay đổi quyền hạn như thế nào

Gần đây, giao thức tương tác chuỗi chéo Poly Network đã gặp sự cố an ninh nghiêm trọng, thu hút sự chú ý rộng rãi trong ngành. Theo phân tích của các chuyên gia an ninh, cuộc tấn công này không phải do rò rỉ khóa riêng, mà là kẻ tấn công đã khéo léo khai thác lỗ hổng trong hợp đồng thông minh.

Vấn đề cốt lõi nằm ở việc hàm verifyHeaderAndExecuteTx của hợp đồng EthCrossChainManager có thiết kế lỗi. Hàm này có thể thực hiện giao dịch xuyên chuỗi do người dùng chỉ định thông qua hàm _executeCrossChainTx bên trong. Kẻ tấn công đã lợi dụng điều này, bằng cách xây dựng dữ liệu cụ thể, khiến hàm _executeCrossChainTx gọi hàm putCurEpochConPubKeyBytes của hợp đồng EthCrossChainData, từ đó thay đổi vai trò keeper thành địa chỉ do kẻ tấn công kiểm soát.

Cụ thể quy trình tấn công như sau:

  1. Kẻ tấn công đầu tiên gọi hàm verifyHeaderAndExecuteTx của hợp đồng EthCrossChainManager, truyền vào dữ liệu được xây dựng cẩn thận.

  2. Hàm này bên trong thực hiện _executeCrossChainTx, sau đó gọi hàm putCurEpochConPubKeyBytes của hợp đồng EthCrossChainData.

  3. Hàm putCurEpochConPubKeyBytes được thực thi, thay đổi địa chỉ của vai trò keeper thành địa chỉ do kẻ tấn công chỉ định.

  4. Sau khi keeper bị thay thế, kẻ tấn công có được quyền thao tác, có thể tùy ý cấu trúc giao dịch để rút tiền từ hợp đồng.

  5. Sau khi cuộc tấn công hoàn tất, do keeper đã bị sửa đổi, các giao dịch bình thường của người dùng khác bắt đầu bị từ chối thực hiện.

Kỹ thuật tấn công này đã được áp dụng trên cả chuỗi BSC và Ethereum. Điểm mấu chốt của cuộc tấn công là hợp đồng EthCrossChainData có thể bị hợp đồng EthCrossChainManager sửa đổi, trong khi hợp đồng sau lại cho phép thực hiện bất kỳ dữ liệu nào do người dùng cung cấp. Thiết kế này có những nguy cơ an ninh nghiêm trọng, tạo cơ hội cho kẻ tấn công.

Sự kiện này một lần nữa cho thấy, an toàn hợp đồng thông minh là cực kỳ quan trọng. Nhóm phát triển khi thiết kế hợp đồng cần phải xem xét đầy đủ các kịch bản tấn công khác nhau, nghiêm ngặt hạn chế quyền truy cập vào các chức năng quan trọng, và thực hiện kiểm toán an ninh toàn diện. Đồng thời, các dự án phi tập trung cũng cần thiết lập cơ chế quản trị hoàn thiện hơn, để đối phó với các tình huống khẩn cấp.

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.
  • Phần thưởng
  • 7
  • Chia sẻ
Bình luận
0/400
airdrop_whisperervip
· 4giờ trước
Lại là lỗ hổng hợp đồng thông minh
Xem bản gốcTrả lời0
blocksnarkvip
· 07-18 15:43
Lại là lỗi của hợp đồng thông minh
Xem bản gốcTrả lời0
NFT_Therapyvip
· 07-18 15:40
Điển trong điển, lại một hợp đồng thông minh thất bại
Xem bản gốcTrả lời0
BTCRetirementFundvip
· 07-18 15:37
Lại thấy hợp đồng bị chọc thủng lỗ hổng à?
Xem bản gốcTrả lời0
MemeKingNFTvip
· 07-18 15:33
Lại là một ngày bị kẻ trộm thần thánh ghé thăm, giang hồ như sóng lớn cuốn trôi cát bụi, xem nhà nào còn hợp đồng không bị rò rỉ.
Xem bản gốcTrả lời0
nft_widowvip
· 07-18 15:29
Lại là lỗi của hợp đồng
Xem bản gốcTrả lời0
rekt_but_not_brokevip
· 07-18 15:20
Lại là một dự án gg nữa
Xem bản gốcTrả lời0
  • Ghim
Giao dịch tiền điện tử mọi lúc mọi nơi
qrCode
Quét để tải xuống ứng dụng Gate
Cộng đồng
Tiếng Việt
  • 简体中文
  • English
  • Tiếng Việt
  • 繁體中文
  • Español
  • Русский
  • Français (Afrique)
  • Português (Portugal)
  • Bahasa Indonesia
  • 日本語
  • بالعربية
  • Українська
  • Português (Brasil)