Tiết lộ trò lừa bịp chữ ký Permit2 của Uniswap: chỉ một chữ ký có thể dẫn đến việc tài sản bị đánh cắp
Hacker là một thực thể đáng sợ trong hệ sinh thái Web3. Đối với các dự án, mã nguồn mở có nghĩa là các hacker trên toàn cầu có thể đang tìm kiếm lỗ hổng, chỉ cần viết sai một dòng mã có thể gây ra hậu quả nghiêm trọng. Đối với người dùng thông thường, mỗi lần tương tác hoặc ký trên chuỗi đều có thể khiến tài sản gặp rủi ro. Do đó, vấn đề an ninh luôn là một trong những điểm đau của thế giới tiền điện tử, và tính không thể đảo ngược của blockchain cũng khiến tài sản bị đánh cắp khó có thể được thu hồi, điều này càng làm nổi bật tầm quan trọng của kiến thức về an ninh.
Gần đây, một nhà nghiên cứu đã phát hiện ra một phương pháp lừa đảo mới, chỉ cần ký tên cũng có thể dẫn đến việc tài sản bị đánh cắp. Phương pháp này cực kỳ tinh vi và khó phòng ngừa, và các địa chỉ từng tương tác với Uniswap đều có thể đối mặt với rủi ro. Bài viết này sẽ giới thiệu chi tiết về phương pháp lừa đảo bằng chữ ký này, nhằm giúp người đọc tránh khỏi những tổn thất tài sản nhiều hơn.
diễn biến sự việc
Vấn đề bắt nguồn từ việc tài sản của một người bạn ( nhỏ A ) bị đánh cắp. Khác với các phương thức đánh cắp thông thường, nhỏ A không tiết lộ khóa riêng và cũng không tương tác với hợp đồng nghi vấn. Điều tra sâu hơn cho thấy, USDT bị đánh cắp đã được chuyển qua hàm Transfer From, điều này có nghĩa là một bên thứ ba đã thực hiện việc chuyển tài sản, chứ không phải là do khóa riêng của ví bị rò rỉ.
Chi tiết giao dịch hiển thị:
Một địa chỉ (fd51) đã chuyển tài sản của A nhỏ đến một địa chỉ khác (a0c8)
Thao tác này tương tác với hợp đồng Permit2 của Uniswap.
Vấn đề quan trọng là: địa chỉ fd51 đã có được quyền truy cập tài sản của A nhỏ như thế nào? Tại sao lại liên quan đến Uniswap?
Tiếp tục khai thác hồ sơ tương tác của địa chỉ fd51, phát hiện ra rằng trước khi chuyển nhượng tài sản của A nhỏ, địa chỉ này đã thực hiện một thao tác Permit, và cả hai thao tác đều tương tác với hợp đồng Permit2 của Uniswap.
Uniswap Permit2 là hợp đồng mới được ra mắt vào cuối năm 2022, nhằm mục đích quản lý quyền truy cập thống nhất giữa các ứng dụng, nâng cao trải nghiệm người dùng và giảm chi phí giao dịch. Nguyên tắc hoạt động của nó là: người dùng chỉ cần cấp quyền cho hợp đồng Permit2, tất cả các ứng dụng tích hợp Permit2 đều có thể chia sẻ hạn mức quyền truy cập này.
Thiết kế này mặc dù nâng cao tính tiện lợi, nhưng cũng mang lại rủi ro. Dưới phương thức tương tác truyền thống, việc ủy quyền và chuyển tiền đều cần thao tác trên chuỗi. Trong khi đó, Permit2 đã biến thao tác của người dùng thành chữ ký ngoài chuỗi, và thao tác trên chuỗi được thực hiện bởi các vai trò trung gian. Mặc dù điều này mang lại nhiều lợi ích, nhưng cũng khiến chữ ký ngoài chuỗi trở thành mối nguy hiểm an ninh dễ bị bỏ qua nhất.
Khảo sát cho thấy, để kích hoạt lỗ hổng này, điều kiện tiên quyết là ví cần phải được ủy quyền cho hợp đồng Permit2 của Uniswap. Cần lưu ý rằng, chỉ cần tương tác với Uniswap và ủy quyền cho Permit2 sau năm 2023, có thể phải đối mặt với rủi ro này.
Điều đáng lo ngại hơn là hợp đồng Permit2 của Uniswap mặc định yêu cầu quyền ủy quyền vô hạn. Mặc dù MetaMask cho phép tùy chỉnh số tiền, nhưng hầu hết người dùng có thể sẽ chọn trực tiếp giá trị tối đa hoặc giá trị mặc định.
phân tích kỹ thuật
Logic cốt lõi của hàm Permit là:
Kiểm tra xem chữ ký có còn trong thời gian hiệu lực hay không
Xác thực tính chân thực của chữ ký
Nếu qua xác minh, thì cập nhật hồ sơ ủy quyền
Hàm verify sẽ trích xuất dữ liệu v, r, s từ thông tin chữ ký, được sử dụng để phục hồi địa chỉ chữ ký và so sánh với địa chỉ chủ sở hữu token. Nếu khớp, thì tiếp tục thực hiện hàm _updateApproval.
_updateApproval hàm sẽ cập nhật giá trị ủy quyền, thực hiện chuyển nhượng quyền. Sau đó, bên được ủy quyền có thể gọi hàm transferFrom để chuyển đổi token.
Làm thế nào để phòng ngừa
Học cách nhận biết và hiểu nội dung chữ ký, đặc biệt là định dạng chữ ký Permit. Sử dụng plugin an toàn có thể giúp nhận diện.
Áp dụng chiến lược tách biệt ví nóng và ví lạnh, lưu trữ tài sản lớn trong ví lạnh.
Cẩn thận ủy quyền hợp đồng Permit2, chỉ ủy quyền số tiền cần thiết. Nếu đã ủy quyền, có thể sử dụng plugin an toàn để hủy.
Tìm hiểu xem các token mà bạn nắm giữ có hỗ trợ chức năng permit hay không, cần phải cẩn thận đặc biệt với các giao dịch token được hỗ trợ.
Nếu không may bị lừa nhưng vẫn có tài sản ở các nền tảng khác, cần lập kế hoạch chuyển nhượng tài sản hoàn chỉnh, có thể xem xét sử dụng chuyển nhượng MEV hoặc tìm kiếm sự hỗ trợ từ đội ngũ an ninh chuyên nghiệp.
Khi phạm vi ứng dụng Permit2 mở rộng, các cuộc tấn công lừa đảo dựa trên nó có thể trở nên phổ biến hơn. Phương thức lừa đảo bằng chữ ký này cực kỳ tinh vi và khó phòng ngừa, số địa chỉ bị rủi ro cũng sẽ ngày càng nhiều. Hy vọng độc giả có thể nâng cao cảnh giác và chia sẻ thông tin này với nhiều người hơn, cùng nhau bảo vệ an toàn tài sản.
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.
5 thích
Phần thưởng
5
2
Chia sẻ
Bình luận
0/400
BearMarketNoodler
· 07-20 14:49
Lại thấy ký tên trộm coin? Đáy đã chán ngán nhìn cá nổ rồi.
Phương pháp lừa đảo chữ ký Permit2 Uniswap dành cho người mới: Một lần ủy quyền có thể dẫn đến mất toàn bộ tài sản.
Tiết lộ trò lừa bịp chữ ký Permit2 của Uniswap: chỉ một chữ ký có thể dẫn đến việc tài sản bị đánh cắp
Hacker là một thực thể đáng sợ trong hệ sinh thái Web3. Đối với các dự án, mã nguồn mở có nghĩa là các hacker trên toàn cầu có thể đang tìm kiếm lỗ hổng, chỉ cần viết sai một dòng mã có thể gây ra hậu quả nghiêm trọng. Đối với người dùng thông thường, mỗi lần tương tác hoặc ký trên chuỗi đều có thể khiến tài sản gặp rủi ro. Do đó, vấn đề an ninh luôn là một trong những điểm đau của thế giới tiền điện tử, và tính không thể đảo ngược của blockchain cũng khiến tài sản bị đánh cắp khó có thể được thu hồi, điều này càng làm nổi bật tầm quan trọng của kiến thức về an ninh.
Gần đây, một nhà nghiên cứu đã phát hiện ra một phương pháp lừa đảo mới, chỉ cần ký tên cũng có thể dẫn đến việc tài sản bị đánh cắp. Phương pháp này cực kỳ tinh vi và khó phòng ngừa, và các địa chỉ từng tương tác với Uniswap đều có thể đối mặt với rủi ro. Bài viết này sẽ giới thiệu chi tiết về phương pháp lừa đảo bằng chữ ký này, nhằm giúp người đọc tránh khỏi những tổn thất tài sản nhiều hơn.
diễn biến sự việc
Vấn đề bắt nguồn từ việc tài sản của một người bạn ( nhỏ A ) bị đánh cắp. Khác với các phương thức đánh cắp thông thường, nhỏ A không tiết lộ khóa riêng và cũng không tương tác với hợp đồng nghi vấn. Điều tra sâu hơn cho thấy, USDT bị đánh cắp đã được chuyển qua hàm Transfer From, điều này có nghĩa là một bên thứ ba đã thực hiện việc chuyển tài sản, chứ không phải là do khóa riêng của ví bị rò rỉ.
Chi tiết giao dịch hiển thị:
Vấn đề quan trọng là: địa chỉ fd51 đã có được quyền truy cập tài sản của A nhỏ như thế nào? Tại sao lại liên quan đến Uniswap?
Tiếp tục khai thác hồ sơ tương tác của địa chỉ fd51, phát hiện ra rằng trước khi chuyển nhượng tài sản của A nhỏ, địa chỉ này đã thực hiện một thao tác Permit, và cả hai thao tác đều tương tác với hợp đồng Permit2 của Uniswap.
Uniswap Permit2 là hợp đồng mới được ra mắt vào cuối năm 2022, nhằm mục đích quản lý quyền truy cập thống nhất giữa các ứng dụng, nâng cao trải nghiệm người dùng và giảm chi phí giao dịch. Nguyên tắc hoạt động của nó là: người dùng chỉ cần cấp quyền cho hợp đồng Permit2, tất cả các ứng dụng tích hợp Permit2 đều có thể chia sẻ hạn mức quyền truy cập này.
Thiết kế này mặc dù nâng cao tính tiện lợi, nhưng cũng mang lại rủi ro. Dưới phương thức tương tác truyền thống, việc ủy quyền và chuyển tiền đều cần thao tác trên chuỗi. Trong khi đó, Permit2 đã biến thao tác của người dùng thành chữ ký ngoài chuỗi, và thao tác trên chuỗi được thực hiện bởi các vai trò trung gian. Mặc dù điều này mang lại nhiều lợi ích, nhưng cũng khiến chữ ký ngoài chuỗi trở thành mối nguy hiểm an ninh dễ bị bỏ qua nhất.
Khảo sát cho thấy, để kích hoạt lỗ hổng này, điều kiện tiên quyết là ví cần phải được ủy quyền cho hợp đồng Permit2 của Uniswap. Cần lưu ý rằng, chỉ cần tương tác với Uniswap và ủy quyền cho Permit2 sau năm 2023, có thể phải đối mặt với rủi ro này.
Điều đáng lo ngại hơn là hợp đồng Permit2 của Uniswap mặc định yêu cầu quyền ủy quyền vô hạn. Mặc dù MetaMask cho phép tùy chỉnh số tiền, nhưng hầu hết người dùng có thể sẽ chọn trực tiếp giá trị tối đa hoặc giá trị mặc định.
phân tích kỹ thuật
Logic cốt lõi của hàm Permit là:
Hàm verify sẽ trích xuất dữ liệu v, r, s từ thông tin chữ ký, được sử dụng để phục hồi địa chỉ chữ ký và so sánh với địa chỉ chủ sở hữu token. Nếu khớp, thì tiếp tục thực hiện hàm _updateApproval.
_updateApproval hàm sẽ cập nhật giá trị ủy quyền, thực hiện chuyển nhượng quyền. Sau đó, bên được ủy quyền có thể gọi hàm transferFrom để chuyển đổi token.
Làm thế nào để phòng ngừa
Học cách nhận biết và hiểu nội dung chữ ký, đặc biệt là định dạng chữ ký Permit. Sử dụng plugin an toàn có thể giúp nhận diện.
Áp dụng chiến lược tách biệt ví nóng và ví lạnh, lưu trữ tài sản lớn trong ví lạnh.
Cẩn thận ủy quyền hợp đồng Permit2, chỉ ủy quyền số tiền cần thiết. Nếu đã ủy quyền, có thể sử dụng plugin an toàn để hủy.
Tìm hiểu xem các token mà bạn nắm giữ có hỗ trợ chức năng permit hay không, cần phải cẩn thận đặc biệt với các giao dịch token được hỗ trợ.
Nếu không may bị lừa nhưng vẫn có tài sản ở các nền tảng khác, cần lập kế hoạch chuyển nhượng tài sản hoàn chỉnh, có thể xem xét sử dụng chuyển nhượng MEV hoặc tìm kiếm sự hỗ trợ từ đội ngũ an ninh chuyên nghiệp.
Khi phạm vi ứng dụng Permit2 mở rộng, các cuộc tấn công lừa đảo dựa trên nó có thể trở nên phổ biến hơn. Phương thức lừa đảo bằng chữ ký này cực kỳ tinh vi và khó phòng ngừa, số địa chỉ bị rủi ro cũng sẽ ngày càng nhiều. Hy vọng độc giả có thể nâng cao cảnh giác và chia sẻ thông tin này với nhiều người hơn, cùng nhau bảo vệ an toàn tài sản.