Método de phishing de firma Permit2 para novatos, se debe tener en cuenta el riesgo de seguridad del activo.

robot
Generación de resúmenes en curso

Revelando el Lavado de ojos de la firma Permit2 de Uniswap

Los hackers son una presencia temida en el ecosistema Web3. Para los desarrolladores de proyectos, el código abierto los hace sentir nerviosos, temiendo que una línea de código errónea deje una vulnerabilidad. Para los usuarios individuales, cada interacción o firma en la cadena puede resultar en el robo de activos. Por lo tanto, los problemas de seguridad han sido uno de los puntos críticos en el mundo de las criptomonedas. Debido a las características de la blockchain, los activos robados son prácticamente imposibles de recuperar, por lo que tener conocimientos de seguridad es especialmente importante.

Recientemente, un investigador ha descubierto un nuevo método de phishing que, con solo una firma, podría llevar al robo de activos. Este método es extremadamente sigiloso y difícil de prevenir, y cualquier dirección que haya interactuado con alguna plataforma de intercambio podría estar en riesgo. Este artículo tiene como objetivo divulgar este método de phishing por firma para tratar de evitar más pérdidas de activos.

desarrollo del evento

Recientemente, un amigo (, Xiao A ), sufrió el robo de activos en su billetera. A diferencia de los métodos de robo comunes, Xiao A no reveló su clave privada ni interactuó con contratos de sitios de phishing.

El explorador de blockchain muestra que el USDT en la billetera de Xiao A fue transferido mediante la función Transfer From. Esto significa que fue otra dirección la que realizó la operación para mover el Token, y no una filtración de la clave privada de la billetera.

¿Firma y te roban? Revelando el Lavado de ojos de la firma Permit2 de Uniswap

Los detalles de la transacción revelan pistas clave:

  • Una dirección trasladará los activos de Xiao A a otra dirección
  • Esta operación interactúa con el contrato Permit2 de una plataforma de intercambio.

El problema es, ¿cómo obtuvo este dirección el permiso de activos? ¿Por qué está relacionado con alguna plataforma de intercambio?

Para llamar a la función Transfer From, el llamador necesita tener el permiso de cantidad del Token (approve). Antes de transferir los activos de A, también se realizó una operación de Permit, ambas operaciones interactúan con el contrato Permit2 de una plataforma de intercambio.

¿Firmar significa ser robado? Revelando la Lavado de ojos de firma de Uniswap Permit2

Permit2 es un nuevo contrato lanzado a finales de 2022 por una plataforma de intercambio, que permite la autorización de tokens para compartir la gestión entre diferentes aplicaciones, con el objetivo de crear una experiencia de usuario más unificada, rentable y segura. A medida que más proyectos se integren, se espera que Permit2 logre la estandarización de la aprobación de tokens en todas las aplicaciones, reduciendo los costos de transacción y mejorando la seguridad de los contratos inteligentes.

El lanzamiento de Permit2 podría cambiar las reglas del ecosistema Dapp. De manera tradicional, los usuarios deben autorizar cada interacción con Dapp, mientras que Permit2 puede omitir este paso, reduciendo efectivamente el costo de interacción del usuario. Permit2 actúa como intermediario entre el usuario y Dapp, permitiendo que el usuario solo autorice al contrato de Permit2, y todos los Dapp que integren este contrato pueden compartir el límite de autorización.

¿Firma y te roban? Revelando el Lavado de ojos de la firma Permit2 de Uniswap

Sin embargo, esto también es una espada de doble filo. Permit2 convierte las operaciones del usuario en firmas fuera de la cadena, y todas las operaciones en la cadena son realizadas por un rol intermedio. Esto permite que incluso si la billetera del usuario no tiene ETH, se puedan usar otros tokens para pagar las tarifas de Gas o ser reembolsadas por el rol intermedio. Pero la firma fuera de la cadena también es el aspecto que los usuarios más tienden a pasar por alto, la mayoría de las personas no revisará cuidadosamente el contenido de la firma.

