Kỷ nguyên hậu an toàn: Một mô hình mới về bảo mật đa chữ ký mà mọi người dùng an toàn nên nắm vững

avatar
星球君的朋友们
1tuần trước
Bài viết có khoảng 3185từ,đọc toàn bộ bài viết mất khoảng 4 phút
Đừng tin tưởng, hãy xác minh là nguyên tắc cốt lõi của bảo mật Web3.

Tác giả gốc: Moonbeam

Dòng thời gian

  • Ngày 21 tháng 2 năm 2025: Ví đa chữ ký Bybit bị tấn công và 1,5 tỷ đô la đã chảy ra thông qua các giao dịch chữ ký hợp pháp.

  • Theo dõi trên chuỗi: Tiền được chuyển đến các địa chỉ ẩn danh và được chia thành các đồng tiền hỗn hợp. Kẻ tấn công có thể có kết nối với một số nút xác minh.

  • Phân tích sau sự cố: Kiểm tra bảo mật phát hiện ra rằng kẻ tấn công đã sử dụng lỗ hổng chuỗi cung ứng ở giao diện Safe để cài đặt các tập lệnh độc hại.

Tại sao cuộc tấn công xảy ra

Tin tặc đã sử dụng mã front-end độc hại để thuyết phục những người ký tên vào ví đa chữ ký bybit rằng đây là một giao dịch hợp pháp (chẳng hạn như chuyển token thông thường), điều này thực sự khiến họ ký vào các giao dịch bất hợp pháp. Để ngăn những người ký tên phát hiện ra các vấn đề với nội dung giao dịch thông qua các phương tiện khác, tin tặc thậm chí còn giả mạo cuộc tấn công này thành một giao dịch chuyển tiền, để những người ký tên bybit sẽ cố gắng không kiểm tra calldata giao dịch thông qua các phương tiện khác. (Nội dung giao dịch thường được gọi là calldata)

Nói tóm lại, phương pháp tấn công như sau:

  1. Tin tặc đã chiếm được quyền phát triển của Safe front-end, sửa đổi mã front-end và cài một tập lệnh độc hại nhắm vào các cuộc tấn công bybit;

  2. Một thành viên đa chữ ký của bybit đã truy cập vào trang web bị nhiễm và thấy thông tin giao dịch giả mạo:

  3. Trang họ nhìn thấy: Chuyển 100 ETH đến địa chỉ A

  4. Những gì thực sự cần phải ký là: Sửa đổi logic ví lạnh

Giống như máy ATM thay màn hình hiển thị, màn hình hiển thị 100 tệ, nhưng thao tác thực tế là rút 1 triệu tệ.

APP chính thức - Điểm mù lòng tin của người dùng

Quá trình giao dịch đa chữ ký theo nhận thức của người dùng rất đơn giản: xem giao dịch → ký → gửi vào chuỗi, nhưng thực tế nó ngụ ý một sự tách biệt khóa:

  1. Giao dịch được người dùng nhìn thấy

  2. Giao dịch thực tế đã ký

Việc sử dụng ứng dụng chính thức sẽ làm giảm đáng kể sự cảnh giác của người dùng, đến mức họ bỏ qua lớp phân tách này. Nếu trang ứng dụng chính thức bị hack, chữ ký của người dùng sẽ là chữ ký thật, họ chỉ không biết mình đã ký gì vào thời điểm đó.

Lúc này, nếu có một kênh độc lập để xác minh tính xác thực của nội dung chữ ký thì rủi ro do các cuộc tấn công từ phía front-end gây ra có thể được loại bỏ ở mức độ lớn. Đây chính là điều mà blockchain ủng hộ: Đừng tin tưởng nó, hãy XÁC MINH nó.

Cơ sở lý thuyết của xác minh kênh độc lập

