Profundidad del análisis de la trampa Safe: ¿Puede Guard reconstruir la torre de Babel del contrato?
El 21 de febrero de 2025, la industria de las criptomonedas se enfrentó a la crisis de gestión de activos más grave de su historia. Una plataforma de intercambio sufrió un ataque dirigido a su billetera multifirma en cadena, lo que resultó en la pérdida silenciosa de casi 1,5 mil millones de dólares en activos a través de una transacción de "firma legal". Un análisis en cadena posterior mostró que el atacante obtuvo permisos multifirma a través de un ataque de ingeniería social sofisticado, e implantó lógica maliciosa utilizando la función deleGatecall del contrato Safe, finalmente eludiendo el mecanismo de verificación multifirma y transfiriendo los fondos a una dirección anónima.
Este incidente expone una dura realidad: "las múltiples firmas" no son iguales a "la seguridad absoluta". Incluso mecanismos de seguridad como el monedero multi-firma Safe, si carecen de medidas de protección adicionales, todavía presentan el riesgo de ser vulnerados. Este no es el primer caso de ataque dirigido al monedero multi-firma Safe. El año pasado, dos plataformas perdieron 230 millones de dólares y 50 millones de dólares, respectivamente, y ambas sufrieron ataques similares. Los incidentes de ataque al monedero multi-firma Safe muestran la siguiente homogeneidad técnica:
Dependencia excesiva del mecanismo de firma: delegar toda la responsabilidad de seguridad al almacenamiento de la clave privada.
Falta de defensa dinámica: falta de escaneo de riesgos en tiempo real antes de la ejecución de la transacción.
Control de permisos de granulado: no se ha establecido un mecanismo de lista blanca para operaciones de alto riesgo como deleGatecall.
El problema central de esta serie de eventos no radica en el contrato Safe en sí, sino en los riesgos de seguridad en el proceso de integración del sistema en su totalidad, especialmente en la etapa de validación del frontend. Esto nos lleva a reflexionar: ¿Cómo podemos fortalecer la capacidad de protección de las billeteras multifirma a través de mecanismos de medidas de seguridad adicionales de Safe?
Seguro
Safe es una billetera Multi-Sig (, que utiliza múltiples firmas, principalmente para gestionar el almacenamiento seguro y la transferencia de activos de alto valor y criptomonedas. Como infraestructura básica para la gestión descentralizada de activos, garantiza la seguridad de las operaciones de fondos a través de un mecanismo de verificación colaborativa, previniendo que un solo administrador o un hacker aproveche un punto único de fallo para realizar operaciones maliciosas. Se aplica ampliamente en escenarios como la gobernanza de DAO, la custodia de fondos empresariales y los fondos descentralizados. Este contrato fue desarrollado por el equipo de Safe y es la solución estándar de gestión de activos en cadena en la actualidad. El contrato utiliza el estándar EIP-712 para implementar la firma de datos estructurados, mejorando así la seguridad y la verificabilidad de los datos de las transacciones.
) Uso principal
Gestión de la seguridad de fondos: El contrato requiere que varios propietarios predefinidos ###Owners( confirmen conjuntamente la transacción para que se ejecute, lo que previene eficazmente errores de un solo punto o manipulaciones maliciosas, asegurando la seguridad de los fondos.
Ejecución y gestión de transacciones: A través del mecanismo de verificación de múltiples firmas integrado, los contratos pueden ejecutar transferencias externas, invocar otros contratos o manejar lógicas de negocio complejas, siempre que se cumplan las condiciones del umbral de firma, soportando pagos y compensaciones de tarifas tanto para tokens como para monedas nativas.
Expansión modular: el contrato adopta un diseño modular, a través de la herencia y combinación de múltiples módulos de gestión (como OwnerManager, ModuleManager, GuardManager, FallbackManager, etc.), lo que hace que su funcionalidad sea flexible y fácil de expandir, proporcionando soporte personalizado para diferentes escenarios de aplicación.
) Análisis de funciones
La función execTransaction ejecuta transacciones validadas mediante múltiples firmas:
Calcular el hash único de la transacción (combinando parámetros de la transacción, nonce, etc.);
Verificar la validez de todas las firmas, asegurándose de que cada firma provenga de un propietario legítimo o de una dirección previamente aprobada;
Llamar a la lógica de negocio de la dirección objetivo y registrar el estado de éxito o fracaso a través de eventos después de la ejecución de la transacción;
Soporta el manejo flexible de las tarifas de gas, asegurando que se calcule con precisión el costo de la transacción al pagar la compensación.
Las funciones checkContractSignatures y checkNSignatures verifican los datos de firma de transacciones o mensajes:
Manejar por separado las firmas de cuentas EOA, las firmas de contratos ###EIP-1271(, y los hashes preaprobados;
Asegúrese de que las firmas estén ordenadas según el propietario y que cada firma provenga de una dirección válida, para prevenir ataques de reproducción y la alteración de firmas.
La función getTransactionHash genera un hash de transacción, que se utiliza para la verificación de firmas y para prevenir ataques de repetición:
Utilizar el estándar EIP-712 para estructurar el hash de los datos de la transacción;
Utilizar ensamblaje en línea para optimizar las operaciones de memoria y mejorar la eficiencia de cálculo;
Combine el valor nonce actual para garantizar la unicidad de cada transacción.
La función handlePayment maneja el pago de compensación de gas durante el proceso de ejecución de la transacción:
Calcular el monto a pagar según el gas consumido y la tarifa base;
Soporte para pagos en ETH y otros tokens, asegurando que la compensación de costos sea precisa y correcta.
onBeforeExecTransaction es una función de gancho virtual interna que se llama antes de que se ejecute la función execTransaction. El propósito de esta función es permitir que los contratos secundarios que heredan del contrato Safe realicen un procesamiento lógico personalizado antes de la ejecución de la transacción. El conjunto de parámetros recibidos incluye:
a:Dirección objetivo - Dirección del contrato o cuenta que se debe invocar en la transacción
valor:Cantidad de ether enviada con la transacción
data: Carga de datos - Contiene los datos de llamada con el selector de función y los parámetros
operación:tipo de operación - determinar si es CALL o DELEGateCALL
safeTxGas: límite de gas de la transacción - cantidad de gas reservada para la ejecución de la transacción
baseGas: gas base - costo de gas independiente de la ejecución de la transacción
gasPrice: precio del gas - utilizado para calcular el precio del gas de compensación por las tarifas de transacción
gasToken: dirección del token de gas - token utilizado para pagar tarifas de transacción
refundReceiver: receptor de reembolso - dirección que recibe la compensación de la tarifa de transacción
signatures:conjunto de firmas - datos de firma del propietario sobre la transacción
A pesar de que los contratos de billetera multifirma, gracias a su riguroso diseño de seguridad y estructura modular flexible, ofrecen soluciones eficientes y seguras para la gestión de activos digitales, logrando un control de seguridad integral desde la inicialización de la transacción hasta la ejecución final, y se han convertido en una herramienta importante para la gestión de seguridad en blockchain, también es necesario señalar que la mayoría de las víctimas dependen de billeteras de hardware para firmar, y algunos dispositivos de hardware tienen un rendimiento deficiente en la visualización de datos estructurados, lo que puede llevar a los usuarios a no poder identificar con precisión los datos de la transacción en un corto período de tiempo, creando así el riesgo de "firma ciega". Para abordar este fenómeno, además de optimizar el hardware y mejorar la visualización de datos, se pueden explorar medidas como aumentar las confirmaciones múltiples, proporcionar avisos inteligentes y mejorar las herramientas de verificación de firmas, para reducir aún más los riesgos de seguridad que conlleva la firma ciega.
Una importante función de seguridad introducida en la versión 1.3.0 del contrato Safe es el mecanismo Safe Guard. Este mecanismo está diseñado para proporcionar condiciones restrictivas adicionales a los esquemas de firma múltiple estándar n-out-of-m, mejorando aún más la seguridad de las transacciones. El valor central de Safe Guard radica en su capacidad para realizar verificaciones de seguridad en diferentes etapas de la ejecución de las transacciones:
Verificación antes de la transacción )checkTransaction(: El mecanismo Guard puede realizar una verificación programática de todos los parámetros de la transacción antes de su ejecución, asegurando que la transacción cumpla con las reglas de seguridad predefinidas.
Verificar )checkAfterExecution( después de la transacción: tras completar la ejecución de la transacción, Guard también realizará una verificación de seguridad adicional para comprobar si el estado final de la cartera Safe después de la ejecución de la transacción cumple con las expectativas.
) Análisis de Arquitectura
En Safe, las transacciones mult firma generalmente se ejecutan a través de la función execTransaction. En el caso de que Safe Guard esté habilitado, cuando un usuario ejecuta una transacción mult firma, el contrato Safe llamará a la función checkTransaction del contrato Guard para realizar la verificación antes de la transacción, y una vez que la transacción mult firma se haya completado, el contrato Safe llamará a la función checkAfterExecution del contrato Guard para verificar el resultado de la ejecución de la transacción.
Cuando el contrato Safe ejecuta la verificación previa de transacciones multifirma a través del mecanismo Guard, su función checkTransaction recibirá todos los datos contextuales de la transacción, incluyendo la dirección del contrato objetivo, el método de llamada, los datos de ejecución (como deleGatecall), la información de firma del propietario, la configuración de Gas y la información de pago. Este mecanismo permite a los desarrolladores implementar estrategias de control de riesgos multidimensionales, como el control de listas blancas de contratos (limitando las direcciones interactivas), la gestión de permisos a nivel de función (deshabilitando selectores de funciones de alto riesgo), restricciones en la frecuencia de transacciones y reglas dinámicas basadas en el flujo de fondos, entre otras. A través de la configuración adecuada de la estrategia Guard, se puede bloquear eficazmente a los atacantes que intenten realizar ataques desde fuera de la capa del contrato.
En el contexto de los recientes incidentes de seguridad, las partes interesadas están cada vez más preocupadas por la seguridad de los contratos de billetera multifirma. Los proveedores de billeteras de hardware han instado a mejorar la capacidad de análisis y protección del contrato Safe, para prevenir la recurrencia de riesgos similares. Después del incidente en una plataforma de intercambio, muchos proyectos comenzaron a centrarse en el contrato Safe y a explorar soluciones de mejora y expansión basadas en el mecanismo Guard. Entre ellas, hay aplicaciones innovadoras basadas en el mecanismo Guard, que construyen una solución de seguridad en un nivel intermedio sobre la billetera multifirma Safe, proporcionando una garantía de seguridad adicional entre los activos subyacentes y los activos de los usuarios. Su función principal es realizar un chequeo de transacciones de muy alta granularidad al introducir los contratos objetivo, métodos de llamada, datos de ejecución, información de firma del owner, información de pago y datos de gas involucrados en la transacción multifirma Safe en la función checkTransaction, incluyendo el control de acceso a llamadas a contratos de lista blanca, operaciones de funciones de lista blanca, objetivos de transferencia de lista blanca, frecuencia de transacciones, etc.
Es importante señalar que Safe en sí mismo solo proporciona funciones de gestión y devolución de Guard, la lógica de verificación de transacciones multisig es implementada por el usuario, y su seguridad depende de la calidad de la implementación de Guard. Algunas soluciones han ampliado esta idea, configurando un Guardian especializado para cada Vault que especifica las direcciones de destino permitidas y los permisos de operación, logrando así tres elementos clave de control de permisos: especificar contratos permitidos, definir funciones permitidas y requisitos de verificación ACL. Al mismo tiempo, se adopta un mecanismo de gobernanza separado, donde el Vault Guardian es responsable de la ejecución, mientras que el Gobernador controla los permisos de gobernanza, asegurando que incluso si hay un problema con el Guardian, se puedan tomar medidas correctivas de manera oportuna para proteger los activos del usuario. Una filosofía de diseño similar también se aplica en los módulos de seguridad de otros proyectos, interceptando operaciones clave y utilizando un mecanismo de lista blanca para un control detallado de operaciones de alto riesgo como la instalación de módulos, configuración de ganchos y gestión de validadores, asegurando que solo los contratos de confianza puedan ser añadidos al sistema, proporcionando una garantía de seguridad duradera para la billetera.
En la cadena de ataque de eventos de una plataforma de intercambio, si el contrato Safe ha implementado un mecanismo de Guard con una configuración razonable, las llamadas maliciosas deleGatecall iniciadas por el atacante a través de execTransaction serán interceptadas en la fase de prechecado mediante múltiples estrategias: la función checkTransaction de Guard primero identifica el tipo de operación deleGatecall y activa las reglas de desactivación (como limitar obligatoriamente la operación solo a llamadas normales). Luego, al analizar el campo data, detecta direcciones de contrato no convencionales y selectores de funciones de alto riesgo. A través de la lista blanca de contratos y la estrategia de lista negra de funciones preestablecidas, la transacción se revierte directamente, formando finalmente un sistema de defensa de "intercepción de estrategias → bloqueo lógico", que impide completamente la alteración del almacenamiento y la transferencia de fondos.
En general, Safe solo ofrece la función de Guard a partir de la versión 1.3.0. Aunque Guard puede proporcionar un control de transacciones multFirmas extremadamente detallado, los usuarios enfrentan una gran barrera al utilizar la función Guard. Necesitan implementar la lógica de verificación de Guard por su cuenta; una implementación de Guard deficiente o burda puede no ayudar a los usuarios a mejorar la seguridad de su billetera Safe, por lo que es necesario realizar una auditoría de seguridad de la implementación de Guard. No hay duda de que una implementación de Guard segura y adecuada puede mejorar enormemente la seguridad de la billetera Safe.
Conclusiones y perspectivas
Un incidente de ataque a una plataforma de intercambio destaca la importancia de actualizar oportunamente la infraestructura de seguridad. La plataforma utiliza la versión v1.1.1 (<1.3.0) del contrato Safe, lo que significa que no pueden utilizar el mecanismo Guard, una característica de seguridad clave. Si la plataforma actualizara a la versión 1.3.0 o superior del contrato Safe e implementara un mecanismo Guard adecuado, como especificar una dirección de lista blanca única para recibir fondos y realizar una verificación estricta de ACL en las funciones del contrato, podría haber evitado esta pérdida. Aunque esto es solo una suposición, proporciona ideas importantes para la gestión de la seguridad de los activos en el futuro.
El mecanismo Safe Guard es como un sistema de inspección inteligente instalado en una caja fuerte de activos digitales, cuya efectividad depende de la rigurosidad del diseño de las reglas y la calidad de la implementación. Ante métodos de ataque cada vez más sofisticados, necesitamos:
Verificación automatizada: establecer un mecanismo de verificación de transacciones automatizadas
Ajuste dinámico de estrategias: ajuste de la estrategia de seguridad en tiempo real según la inteligencia de amenazas
Defensa en múltiples capas: construir un sistema de defensa profunda combinando varios mecanismos de seguridad
Auditoría continua: auditorías de seguridad regulares para la implementación de Guard
La gestión de activos digitales en el futuro será inteligente.
Esta página puede contener contenido de terceros, que se proporciona únicamente con fines informativos (sin garantías ni declaraciones) y no debe considerarse como un respaldo por parte de Gate a las opiniones expresadas ni como asesoramiento financiero o profesional. Consulte el Descargo de responsabilidad para obtener más detalles.
8 me gusta
Recompensa
8
4
Compartir
Comentar
0/400
MetaverseLandlord
· 07-09 09:40
¿Safe ha sido roto otra vez? No lo entiendo.
Ver originalesResponder0
MEVictim
· 07-09 09:39
Ay, este safe es solo una broma.
Ver originalesResponder0
MechanicalMartel
· 07-09 09:39
Otro agujero en contratos inteligentes 🤔
Ver originalesResponder0
SchrodingerWallet
· 07-09 09:26
tomar a la gente por tonta durante unos años y aún siguen haciendo tonterías
Mecanismo Safe Guard: nueva dirección para reestructurar la arquitectura de seguridad del Monedero multifirma
Profundidad del análisis de la trampa Safe: ¿Puede Guard reconstruir la torre de Babel del contrato?
El 21 de febrero de 2025, la industria de las criptomonedas se enfrentó a la crisis de gestión de activos más grave de su historia. Una plataforma de intercambio sufrió un ataque dirigido a su billetera multifirma en cadena, lo que resultó en la pérdida silenciosa de casi 1,5 mil millones de dólares en activos a través de una transacción de "firma legal". Un análisis en cadena posterior mostró que el atacante obtuvo permisos multifirma a través de un ataque de ingeniería social sofisticado, e implantó lógica maliciosa utilizando la función deleGatecall del contrato Safe, finalmente eludiendo el mecanismo de verificación multifirma y transfiriendo los fondos a una dirección anónima.
Este incidente expone una dura realidad: "las múltiples firmas" no son iguales a "la seguridad absoluta". Incluso mecanismos de seguridad como el monedero multi-firma Safe, si carecen de medidas de protección adicionales, todavía presentan el riesgo de ser vulnerados. Este no es el primer caso de ataque dirigido al monedero multi-firma Safe. El año pasado, dos plataformas perdieron 230 millones de dólares y 50 millones de dólares, respectivamente, y ambas sufrieron ataques similares. Los incidentes de ataque al monedero multi-firma Safe muestran la siguiente homogeneidad técnica:
El problema central de esta serie de eventos no radica en el contrato Safe en sí, sino en los riesgos de seguridad en el proceso de integración del sistema en su totalidad, especialmente en la etapa de validación del frontend. Esto nos lleva a reflexionar: ¿Cómo podemos fortalecer la capacidad de protección de las billeteras multifirma a través de mecanismos de medidas de seguridad adicionales de Safe?
Seguro
Safe es una billetera Multi-Sig (, que utiliza múltiples firmas, principalmente para gestionar el almacenamiento seguro y la transferencia de activos de alto valor y criptomonedas. Como infraestructura básica para la gestión descentralizada de activos, garantiza la seguridad de las operaciones de fondos a través de un mecanismo de verificación colaborativa, previniendo que un solo administrador o un hacker aproveche un punto único de fallo para realizar operaciones maliciosas. Se aplica ampliamente en escenarios como la gobernanza de DAO, la custodia de fondos empresariales y los fondos descentralizados. Este contrato fue desarrollado por el equipo de Safe y es la solución estándar de gestión de activos en cadena en la actualidad. El contrato utiliza el estándar EIP-712 para implementar la firma de datos estructurados, mejorando así la seguridad y la verificabilidad de los datos de las transacciones.
) Uso principal
) Análisis de funciones
La función execTransaction ejecuta transacciones validadas mediante múltiples firmas:
Las funciones checkContractSignatures y checkNSignatures verifican los datos de firma de transacciones o mensajes:
La función getTransactionHash genera un hash de transacción, que se utiliza para la verificación de firmas y para prevenir ataques de repetición:
La función handlePayment maneja el pago de compensación de gas durante el proceso de ejecución de la transacción:
onBeforeExecTransaction es una función de gancho virtual interna que se llama antes de que se ejecute la función execTransaction. El propósito de esta función es permitir que los contratos secundarios que heredan del contrato Safe realicen un procesamiento lógico personalizado antes de la ejecución de la transacción. El conjunto de parámetros recibidos incluye:
A pesar de que los contratos de billetera multifirma, gracias a su riguroso diseño de seguridad y estructura modular flexible, ofrecen soluciones eficientes y seguras para la gestión de activos digitales, logrando un control de seguridad integral desde la inicialización de la transacción hasta la ejecución final, y se han convertido en una herramienta importante para la gestión de seguridad en blockchain, también es necesario señalar que la mayoría de las víctimas dependen de billeteras de hardware para firmar, y algunos dispositivos de hardware tienen un rendimiento deficiente en la visualización de datos estructurados, lo que puede llevar a los usuarios a no poder identificar con precisión los datos de la transacción en un corto período de tiempo, creando así el riesgo de "firma ciega". Para abordar este fenómeno, además de optimizar el hardware y mejorar la visualización de datos, se pueden explorar medidas como aumentar las confirmaciones múltiples, proporcionar avisos inteligentes y mejorar las herramientas de verificación de firmas, para reducir aún más los riesgos de seguridad que conlleva la firma ciega.
![Profundidad解析Safe困局:Guard 能否重构契约巴别塔?])https://img-cdn.gateio.im/webp-social/moments-e4f0b0daf2f48ba716dc7fdddcfdabec.webp(
Safe Guard
Una importante función de seguridad introducida en la versión 1.3.0 del contrato Safe es el mecanismo Safe Guard. Este mecanismo está diseñado para proporcionar condiciones restrictivas adicionales a los esquemas de firma múltiple estándar n-out-of-m, mejorando aún más la seguridad de las transacciones. El valor central de Safe Guard radica en su capacidad para realizar verificaciones de seguridad en diferentes etapas de la ejecución de las transacciones:
) Análisis de Arquitectura
En Safe, las transacciones mult firma generalmente se ejecutan a través de la función execTransaction. En el caso de que Safe Guard esté habilitado, cuando un usuario ejecuta una transacción mult firma, el contrato Safe llamará a la función checkTransaction del contrato Guard para realizar la verificación antes de la transacción, y una vez que la transacción mult firma se haya completado, el contrato Safe llamará a la función checkAfterExecution del contrato Guard para verificar el resultado de la ejecución de la transacción.
Cuando el contrato Safe ejecuta la verificación previa de transacciones multifirma a través del mecanismo Guard, su función checkTransaction recibirá todos los datos contextuales de la transacción, incluyendo la dirección del contrato objetivo, el método de llamada, los datos de ejecución (como deleGatecall), la información de firma del propietario, la configuración de Gas y la información de pago. Este mecanismo permite a los desarrolladores implementar estrategias de control de riesgos multidimensionales, como el control de listas blancas de contratos (limitando las direcciones interactivas), la gestión de permisos a nivel de función (deshabilitando selectores de funciones de alto riesgo), restricciones en la frecuencia de transacciones y reglas dinámicas basadas en el flujo de fondos, entre otras. A través de la configuración adecuada de la estrategia Guard, se puede bloquear eficazmente a los atacantes que intenten realizar ataques desde fuera de la capa del contrato.
En el contexto de los recientes incidentes de seguridad, las partes interesadas están cada vez más preocupadas por la seguridad de los contratos de billetera multifirma. Los proveedores de billeteras de hardware han instado a mejorar la capacidad de análisis y protección del contrato Safe, para prevenir la recurrencia de riesgos similares. Después del incidente en una plataforma de intercambio, muchos proyectos comenzaron a centrarse en el contrato Safe y a explorar soluciones de mejora y expansión basadas en el mecanismo Guard. Entre ellas, hay aplicaciones innovadoras basadas en el mecanismo Guard, que construyen una solución de seguridad en un nivel intermedio sobre la billetera multifirma Safe, proporcionando una garantía de seguridad adicional entre los activos subyacentes y los activos de los usuarios. Su función principal es realizar un chequeo de transacciones de muy alta granularidad al introducir los contratos objetivo, métodos de llamada, datos de ejecución, información de firma del owner, información de pago y datos de gas involucrados en la transacción multifirma Safe en la función checkTransaction, incluyendo el control de acceso a llamadas a contratos de lista blanca, operaciones de funciones de lista blanca, objetivos de transferencia de lista blanca, frecuencia de transacciones, etc.
Es importante señalar que Safe en sí mismo solo proporciona funciones de gestión y devolución de Guard, la lógica de verificación de transacciones multisig es implementada por el usuario, y su seguridad depende de la calidad de la implementación de Guard. Algunas soluciones han ampliado esta idea, configurando un Guardian especializado para cada Vault que especifica las direcciones de destino permitidas y los permisos de operación, logrando así tres elementos clave de control de permisos: especificar contratos permitidos, definir funciones permitidas y requisitos de verificación ACL. Al mismo tiempo, se adopta un mecanismo de gobernanza separado, donde el Vault Guardian es responsable de la ejecución, mientras que el Gobernador controla los permisos de gobernanza, asegurando que incluso si hay un problema con el Guardian, se puedan tomar medidas correctivas de manera oportuna para proteger los activos del usuario. Una filosofía de diseño similar también se aplica en los módulos de seguridad de otros proyectos, interceptando operaciones clave y utilizando un mecanismo de lista blanca para un control detallado de operaciones de alto riesgo como la instalación de módulos, configuración de ganchos y gestión de validadores, asegurando que solo los contratos de confianza puedan ser añadidos al sistema, proporcionando una garantía de seguridad duradera para la billetera.
En la cadena de ataque de eventos de una plataforma de intercambio, si el contrato Safe ha implementado un mecanismo de Guard con una configuración razonable, las llamadas maliciosas deleGatecall iniciadas por el atacante a través de execTransaction serán interceptadas en la fase de prechecado mediante múltiples estrategias: la función checkTransaction de Guard primero identifica el tipo de operación deleGatecall y activa las reglas de desactivación (como limitar obligatoriamente la operación solo a llamadas normales). Luego, al analizar el campo data, detecta direcciones de contrato no convencionales y selectores de funciones de alto riesgo. A través de la lista blanca de contratos y la estrategia de lista negra de funciones preestablecidas, la transacción se revierte directamente, formando finalmente un sistema de defensa de "intercepción de estrategias → bloqueo lógico", que impide completamente la alteración del almacenamiento y la transferencia de fondos.
![Profundidad解析Safe困局:Guard 能否重构契约巴别塔?]###https://img-cdn.gateio.im/webp-social/moments-4947f64f2aa4163ee644b6f8e911c6f8.webp(
En general, Safe solo ofrece la función de Guard a partir de la versión 1.3.0. Aunque Guard puede proporcionar un control de transacciones multFirmas extremadamente detallado, los usuarios enfrentan una gran barrera al utilizar la función Guard. Necesitan implementar la lógica de verificación de Guard por su cuenta; una implementación de Guard deficiente o burda puede no ayudar a los usuarios a mejorar la seguridad de su billetera Safe, por lo que es necesario realizar una auditoría de seguridad de la implementación de Guard. No hay duda de que una implementación de Guard segura y adecuada puede mejorar enormemente la seguridad de la billetera Safe.
Conclusiones y perspectivas
Un incidente de ataque a una plataforma de intercambio destaca la importancia de actualizar oportunamente la infraestructura de seguridad. La plataforma utiliza la versión v1.1.1 (<1.3.0) del contrato Safe, lo que significa que no pueden utilizar el mecanismo Guard, una característica de seguridad clave. Si la plataforma actualizara a la versión 1.3.0 o superior del contrato Safe e implementara un mecanismo Guard adecuado, como especificar una dirección de lista blanca única para recibir fondos y realizar una verificación estricta de ACL en las funciones del contrato, podría haber evitado esta pérdida. Aunque esto es solo una suposición, proporciona ideas importantes para la gestión de la seguridad de los activos en el futuro.
El mecanismo Safe Guard es como un sistema de inspección inteligente instalado en una caja fuerte de activos digitales, cuya efectividad depende de la rigurosidad del diseño de las reglas y la calidad de la implementación. Ante métodos de ataque cada vez más sofisticados, necesitamos:
La gestión de activos digitales en el futuro será inteligente.