Para utilizar esta técnica de phishing, el requisito clave es que la billetera objetivo debe haber autorizado el Token al contrato Permit2. Actualmente, siempre que se realice un Swap en una Dapp que integre Permit2 o en alguna plataforma de intercambio, se debe autorizar al contrato Permit2.

Lo más aterrador es que, independientemente de la cantidad de Swap, el contrato Permit2 siempre autorizará por defecto al usuario a utilizar el saldo total de ese Token. Aunque la billetera mostrará un aviso para ingresar una cantidad personalizada, la mayoría de las personas probablemente elegirán directamente el máximo o el valor predeterminado, y el valor predeterminado de Permit2 es un límite infinito.

¿Firmar te hace ser víctima de robo? Revelando el Lavado de ojos de la firma de Uniswap Permit2

Esto significa que, siempre que haya habido alguna interacción con una plataforma de intercambio después de 2023 y se haya autorizado al contrato Permit2, podría enfrentarse al riesgo de este Lavado de ojos.

El enfoque está en la función Permit, que puede transferir el límite de Token autorizado por el usuario al contrato Permit2 a otras direcciones. Un hacker solo necesita obtener la firma del usuario para obtener los permisos de Token en la billetera del usuario y transferir activos.

Análisis detallado del evento

La función Permit permite a los usuarios firmar anticipadamente un "contrato", permitiendo a otros (spender) utilizar una cantidad determinada de tokens en el futuro. El usuario debe proporcionar una firma que demuestre la autenticidad del "contrato".

Flujo de trabajo de la función:

  1. Verifica si la hora actual ha superado el período de validez de la firma
  2. Verificar la autenticidad de la firma
  3. Si la verificación es exitosa, se actualizará el registro para permitir a otros usar el token.

¿Firma y te roban? Revelando la estafa de phishing de la firma de Uniswap Permit2

El enfoque está en la función verify y la función _updateApproval.

La función verify obtiene los tres datos v, r, s de la información de la firma, utilizados para recuperar la dirección de la firma de la transacción. El contrato compara la dirección recuperada con la dirección del propietario del token proporcionada, y si son iguales, la verificación se considera exitosa.

¿Tu firma fue robada? Revelamos el Lavado de ojos de la firma de Uniswap Permit2

La función _updateApproval actualiza el valor de autorización después de la verificación de firma, lo que significa que se ha producido una transferencia de derechos. En este momento, la parte autorizada puede llamar a la función transferfrom para transferir tokens a la dirección especificada.

¿Firmar y ser robado? Revelando el Lavado de ojos de la firma de Uniswap Permit2

Transacciones reales en la cadena mostradas:

  • owner es la dirección de la billetera de Xiao A
  • Los detalles incluyen la dirección del contrato del token autorizado y la cantidad, entre otra información.
  • Spender es la dirección del hacker
  • sigDeadline es el tiempo de validez de la firma, signature es la información de la firma de Xiao A.

¿Firmar y ser robado? Revelando el Lavado de ojos de la firma de Uniswap Permit2

Al revisar el registro de interacción de Xiao A, se descubrió que anteriormente, al usar una cierta plataforma de intercambio, hizo clic en el límite de autorización predeterminado, es decir, un límite casi ilimitado.

¿El robo ocurre al firmar? Revelando el Lavado de ojos de la firma de Uniswap Permit2

Revisión sencilla: A A le había otorgado previamente un límite ilimitado de USDT a Permit2, pero luego cayó accidentalmente en una trampa de phishing diseñada por hackers. Una vez que los hackers obtuvieron la firma, realizaron operaciones de Permiso y Transferir desde en el contrato de Permit2, trasladando los activos de A. Actualmente, el contrato de Permit2 parece haberse convertido en un paraíso de phishing, y este tipo de phishing comenzó a ser activo hace aproximadamente dos meses.

¿Cómo prevenirlo?

Considerando que el contrato Permit2 podría volverse más común en el futuro, más proyectos o integraciones realizarán autorizaciones compartidas. Los medios efectivos de prevención incluyen:

  1. Entender e identificar el contenido de la firma: El formato de firma Permit generalmente incluye información clave como Owner, Spender, value, nonce y deadline. Para disfrutar de la conveniencia de Permit2, es necesario aprender a reconocer este tipo de formato de firma. Usar un complemento de seguridad es una buena opción.

