Những điểm chính
Cầu nối blockchain kết nối hai blockchain riêng biệt để tài sản và dữ liệu có thể di chuyển giữa chúng. Các cầu nối liên chuỗi nắm giữ lượng lớn tiền của người dùng, khiến chúng trở thành mục tiêu tập trung cho kẻ tấn công.
Các lỗ hổng cầu nối phổ biến nhất bao gồm xác thực on-chain yếu, xác thực off-chain yếu, xử lý không đúng token native, cấu hình sai và việc bị xâm phạm khóa của validator hoặc custodian.
Các vụ hack cầu nối đã gây ra hàng tỷ USD thiệt hại. Những vụ khai thác mang tính bước ngoặt gồm Wormhole (325M USD), Ronin (625M USD) và Nomad (190M USD).
Kiểm thử nghiêm ngặt trước khi triển khai trên mọi vectơ tấn công đã biết, kết hợp với các cuộc kiểm toán bảo mật từ bên thứ ba, là cách hiệu quả nhất để giảm rủi ro bảo mật của cầu nối. Ngay cả mã đã được kiểm toán kỹ vẫn có thể bị vượt qua nếu khóa của validator bị xâm phạm.
Giới thiệu
Cầu nối blockchain là một giao thức cho phép hai blockchain giao tiếp và trao đổi tài sản. Nếu bạn có bitcoin nhưng muốn tham gia hoạt động trên mạng Ethereum, một cầu nối liên chuỗi sẽ cho phép bạn làm điều đó mà không cần bán bitcoin.
Các cầu nối đóng vai trò trung tâm trong hệ sinh thái đa chuỗi. Vì chúng nắm giữ lượng lớn tiền của người dùng và dựa vào các thành phần on-chain lẫn off-chain phức tạp, chúng tạo ra một bề mặt tấn công rộng. Sự kết hợp này khiến các cầu nối trở thành một trong những khu vực bị nhắm mục tiêu thường xuyên nhất trong lĩnh vực blockchain.
Các cuộc tấn công vào cầu nối đã gây ra tổn thất vượt 2 tỷ USD chỉ riêng trong năm 2022. Những vụ khai thác lớn trong năm đó gồm Wormhole (khoảng 325 triệu USD vào tháng 2/2022, do một lỗ hổng xác thực on-chain yếu), Ronin Bridge (khoảng 625 triệu USD vào tháng 3/2022, do bị xâm phạm năm trong chín khóa của validator) và Nomad (khoảng 190 triệu USD vào tháng 8/2022, do một cấu hình sai cho phép bất kỳ ai cũng có thể gửi một thông điệp gian lận).
Các cuộc tấn công vẫn tiếp diễn sau đó, bao gồm một sự cố xâm nhập vào giao thức Orbit Bridge vào năm 2024 dẫn đến khoảng 82 triệu USD thiệt hại. Hiểu vì sao các cầu nối dễ bị tổn thương là điều then chốt để thấy ngành có thể tiếp cận bảo mật tốt hơn như thế nào.
Vì sao bảo mật của cầu nối lại quan trọng?
Các cầu nối thường nắm giữ các token mà người dùng muốn chuyển từ chuỗi này sang chuỗi khác. Vì việc chuyển tài sản liên chuỗi tích lũy theo thời gian, một hợp đồng cầu nối có thể giữ một lượng đáng kể tiền của người dùng tại bất kỳ thời điểm nào. Điều này khiến nó trở thành mục tiêu giá trị cao.
Các cầu nối cũng có bề mặt tấn công lớn. Chúng bao gồm cả các hợp đồng thông minh trên blockchain và hạ tầng backend off-chain, và hai phần này phải phối hợp đúng để hệ thống an toàn. Bất kỳ khoảng trống nào trong sự tương tác giữa các thành phần này đều có thể tạo ra cơ hội để bị khai thác.
Ngoài các lỗ hổng ở cấp độ mã nguồn, các cầu nối dựa vào một tập hợp validator hoặc custodian để ký xác nhận các thông điệp liên chuỗi còn phải đối mặt với một nhóm rủi ro bổ sung: nếu kẻ tấn công xâm phạm đủ số lượng khóa validator, chúng có thể ủy quyền cho các khoản rút tiền gian lận bất kể các hợp đồng thông minh nền tảng được viết tốt đến đâu. Vụ khai thác Ronin Bridge thuộc nhóm này, cho thấy quản lý khóa của validator quan trọng không kém gì bảo mật của hợp đồng.
Những kẻ tấn công có động cơ rất mạnh để tìm ra các lỗ hổng ở bất kỳ khu vực nào trong số này, do tiềm năng lợi ích từ một vụ xâm nhập thành công.
Các lỗ hổng bảo mật cầu nối phổ biến
Lỗ hổng của cầu nối rơi vào một số nhóm chính. Mỗi nhóm đòi hỏi cách kiểm thử và chiến lược giảm thiểu riêng.
Xác thực on-chain yếu
Một số cầu nối dựa vào các hợp đồng thông minh để xác thực thông điệp và kiểm tra trực tiếp các khoản nạp trên blockchain. Khi người dùng nạp tiền, một relayer hoặc tập validator off-chain sẽ quan sát khoản nạp và tạo ra một bằng chứng đã ký. Sau đó, hợp đồng on-chain sẽ xác thực bằng chứng này để ủy quyền cho một lệnh rút trên chuỗi nhận.
Nếu logic xác thực on-chain có lỗi, kẻ tấn công có thể giả mạo các bằng chứng vượt qua bước kiểm tra xác minh. Ví dụ, trong vụ khai thác Wormhole, kẻ tấn công đã có thể tạo ra một chữ ký hợp lệ cho một khoản nạp chưa hề xảy ra, mint khoảng 120.000 ETH dạng bọc (wrapped) trên Solana mà không có khoản nạp tương ứng trên Ethereum.
Các cầu nối xử lý token dạng bọc (wrapped tokens) đặc biệt dễ bị tấn công trong tình huống này. Nếu giao dịch phát hành token bọc không được xác thực đúng cách, kẻ tấn công có thể chuyển hướng chúng đến một địa chỉ không mong muốn. Rủi ro này có thể tăng thêm nếu người dùng đã cấp cho hợp đồng cầu nối quyền phê duyệt token vô hạn—một thực hành phổ biến để giảm phí gas.
Xác thực off-chain yếu
Một số hệ thống cầu nối dựa vào máy chủ backend off-chain để kiểm tra liệu một giao dịch nạp có hợp lệ hay không trước khi cho phép rút tiền. Kẻ tấn công có thể đánh lừa máy chủ này để rút tiền mà không cần bao giờ nạp.
Một điểm yếu phổ biến ở đây là xác minh không đầy đủ hợp đồng phát ra sự kiện. Backend server cần xác nhận không chỉ rằng một sự kiện nạp đã được phát ra, mà sự kiện đó được phát ra từ đúng địa chỉ hợp đồng. Nếu chỉ kiểm tra cấu trúc sự kiện mà không kiểm tra địa chỉ nguồn, kẻ tấn công có thể triển khai một hợp đồng giả mạo phát ra sự kiện nạp có cấu trúc giống hệt, lừa máy chủ cho phép một lệnh rút tiền gian lận.
Xử lý không đúng token native
Trên một mạng như Ethereum, token native (ETH) và token tiện ích (ERC-20) được nạp vào cầu nối bằng các cơ chế khác nhau. Token native được gửi trực tiếp kèm theo giao dịch; còn token ERC-20 cần một bước phê duyệt và chuyển riêng.
Khi cả hai loại có thể được nạp thông qua cùng một hàm, sẽ có rủi ro rằng logic coi token native và ERC-20 là có thể thay thế cho nhau tạo ra các trường hợp biên mà kẻ tấn công có thể khai thác. Ví dụ, nếu một địa chỉ 0 (đại diện cho token native) vượt qua kiểm tra whitelist, kẻ tấn công có thể thao túng luồng giao dịch theo cách ghi nhận một khoản nạp mà thực tế không chuyển bất kỳ token nào.
Có thể giải quyết vấn đề này bằng cách sử dụng các hàm riêng cho khoản gửi native và ERC-20, hoặc bằng cách triển khai một danh sách trắng (whitelist) vững chắc xử lý rõ ràng trường hợp token native.
Cấu hình sai
Các vai trò đặc quyền trong một giao thức cầu nối (bridge) kiểm soát các chức năng quan trọng như danh sách trắng token, gán chữ ký (signer) và cập nhật cấu hình. Việc cấu hình sai ở bất kỳ điểm nào trong số này có thể dẫn đến hậu quả nghiêm trọng.
Trong vụ khai thác lỗ hổng cầu nối Nomad, một bản nâng cấp giao thức đã đưa vào một cấu hình sai, cho phép bất kỳ ai cũng có thể gửi các thông điệp rút tiền gian lận và được đối xử như một relayer hợp lệ. Bởi vì hệ thống chấp nhận bất kỳ thông điệp nào từ bất kỳ người gửi nào như đã được xác thực trước, kẻ tấn công có thể rút cạn cầu nối chỉ bằng cách sao chép một giao dịch hợp lệ và thay địa chỉ người nhận, mà không cần bất kỳ khai thác kỹ thuật nào.
Loại lỗ hổng này cho thấy cần phải xử lý các thay đổi cấu hình với mức độ chặt chẽ tương tự như thay đổi mã nguồn, bao gồm kiểm thử kỹ lưỡng trước và sau mọi bản nâng cấp.
Bị xâm phạm khóa của validator và custodian
Nhiều cầu nối dựa vào một nhóm validator hoặc các custodian đa chữ ký (multisig) để phê duyệt các thông điệp liên chuỗi. Nếu kẻ tấn công xâm phạm đủ số lượng khóa để đạt ngưỡng ký, chúng có thể ủy quyền cho các khoản rút tiền gian lận bất kể các hợp đồng thông minh nền tảng được bảo mật tốt đến đâu.
Vụ tấn công vào Ronin Bridge vẫn là vụ khai thác cầu nối lớn nhất trong lịch sử crypto. Kẻ tấn công giành quyền truy cập vào năm trong số chín khóa riêng của validator, đủ để ký duyệt hai lệnh rút tiền gian lận trị giá khoảng 625 triệu USD. Sự cố không được phát hiện trong sáu ngày vì cầu nối không có cơ chế giám sát hoặc cảnh báo tự động cho các dòng tiền rút lớn.
Các biện pháp giảm thiểu cho nhóm này bao gồm phân tán khóa validator cho nhiều bên độc lập, không dùng chung hạ tầng; triển khai giám sát tự động cho các mẫu rút tiền bất thường; và sử dụng mô-đun bảo mật phần cứng (HSM) để bảo vệ các khóa ký. Giới hạn tốc độ rút tiền (rate limiting) cũng có thể giảm thiệt hại ngay cả khi khóa bị xâm phạm.
Cách Cải Thiện Bảo Mật Cầu Nối
Các loại lỗ hổng được mô tả ở trên có chung một điểm: mỗi lỗ hổng đều phát sinh từ một khoảng trống trong logic, cấu hình hoặc quản lý khóa quyết định cách cầu nối xử lý thông điệp và tiền.
Thực hành bảo mật hiệu quả giải quyết các khoảng trống này thông qua kiểm thử nghiêm ngặt trước khi triển khai, bao phủ mọi vectơ tấn công đã biết, bao gồm bằng chứng giả mạo (forged proofs), sự kiện nạp tiền giả, các trường hợp biên của token native, các giả định ở cấp cấu hình và quản lý khóa của validator.
Các cuộc kiểm toán bảo mật hợp đồng thông minh từ bên thứ ba cung cấp thêm một lớp đánh giá, mang chuyên môn bên ngoài để phát hiện các vấn đề mà đội nội bộ có thể bỏ sót. Tuy nhiên, chỉ riêng kiểm toán là chưa đủ: vụ khai thác Ronin diễn ra trên mã đã được kiểm toán, cho thấy bảo mật khóa của validator và quy trình vận hành có thể vượt qua cả việc rà soát mã nguồn kỹ lưỡng nhất.
Giới hạn tốc độ rút tiền và yêu cầu đa chữ ký cho các hành động đặc quyền cũng có thể giảm tác động của một vụ khai thác thành công bằng cách giới hạn số tiền mà kẻ tấn công có thể rút trong một khoảng thời gian ngắn. Giám sát tự động và cảnh báo cho các hoạt động bất thường có thể rút ngắn thời gian phát hiện; đây là yếu tố quan trọng trong trường hợp Ronin Bridge.
Không có một phương pháp đơn lẻ nào loại bỏ được toàn bộ rủi ro. Những cầu nối bền vững nhất kết hợp kiểm thử nghiêm ngặt, kiểm toán bên ngoài, quản lý khóa an toàn và quy trình vận hành cẩn thận thành một tư thế bảo mật theo lớp.
Câu hỏi thường gặp (FAQ)
Điều gì khiến cầu nối blockchain trở thành mục tiêu của kẻ tấn công?
Các cầu nối nắm giữ lượng lớn tiền của người dùng trong các hợp đồng thông minh và dựa vào cả các thành phần on-chain lẫn off-chain hoạt động đúng. Sự kết hợp giữa giá trị cao và bề mặt tấn công rộng khiến chúng trở thành một mục tiêu hấp dẫn. Bất kỳ lỗi nào trong logic xác thực, cấu hình hoặc quản lý khóa của validator đều có thể bị lợi dụng để rút tiền mà không có một khoản nạp hợp lệ.
Vụ hack cầu nối blockchain lớn nhất là gì?
Vụ khai thác Ronin Bridge vào tháng 3 năm 2022 gây ra tổn thất khoảng 625 triệu USD, khiến nó trở thành vụ hack cầu nối lớn nhất. Kẻ tấn công giành quyền truy cập vào năm trong số chín khóa riêng của validator, cho phép thực hiện các khoản rút tiền gian lận.
Xác thực off-chain yếu trong bảo mật cầu nối là gì?
Xác thực off-chain yếu nghĩa là máy chủ backend của cầu nối không xác minh đầy đủ giao dịch nạp trước khi cho phép thực hiện rút tiền. Nếu máy chủ chỉ kiểm tra cấu trúc sự kiện mà không kiểm tra địa chỉ đã phát ra sự kiện, kẻ tấn công có thể triển khai một hợp đồng giả mạo mô phỏng sự kiện nạp hợp lệ và vượt qua bước kiểm tra xác thực.
Việc cấp quyền phê duyệt token vô hạn làm tăng rủi ro cầu nối như thế nào?
Nhiều cầu nối yêu cầu người dùng cấp quyền phê duyệt token vô hạn để giảm phí giao dịch. Nếu hợp đồng cầu nối có lỗ hổng xác thực, kẻ tấn công có thể lợi dụng quyền phê duyệt này để chuyển token từ các người dùng khác sang chính chúng, vì hợp đồng đã được cấp quyền truy cập không giới hạn vào các ví đó.
Cách tốt nhất để giảm rủi ro bảo mật của cầu nối là gì?
Cách tiếp cận hiệu quả nhất là kết hợp kiểm thử nghiêm ngặt trước khi triển khai đối với mọi vectơ tấn công đã biết với các cuộc kiểm toán bảo mật từ bên thứ ba. Quan trọng không kém là các thực hành quản lý khóa an toàn cho tập hợp validator, giới hạn tốc độ rút tiền, yêu cầu đa chữ ký cho các hành động đặc quyền và giám sát tự động cho các hoạt động bất thường. Không có biện pháp đơn lẻ nào loại bỏ hết rủi ro; cần có một tư thế bảo mật theo lớp.
Những suy nghĩ kết lại
Các cầu nối blockchain là thành phần nền tảng của hệ sinh thái đa chuỗi, giúp tài sản có thể di chuyển giữa các mạng riêng biệt. Giá trị của chúng cũng khiến chúng trở thành mục tiêu tồn tại lâu dài của kẻ tấn công. Mỗi nhóm lỗ hổng chính của cầu nối—xác thực on-chain yếu, xác thực off-chain yếu, xử lý không đúng token native, cấu hình sai và bị xâm phạm khóa validator—đều cần kiểm thử nhắm mục tiêu và thiết kế cẩn thận để xử lý.
Lịch sử các vụ khai thác cầu nối cho thấy chỉ chất lượng mã nguồn là chưa đủ. Vụ hack cầu nối lớn nhất trong lịch sử crypto (Ronin Bridge) đã khai thác khóa của validator thay vì lỗi trong hợp đồng thông minh. Những nhà phát triển xây dựng hoặc kiểm toán hạ tầng cầu nối nên coi mọi thành phần—mã on-chain, logic off-chain, quản lý khóa và quy trình vận hành—như một bề mặt tấn công tiềm năng.
Đọc thêm
Cầu nối Blockchain là gì?
Tính tương tác liên chuỗi là gì?
Hợp đồng thông minh là gì và hoạt động như thế nào?
Cách nhận diện lừa đảo trong tài chính phi tập trung (DeFi)
Ethereum là gì và hoạt động như thế nào?
Tuyên bố miễn trừ trách nhiệm: Nội dung này chỉ được cung cấp cho bạn theo hình thức "hiện có" (as is) với mục đích cung cấp thông tin chung và giáo dục. Không có bất kỳ sự đảm bảo hay cam kết nào dưới mọi hình thức. Nội dung này không nên được hiểu là lời khuyên mang tính tài chính, pháp lý hoặc tư vấn chuyên nghiệp khác, và cũng không nhằm mục đích khuyến nghị việc mua bất kỳ sản phẩm hoặc dịch vụ cụ thể nào. Bạn nên tự tìm kiếm lời khuyên của các chuyên gia phù hợp. Khi nội dung do bên thứ ba đóng góp, vui lòng lưu ý rằng các quan điểm được thể hiện thuộc về bên đóng góp đó và không nhất thiết phản ánh quan điểm của Binance Academy. Giá tài sản kỹ thuật số có thể biến động. Giá trị khoản đầu tư của bạn có thể giảm hoặc tăng và bạn có thể không nhận lại đúng số tiền đã đầu tư. Bạn hoàn toàn chịu trách nhiệm đối với các quyết định đầu tư của mình và Binance Academy không chịu trách nhiệm đối với bất kỳ khoản lỗ nào bạn có thể gặp. Để biết thêm thông tin, vui lòng xem Điều khoản sử dụng, Cảnh báo rủi ro và Điều khoản của Binance Academy của chúng tôi.
