Analyse des vulnérabilités du portefeuille à signatures multiples Safe : le mécanisme Guard peut-il reconstruire la ligne de défense de la sécurité des smart contracts
Depth analyse des risques de sécurité des multisignatures : Guard peut-il redéfinir la ligne de défense de la sécurité des smart contracts ?
Le 21 février 2025, l'industrie des crypto-monnaies a été confrontée à une grave crise de gestion d'actifs. Le portefeuille multisignature en chaîne d'une plateforme d'échange a été précisément compromis, entraînant la perte silencieuse de près de 1,5 milliard de dollars d'actifs par une transaction "légitime" signée. Les analyses ultérieures ont montré que l'attaquant avait obtenu les autorisations multisignature par des moyens complexes d'ingénierie sociale, en utilisant la fonction deleGatecall du contrat Safe pour implanter une logique malveillante, contournant ainsi le mécanisme de vérification multisignature et transférant les fonds vers une adresse anonyme.
Cet événement révèle une réalité cruelle : "multisignature" n'est pas synonyme de "sécurité absolue". Même un mécanisme de sécurité tel que le portefeuille Safe multi-signatures, s'il manque de mesures de protection supplémentaires, reste exposé au risque d'être compromis. Ce n'est pas le premier cas d'attaque contre le portefeuille Safe multi-signatures. L'année dernière, deux attaques similaires ont déjà eu lieu, causant des pertes de plusieurs millions de dollars.
L'analyse montre que les incidents d'attaque des portefeuilles multisignature Safe présentent les mêmes origines techniques suivantes :
Dépendance excessive au mécanisme de signature : confier l'intégralité de la responsabilité de sécurité à la gestion de la clé privée.
Défense dynamique manquante : absence de scan de risque en temps réel avant l'exécution des transactions.
Contrôle d'accès grossier : aucune mise en place d'un mécanisme de liste blanche pour des opérations à haut risque telles que deleGatecall.
La question centrale de cette série d'événements ne réside pas dans le contrat Safe lui-même, mais dans les risques de sécurité tout au long du processus d'intégration du système, en particulier lors de la validation en front-end. Cela nous pousse à réfléchir : comment renforcer la capacité de protection des portefeuilles multisignature grâce aux mesures de sécurité supplémentaires du Safe ?
Aperçu de Safe
Safe est un portefeuille multisignature, principalement utilisé pour la gestion du stockage et du transfert sécurisé d'actifs de grande valeur et de monnaies numériques. En tant qu'infrastructure de gestion d'actifs décentralisée, il assure la sécurité des opérations financières grâce à un mécanisme de validation collaborative impliquant plusieurs parties, empêchant ainsi un administrateur unique ou un hacker d'exploiter une défaillance unique pour effectuer des opérations malveillantes. Il est largement utilisé dans des scénarios tels que la gouvernance DAO, la garde des fonds d'entreprise et les pools de fonds décentralisés.
usage principal
Gestion de la sécurité des fonds : les contrats exigent que plusieurs propriétaires prédéfinis confirment ensemble la transaction avant son exécution, ce qui empêche efficacement les erreurs uniques ou les actions malveillantes.
Exécution et gestion des transactions : Grâce au mécanisme de validation multisignature intégré, le contrat peut exécuter des transferts externes, appeler d'autres contrats ou traiter des logiques commerciales complexes, sous réserve de respecter les conditions de seuil de signature.
Extension modulaire : les contrats adoptent une conception modulaire, permettant d'hériter et de combiner plusieurs modules de gestion, rendant les fonctionnalités flexibles et faciles à étendre, offrant un support personnalisé pour différents cas d'utilisation.
fonction clé
execTransaction : exécuter une transaction validée par une multisignature.
checkContractSignatures & checkNSignatures : vérifier les données de signature d'une transaction ou d'un message.
getTransactionHash : génère un hash de transaction, utilisé pour la vérification de signature et pour prévenir les attaques par répétition.
handlePayment : traitement du paiement de compensation gas lors de l'exécution de la transaction.
onBeforeExecTransaction : fonction de crochet virtuelle interne, permettant aux sous-contrats d'effectuer un traitement logique personnalisé avant l'exécution de la transaction.
Bien que les contrats de portefeuille multisignature offrent une solution de gestion d'actifs numériques efficace et sécurisée, il convient de noter que certains appareils matériels affichent mal la signature des données structurées, ce qui peut amener les utilisateurs à ne pas reconnaître avec précision les données de transaction et présente un risque de "signature à l'aveugle". Pour réduire ce risque de sécurité, il est possible d'envisager d'optimiser le matériel et l'affichage des données, tout en explorant l'ajout de confirmations multiples, d'alertes intelligentes et d'outils de vérification des signatures renforcés.
Mécanisme de Safe Guard
Le contrat Safe a introduit une fonctionnalité de sécurité importante dans la version 1.3.0 - le mécanisme Safe Guard. Ce mécanisme vise à fournir des conditions supplémentaires aux solutions multisignature standard n-out-of-m, renforçant ainsi la sécurité des transactions. La valeur fondamentale de Safe Guard réside dans sa capacité à effectuer des vérifications de sécurité à différentes étapes de l'exécution des transactions :
Vérifiez (checkTransaction) avant la transaction : avant l'exécution de la transaction, effectuez une vérification programmatique de tous les paramètres de la transaction pour vous assurer qu'elle respecte les règles de sécurité prédéfinies.
Vérifiez (checkAfterExecution) après la transaction : après l'exécution de la transaction, effectuez une vérification de sécurité supplémentaire pour vérifier si l'état final du portefeuille Safe après l'exécution de la transaction est conforme aux attentes.
analyse d'architecture
Dans le cas où le Safe Guard est activé, lorsque l'utilisateur exécute une transaction multisignature, le contrat Safe appellera la fonction checkTransaction du contrat Guard pour effectuer une vérification avant la transaction, et une fois la transaction multisignature exécutée, le contrat Safe appellera la fonction checkAfterExecution du contrat Guard pour vérifier le résultat de l'exécution de la transaction.
Le mécanisme Safe Guard permet aux développeurs de mettre en œuvre des stratégies de gestion des risques multidimensionnelles, telles que le contrôle des listes blanches de contrats, la gestion des autorisations au niveau des fonctions, la limitation de la fréquence des transactions et les règles dynamiques basées sur le flux de fonds, etc. En configurant raisonnablement les stratégies Guard, il est possible de bloquer efficacement les attaquants utilisant des attaques en dehors du niveau des contrats.
Récemment, plusieurs fournisseurs de portefeuilles matériels ont appelé à renforcer les capacités d'analyse et de protection des contrats Safe. Certains projets commencent à explorer des solutions de mise à niveau et d'extension basées sur le mécanisme Guard, construisant des solutions de sécurité de couche intermédiaire établies sur les portefeuilles multisignature Safe, afin de fournir une protection supplémentaire entre les actifs sous-jacents et les actifs des utilisateurs.
Il est important de noter que Safe lui-même n'offre que des fonctionnalités de gestion de Guard et de rappel, la logique de vérification des transactions multisignature doit être mise en œuvre par l'utilisateur lui-même, et sa sécurité dépend de la qualité de l'implémentation de Guard. Certaines applications innovantes, telles que Solv Guardian et le SecurityControlModule d'Elytro, ont élargi cette idée en réalisant un contrôle d'accès et une gestion de la sécurité plus granulaires.
Conclusion et perspectives
Les récentes attaques ont mis en évidence l'importance de mettre à jour rapidement les infrastructures de sécurité. Si les plateformes affectées avaient utilisé une version mise à jour des contrats intelligents et mis en œuvre un mécanisme de protection approprié, elles auraient pu éviter des pertes énormes. Cela fournit une réflexion importante pour la gestion de la sécurité des actifs à l'avenir.
Le mécanisme Safe Guard fonctionne comme un système de sécurité intelligent installé dans un coffre-fort pour les actifs numériques, dont l'efficacité dépend de la rigueur de la conception des règles et de la qualité de la mise en œuvre. Face à des méthodes d'attaque de plus en plus sophistiquées, nous avons besoin de :
Validation automatisée : établir un mécanisme de validation des transactions automatisé
Ajustement dynamique des stratégies : ajustement en temps réel des stratégies de sécurité en fonction des informations sur les menaces
Défense en profondeur : construire un système de défense en profondeur en combinant plusieurs mécanismes de sécurité
Audit continu : Audit de sécurité régulier de la mise en œuvre de Guard
La gestion des actifs numériques à l'avenir sera un processus d'évolution conjointe entre les mécanismes de sécurité des smart contracts et l'évolution continue de l'attaque et de la défense. Ce n'est qu'en intégrant l'idée de sécurité à chaque étape que l'on pourra construire de véritables barrières de sécurité dans le jeu entre la "lance" des hackers et le "bouclier" des protecteurs.
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.
11 J'aime
Récompense
11
3
Partager
Commentaire
0/400
AirdropHarvester
· Il y a 21h
Est-ce si difficile de conserver en toute sécurité ?
Voir l'originalRépondre0
Whale_Whisperer
· Il y a 21h
La multi-signature n'est pas si sûre, c'est moins sûr qu'un Cold Wallet.
Voir l'originalRépondre0
MoneyBurnerSociety
· Il y a 21h
Je suis étourdi, encore un piège de sécurité divin. Mon portefeuille est déjà vide.
Analyse des vulnérabilités du portefeuille à signatures multiples Safe : le mécanisme Guard peut-il reconstruire la ligne de défense de la sécurité des smart contracts
Depth analyse des risques de sécurité des multisignatures : Guard peut-il redéfinir la ligne de défense de la sécurité des smart contracts ?
Le 21 février 2025, l'industrie des crypto-monnaies a été confrontée à une grave crise de gestion d'actifs. Le portefeuille multisignature en chaîne d'une plateforme d'échange a été précisément compromis, entraînant la perte silencieuse de près de 1,5 milliard de dollars d'actifs par une transaction "légitime" signée. Les analyses ultérieures ont montré que l'attaquant avait obtenu les autorisations multisignature par des moyens complexes d'ingénierie sociale, en utilisant la fonction deleGatecall du contrat Safe pour implanter une logique malveillante, contournant ainsi le mécanisme de vérification multisignature et transférant les fonds vers une adresse anonyme.
Cet événement révèle une réalité cruelle : "multisignature" n'est pas synonyme de "sécurité absolue". Même un mécanisme de sécurité tel que le portefeuille Safe multi-signatures, s'il manque de mesures de protection supplémentaires, reste exposé au risque d'être compromis. Ce n'est pas le premier cas d'attaque contre le portefeuille Safe multi-signatures. L'année dernière, deux attaques similaires ont déjà eu lieu, causant des pertes de plusieurs millions de dollars.
L'analyse montre que les incidents d'attaque des portefeuilles multisignature Safe présentent les mêmes origines techniques suivantes :
La question centrale de cette série d'événements ne réside pas dans le contrat Safe lui-même, mais dans les risques de sécurité tout au long du processus d'intégration du système, en particulier lors de la validation en front-end. Cela nous pousse à réfléchir : comment renforcer la capacité de protection des portefeuilles multisignature grâce aux mesures de sécurité supplémentaires du Safe ?
Aperçu de Safe
Safe est un portefeuille multisignature, principalement utilisé pour la gestion du stockage et du transfert sécurisé d'actifs de grande valeur et de monnaies numériques. En tant qu'infrastructure de gestion d'actifs décentralisée, il assure la sécurité des opérations financières grâce à un mécanisme de validation collaborative impliquant plusieurs parties, empêchant ainsi un administrateur unique ou un hacker d'exploiter une défaillance unique pour effectuer des opérations malveillantes. Il est largement utilisé dans des scénarios tels que la gouvernance DAO, la garde des fonds d'entreprise et les pools de fonds décentralisés.
usage principal
Gestion de la sécurité des fonds : les contrats exigent que plusieurs propriétaires prédéfinis confirment ensemble la transaction avant son exécution, ce qui empêche efficacement les erreurs uniques ou les actions malveillantes.
Exécution et gestion des transactions : Grâce au mécanisme de validation multisignature intégré, le contrat peut exécuter des transferts externes, appeler d'autres contrats ou traiter des logiques commerciales complexes, sous réserve de respecter les conditions de seuil de signature.
Extension modulaire : les contrats adoptent une conception modulaire, permettant d'hériter et de combiner plusieurs modules de gestion, rendant les fonctionnalités flexibles et faciles à étendre, offrant un support personnalisé pour différents cas d'utilisation.
fonction clé
execTransaction : exécuter une transaction validée par une multisignature.
checkContractSignatures & checkNSignatures : vérifier les données de signature d'une transaction ou d'un message.
getTransactionHash : génère un hash de transaction, utilisé pour la vérification de signature et pour prévenir les attaques par répétition.
handlePayment : traitement du paiement de compensation gas lors de l'exécution de la transaction.
onBeforeExecTransaction : fonction de crochet virtuelle interne, permettant aux sous-contrats d'effectuer un traitement logique personnalisé avant l'exécution de la transaction.
Bien que les contrats de portefeuille multisignature offrent une solution de gestion d'actifs numériques efficace et sécurisée, il convient de noter que certains appareils matériels affichent mal la signature des données structurées, ce qui peut amener les utilisateurs à ne pas reconnaître avec précision les données de transaction et présente un risque de "signature à l'aveugle". Pour réduire ce risque de sécurité, il est possible d'envisager d'optimiser le matériel et l'affichage des données, tout en explorant l'ajout de confirmations multiples, d'alertes intelligentes et d'outils de vérification des signatures renforcés.
Mécanisme de Safe Guard
Le contrat Safe a introduit une fonctionnalité de sécurité importante dans la version 1.3.0 - le mécanisme Safe Guard. Ce mécanisme vise à fournir des conditions supplémentaires aux solutions multisignature standard n-out-of-m, renforçant ainsi la sécurité des transactions. La valeur fondamentale de Safe Guard réside dans sa capacité à effectuer des vérifications de sécurité à différentes étapes de l'exécution des transactions :
Vérifiez (checkTransaction) avant la transaction : avant l'exécution de la transaction, effectuez une vérification programmatique de tous les paramètres de la transaction pour vous assurer qu'elle respecte les règles de sécurité prédéfinies.
Vérifiez (checkAfterExecution) après la transaction : après l'exécution de la transaction, effectuez une vérification de sécurité supplémentaire pour vérifier si l'état final du portefeuille Safe après l'exécution de la transaction est conforme aux attentes.
analyse d'architecture
Dans le cas où le Safe Guard est activé, lorsque l'utilisateur exécute une transaction multisignature, le contrat Safe appellera la fonction checkTransaction du contrat Guard pour effectuer une vérification avant la transaction, et une fois la transaction multisignature exécutée, le contrat Safe appellera la fonction checkAfterExecution du contrat Guard pour vérifier le résultat de l'exécution de la transaction.
Le mécanisme Safe Guard permet aux développeurs de mettre en œuvre des stratégies de gestion des risques multidimensionnelles, telles que le contrôle des listes blanches de contrats, la gestion des autorisations au niveau des fonctions, la limitation de la fréquence des transactions et les règles dynamiques basées sur le flux de fonds, etc. En configurant raisonnablement les stratégies Guard, il est possible de bloquer efficacement les attaquants utilisant des attaques en dehors du niveau des contrats.
Récemment, plusieurs fournisseurs de portefeuilles matériels ont appelé à renforcer les capacités d'analyse et de protection des contrats Safe. Certains projets commencent à explorer des solutions de mise à niveau et d'extension basées sur le mécanisme Guard, construisant des solutions de sécurité de couche intermédiaire établies sur les portefeuilles multisignature Safe, afin de fournir une protection supplémentaire entre les actifs sous-jacents et les actifs des utilisateurs.
Il est important de noter que Safe lui-même n'offre que des fonctionnalités de gestion de Guard et de rappel, la logique de vérification des transactions multisignature doit être mise en œuvre par l'utilisateur lui-même, et sa sécurité dépend de la qualité de l'implémentation de Guard. Certaines applications innovantes, telles que Solv Guardian et le SecurityControlModule d'Elytro, ont élargi cette idée en réalisant un contrôle d'accès et une gestion de la sécurité plus granulaires.
Conclusion et perspectives
Les récentes attaques ont mis en évidence l'importance de mettre à jour rapidement les infrastructures de sécurité. Si les plateformes affectées avaient utilisé une version mise à jour des contrats intelligents et mis en œuvre un mécanisme de protection approprié, elles auraient pu éviter des pertes énormes. Cela fournit une réflexion importante pour la gestion de la sécurité des actifs à l'avenir.
Le mécanisme Safe Guard fonctionne comme un système de sécurité intelligent installé dans un coffre-fort pour les actifs numériques, dont l'efficacité dépend de la rigueur de la conception des règles et de la qualité de la mise en œuvre. Face à des méthodes d'attaque de plus en plus sophistiquées, nous avons besoin de :
La gestion des actifs numériques à l'avenir sera un processus d'évolution conjointe entre les mécanismes de sécurité des smart contracts et l'évolution continue de l'attaque et de la défense. Ce n'est qu'en intégrant l'idée de sécurité à chaque étape que l'on pourra construire de véritables barrières de sécurité dans le jeu entre la "lance" des hackers et le "bouclier" des protecteurs.