Trước tiên chúng ta hãy xem hợp đồng Safe hoạt động như thế nào (cho đến nay, hợp đồng Safe vẫn đủ an toàn):

  1. Đầu tiên, tính toán giá trị băm cho nội dung giao dịch (tương tự như việc tạo dấu vân tay của giao dịch)

  2. Ký giá trị băm này bằng khóa riêng

  3. Khi đã thu thập đủ chữ ký, hãy gửi giao dịch gốc và các chữ ký này đến chuỗi

  4. Chuỗi tính toán lại giá trị băm dựa trên văn bản gốc và xác minh xem chữ ký có hợp lệ không. Nếu thu thập đủ giao dịch hợp lệ, chúng sẽ được thực hiện, nếu không, chúng sẽ bị từ chối.

Không còn nghi ngờ gì nữa, tính bảo mật và tính khó làm giả của hàm băm và chữ ký là hai nền tảng cơ bản của công nghệ blockchain.

Do đó, nếu có một kênh độc lập có thể lấy được chữ ký và văn bản giao dịch gốc trước khi giao dịch được gửi lên chuỗi, thì có thể xác minh giao dịch do người dùng ký chính xác là gì và liệu người dùng đã ký giao dịch hay chưa.

Do đó, ngay cả khi frontend hoặc backend bị tấn công, trường hợp xấu nhất là dữ liệu sai được trả về. Tuy nhiên, dữ liệu sai trong kênh độc lập sẽ tạo ra các tình huống sau:

  • Văn bản giao dịch sai, chữ ký sai - người dùng từ chối gửi giao dịch đến chuỗi

  • Văn bản giao dịch sai, chữ ký hợp lệ - người dùng từ chối gửi giao dịch đến chuỗi

  • Văn bản giao dịch sai, chữ ký sai - người dùng từ chối gửi giao dịch đến chuỗi

Chúng ta có thể thấy rằng trường hợp xấu nhất là giao dịch sẽ không được gửi đến chuỗi. Ngoài ra, sẽ không có tổn thất nào trên chuỗi xảy ra. Do đó, cách tốt nhất để đối phó với các cuộc tấn công hiển thị như vậy là xác minh thông qua nhiều kênh, điều này cũng phù hợp với tinh thần của blockchain: đừng tin tưởng, hãy XÁC MINH.

Các giải pháp hiện có

Nhiều sản phẩm đa chữ ký xác minh lẫn nhau

Có nhiều sản phẩm đa chữ ký tương thích với safe trên thị trường. Ví dụ, bản thân Safe đã triển khai hai trang front-end độc lập:

https://eternalsafe.vercel.app/welcome/
https://eternalsafe.eth.limo/chào mừng/
Sau khi người dùng ký một giao dịch đa chữ ký, người đó hoặc người ký tiếp theo sẽ đăng nhập vào trang của một sản phẩm đa chữ ký khác và xem lại giao dịch gốc. Nếu các sản phẩm đa chữ ký khác nhau hiển thị chính xác cùng một phân tích nội dung giao dịch, thì người dùng có thể tin tưởng rằng nội dung giao dịch cần ký là chính xác.

Tuy nhiên, điều này đòi hỏi các sản phẩm đa chữ ký khác nhau đều sử dụng backend của {Safe} để lưu trữ các giao dịch ngoài chuỗi và dữ liệu chữ ký, đồng thời gửi dữ liệu chữ ký đã thu thập của họ đến backend của {Safe}, nơi đặt ra các yêu cầu rất khắt khe về sự hợp tác giữa các sản phẩm; và Safe không thân thiện với việc phân tích cú pháp văn bản gốc của một số giao dịch không theo quy ước. Ngay cả khi nhiều front-end Safe hiển thị cùng một calldata, nếu đó chỉ là một chuỗi vô nghĩa 0x abcdefsf, thì điều đó sẽ làm nản lòng những người ký.

Lưu ý: Hiện tại, hai trang web thay thế độc lập do Safe cung cấp đều yêu cầu bạn cung cấp liên kết RPC của riêng bạn:

Kỷ nguyên hậu an toàn: Một mô hình mới về bảo mật đa chữ ký mà mọi người dùng an toàn nên nắm vững