¿Te robaron al firmar? Revelando el lavado de ojos de la firma de Uniswap Permit2

  1. Separación de la billetera de activos y la billetera de interacción: Se recomienda almacenar una gran cantidad de activos en una billetera fría, y mantener solo una pequeña cantidad de fondos en la billetera de interacción en la cadena, lo que puede reducir significativamente las pérdidas en caso de un Lavado de ojos.

  2. Limitar el monto de autorización o cancelar la autorización: Al realizar un intercambio en una plataforma de comercio, solo autorice el monto necesario para la interacción. Aunque la necesidad de autorizar de nuevo cada interacción aumentará los costos, se puede evitar el riesgo de phishing de firmas de Permit2. Los usuarios autorizados pueden revocar la autorización a través de un complemento de seguridad.

¿Firmar y ser robado? Revelando el Lavado de ojos de la firma Permit2 de Uniswap

  1. Identificar la naturaleza del token, prestar atención a si soporta la función de permiso: En el futuro, podría haber más tokens ERC20 que implementen la función de permiso. Debe prestar atención a si los tokens que posee son compatibles; si es así, las operaciones de transacción deben realizarse con especial precaución y revisar estrictamente cada firma desconocida.

  2. Si después de ser víctima de un Lavado de ojos, se tienen tokens almacenados en otras plataformas, se debe elaborar un plan de rescate completo: Si se descubre un Lavado de ojos pero aún hay tokens a través de la participación u otros métodos en otras plataformas, se debe tener cuidado al extraer y transferir. Los hackers pueden monitorear el saldo de la dirección en cualquier momento, y si aparece algún token, podría ser transferido. Se debe establecer un proceso de rescate completo; la extracción y la transferencia deben ejecutarse simultáneamente, se puede utilizar la transferencia MEV o buscar la asistencia de un equipo de seguridad profesional.

El phishing basado en Permit2 podría aumentar en el futuro, y este método es extremadamente sigiloso y difícil de prevenir. A medida que se amplía el alcance de la aplicación de Permit2, también aumentarán las direcciones expuestas al riesgo. Espero que los lectores, después de ver este artículo, lo compartan con más personas para evitar que más personas sufran pérdidas.

Ver originales
This page may contain third-party content, which is provided for information purposes only (not representations/warranties) and should not be considered as an endorsement of its views by Gate, nor as financial or professional advice. See Disclaimer for details.
  • Recompensa
  • 7
  • Compartir
Comentar
0/400
InfraVibesvip
· hace10h
Echa un vistazo antes de firmar, ¿entiendes?
Ver originalesResponder0
MetaverseMigrantvip
· hace10h
Otra vez con algo nuevo, este hacker es realmente talentoso.
Ver originalesResponder0
RektButAlivevip
· hace10h
Diariamente estamos siguiendo las últimas vulnerabilidades~
Ver originalesResponder0
StablecoinEnjoyervip
· hace10h
Otra nueva trampa, novato ten cuidado al firmar
Ver originalesResponder0
NftBankruptcyClubvip
· hace10h
¿Cuántos han caído en la trampa nuevamente?
Ver originalesResponder0
P2ENotWorkingvip
· hace10h
Otra vez hay nuevos tontos que van a tomar a la gente por tonta.
Ver originalesResponder0
ValidatorVikingvip
· hace10h
maldita sea, los novatos nunca aprenden a verificar firmas... volviendo a lo básico por favor
Ver originalesResponder0
  • Anclado
Opere con criptomonedas en cualquier momento y lugar
qrCode
Escanee para descargar la aplicación Gate
Comunidad
Español
  • 简体中文
  • English
  • Tiếng Việt
  • 繁體中文
  • Español
  • Русский
  • Français (Afrique)
  • Português (Portugal)
  • Bahasa Indonesia
  • 日本語
  • بالعربية
  • Українська
  • Português (Brasil)