Chi tiết về vụ hack tiền mã hóa trên giải pháp Wormhole bridge của Solana

Vụ hack Wormhole đã cuỗm đi khoảng 326 triệu đô la Mỹ đồng thời các trading bot cũng kiếm được số tiền 13 triệu đô la Mỹ từ chênh lệch tỷ giá.

14901Total views
Listen to article
play!
Chi tiet ve vu hack tien ma hoa tren giai phap Wormhole bridge cua Solana - anh 1
Chi tiết về vụ hack tiền mã hóa trên giải pháp Wormhole bridge của Solana

Diễn biến vụ hack trên Wormhole

Theo một thống kê từ rekt news, vụ hack của Wormhole xảy ra vào ngày 02/02/2022 hiện là vụ hack có giá trị lớn thứ hai từ trước đến nay, với số tiền thiệt hại lên đến 326 triệu đô la Mỹ. Poly Network hiện xếp vị trí đầu bảng với số tiền lên đến 611 triệu đô la Mỹ cho vụ hack xảy ra vào ngày 08/10/2021.

Chi tiet ve vu hack tien ma hoa tren giai phap Wormhole bridge cua Solana - anh 2
Top 10 vụ hack tiền điện tử lớn nhất

Như trước đó Coinvn đã đưa tin, giải pháp cầu nối (bridge) trên Solana (SOL) đã bị thao túng để ghi có số tiền lên đến 120.000 ETH, khi đã được gửi vào Ethereum. Hành động này đã cho phép kẻ tấn công (hacker) kiếm được số tiền tương đương bằng wETH trên Solana. Cụ thể:

Bằng cách sử dụng SignatureSet (signature_set) được tạo trong một giao dịch trước đó, kẻ tấn công lần đầu tiên có thể qua mặt giải pháp bảo vệ của Wormhole (gọi là Wormhole Guardians). Các Wormhole Guardians này có nhiệm vụ quan sát cũng như chứng thực các sự kiện và dữ liệu trên các chuỗi được kết nối. Nói cách khác, Guardians quản lý các giao dịch giữa mỗi blockchain. Trước khi chuyển token sang một chuỗi khác, Guardians kiểm tra xem các token có được tạo chính xác hay không. Chúng làm điều này bằng cách xác minh chữ ký của các token trên secp256k1 curve.

Chi tiet ve vu hack tien ma hoa tren giai phap Wormhole bridge cua Solana - anh 3
Mô hình hoạt động của Wormhole

Sau khi qua mặt Wormhole Guardians thành công, hacker đã thực hiện gọi hàm “verify_signatures” trực tiếp trên cầu nối chính. Đối với Wormhole bridge, hàm verify_signatures được gọi trước để lấy signature_set đã ký cho hàm post_vaa. Về cơ bản, chương trình Wormhole thu được tập hợp các chữ ký từ lệnh trước thông qua chương trình instruction sysvar (trong đó địa chỉ của nó được nhập bởi người dùng).

Tuy nhiên, hàm verify_signatures đã sử dụng hàm load_instruction_at để xuất ra một lệnh bắt nguồn từ dữ liệu đầu vào (là dữ liệu của tài khoản instruction sysvar). Chức năng này không kiểm tra tài khoản chương trình sysvar đầu vào có phải là tài khoản sysvar thực hay không. Về cơ bản, chương trình instruction sysvar không bao giờ được kiểm tra.

Do đó, kẻ tấn công đã tạo một tài khoản instruction sysvar giả với dữ liệu giả. Các chữ ký đã bị giả mạo với các token đã chuyển hợp lệ trước đó. Do đó, tất cả các chữ ký trong bộ ký tự được đánh dấu là true, có nghĩa là tất cả các chữ ký hợp lệ.

Khi một tập hợp chữ ký được tạo, hàm post_vaa sẽ kiểm tra xem nó có đủ số lượng chữ ký để đạt được sự đồng thuận, để đưa ra một lệnh phê duyệt hành động xác thực (Validator Action Approval – VAA) hay không. Khi tất cả các chữ ký cần thiết đều đã có, kẻ tấn công lúc này đã có VAA hợp lệ và kích hoạt quá trình tạo token trái phép vào tài khoản của chính mình.

93.750 ETH đã được chuyển trở lại Ethereum thông qua 3 giao dịch (một, hai, ba) và vẫn còn được giữ trong ví của hacker. Khoảng 36.000 wETH còn lại đã được thanh lý trên Solana thành USDC và SOL.

Trading bot kiếm được 13 triệu đô la Mỹ từ chênh lệch tỷ giá trên Solana trong 30 phút

Trong khoảng 30 phút (từ 18:30:32 – 19:00:32), các nhà giao dịch sử dụng trading bot đã kiếm được 5.955.161 USDC và 70.915 SOL (khoảng 13 triệu đô la Mỹ) từ các giao dịch chênh lệch giá. Trong đó, hầu hết lợi nhuận được tạo ra trong 30 giây (từ khoảng thời gian 18:34:30 – 18:35:00) với 2.316.194 USDC và 58.497 SOL, trị giá khoảng 7,3 triệu đô la Mỹ. Kết quả này xảy ra do hacker từ vụ hack Wormhole đã bán phá giá lượng ETH trị giá khoảng 51.000.000 đô la Mỹ trên thị trường, gây ra sự mất cân bằng giá lớn giữa các sàn giao dịch.

Trong số tất cả các trading bot tham gia giao dịch, có một trading bot đã kiếm được 1.905.176,70 đô la Mỹ từ chênh lệch giá bằng cả SOL và USDC trong vòng 30 phút đó. Các trading bot ở vị trí thứ hai và vị trí thứ ba cũng kiếm được khoảng 1,6 triệu đô la Mỹ. 10 trading bot có lợi nhuận tốt nhất từ vụ hack này chiếm 65% (chiếm 8,5 triệu đô la Mỹ trong số 13 triệu đô la Mỹ) từ lợi nhuận chênh lệch giá trong 30 phút trên.

Đã có tổng cộng 12.422 giao dịch sinh lời trong vòng 30 phút đó với hầu hết là đến từ các DEX như Orca (4.477 giao dịch), Serum (3.331 giao dịch) và Raydium (2.022 giao dịch). Một lưu ý khác ở đây là chúng ta chỉ tính đến các chênh lệch giá dưới dạng atomic (atomic arbitrage). Do đó, trên thực tế lợi nhuận tổng từ các hình thức chênh lệch giá có thể sẽ lớn hơn con số 13 triệu đô la Mỹ.

Tin tức tiền mã hóa 24/7
Thảo luận về tiền mã hóa tại đây
Xem thêm
articles