Công cụ xác minh giao dịch an toàn độc lập

Cộng đồng đã phản ứng nhanh chóng với cuộc tấn công Safe front-end. Chúng tôi tìm thấy trong nhóm điện tín Safe chính thức rằng có người đã cung cấp một công cụ phân tích giao dịch Safe độc lập, có vẻ đơn giản và trực tiếp hơn.

Kỷ nguyên hậu an toàn: Một mô hình mới về bảo mật đa chữ ký mà mọi người dùng an toàn nên nắm vững

Chúng tôi cũng đã xác thực công cụ này. Như hình minh họa, bạn chỉ cần dán liên kết chia sẻ giao dịch vào trang an toàn, bạn có thể tự động đọc dữ liệu an toàn và xác minh độc lập tính chính xác của giá trị băm và chữ ký của giao dịch gốc. Tóm lại, nếu bạn chắc chắn rằng phân tích calldata trong hình là giao dịch bạn muốn và xác minh Kiểm tra băm an toàn và Kiểm tra chữ ký đã được thông qua, bạn có thể nghĩ rằng đây là giao dịch bạn muốn gửi và bạn đã ký đúng.

Tất nhiên, để an toàn, chúng ta cũng phải kiểm tra cẩn thận Địa chỉ an toàn, địa chỉ người ký được phân tích qua chữ ký, địa chỉ hợp đồng tương tácloại hoạt động , cho dù đó là Call hay Delegatecall. Ví dụ, giao dịch bị bybit tấn công lần này là giao dịch trong đó delegatecall và transfer xuất hiện cùng lúc. Một nhà phát triển có một chút kinh nghiệm sẽ biết rằng sự kết hợp như vậy rất kỳ lạ.

Kỷ nguyên hậu an toàn: Một mô hình mới về bảo mật đa chữ ký mà mọi người dùng an toàn nên nắm vững

Nếu bạn gặp thông tin giao dịch không thể đọc được:

Kỷ nguyên hậu an toàn: Một mô hình mới về bảo mật đa chữ ký mà mọi người dùng an toàn nên nắm vững

Bạn có thể nhấp vào Giải mã để cung cấp ABI của phương thức giao dịch, chẳng hạn như:

Kỷ nguyên hậu an toàn: Một mô hình mới về bảo mật đa chữ ký mà mọi người dùng an toàn nên nắm vững

Bạn có thể hiển thị thông tin giao dịch có thể đọc được:

Kỷ nguyên hậu an toàn: Một mô hình mới về bảo mật đa chữ ký mà mọi người dùng an toàn nên nắm vững

Giữ an toàn - XÁC MINH, đừng tin tưởng

Cuộc tấn công đa chữ ký của Bybit một lần nữa nhắc nhở chúng ta rằng sự tin tưởng ở giao diện đầu cuối không đồng nghĩa với tính bảo mật của giao dịch. Ngay cả khi sử dụng ứng dụng chính thức, nội dung giao dịch vẫn có thể bị giả mạo và người ký phải có cách độc lập để xác minh nội dung mình đã ký.

Đừng tin vào nó, hãy XÁC MINH nó. là nguyên tắc cốt lõi của bảo mật Web3. Hy vọng rằng trong tương lai, hệ sinh thái Safe và nhiều sản phẩm đa chữ ký hơn sẽ có thể tăng cường cơ chế xác minh chữ ký độc lập để ngăn chặn các cuộc tấn công tương tự xảy ra lần nữa.

Bài viết này đến từ bản thảo, không đại diện cho lập trường của Odaily. Nếu đăng lại xin ghi rõ xuất xứ.

Odaily nhắc nhở, mời đông đảo độc giả xây dựng quan niệm đúng đắn về tiền tệ và khái niệm đầu tư, nhìn nhận hợp lý về blockchain, nâng cao nhận thức về rủi ro; Đối với manh mối phạm tội phát hiện, có thể tích cực tố cáo phản ánh với cơ quan hữu quan.

Đọc nhiều nhất
Lựa chọn của người biên tập