Skip to content

Latest commit

 

History

History
47 lines (22 loc) · 1.88 KB

avoiding_common_attacks.md

File metadata and controls

47 lines (22 loc) · 1.88 KB

avoiding_common_attacks.md

Les points suivants de sécurité sont issues de la documentation Alyra

A prévoir pour les prochaines versions : utilisation d'outils comme Mythril et Manticore

Utilisation de Slither dans notre smart contract EthicOnChain : deux erreurs ont pu être détectées et corrigées grâce à cet outil.

Cover

Appel à l’inconnu - Call to the unknown

Les fonctions call et delegatecall ne sont pas utilisées. De plus il est indiqué dans la documentation "Ces deux vulnérabilités ne sont plus exploitables actuellement, en effet elles datent des débuts de Ethereum." La fonction send n'est pas non plus utilisée et nous n'avons pas défini de fonction fallback.

Désordre d’exception - Exception disorder

Les seules fonctions qui mettent en jeu une transaction n'ont pas d'appels croisés. Nous n'avons aucune boucle for dans le contract EthicOnChain.sol.

Envoi sans gas - Gasless send

La fonction send n'est pas utilisée et nous n'avons pas défini de fonction fallback.

Conversions de types - Type Casts

Les seules fonctions qui mettent en jeu une transaction n'ont pas d'appels croisés.

Réentrance - Reentrancy

EthicOnChain.sol, fonctions addDonation et withdrawTokens: les appels à IERC20(eocTokenAddress).transfer et trasnferFrom sont faits en dernier. Vu et vérifié par l'outil Slither.

Timestamp:

Pas d'interaction avec le contrat . Pas d'utilisation du nombre de block, ou de délais dans le contrat.

Tx.origin

Nous n'utilisons que msg.sender comme recommandé.

Underflow / Overflow

Les risques d'underflow/overflow ont été réglé depuis Solidity 0.8 et supérieur.