Principe:
Explorer la blockchain via Etherscan pour trouver le flag dans un transaction passée
Le challenge


Un compte


Oui, je m'en tappe qu'elles soient trouvables dans mes screens, car ce compte bidon ne me sert qu'au CTF

Test network



Crédit de test


Ah oui, au fait, il me faut 20 secondes pour lancer MetaMask, donc, il est évident que je n'allais pas faire ces challenges avec grand entrain. Même si, au final, c'était intéressant d'en apprendre plus sur cette énorme usine à gaz (et à CO²) inutile qu'est la blockchain et le "web3"

Un transfert bidon

Cet ETH n'a aucune valeur. Enfin, comme tous les ETH. Mais sur le network de test, vraiment, ça n'en a aucune (d'où le fait qu'on puisse demander 10 ETH à un site web random)

Rage quit

Etherscan
La transaction ayant fail, je trouve un lien vers "etherscan" dans MetaMask.
"Etherscan" liste en pratique les transactions passées de la blockchain (réseau ropsten de test, ici).
Je suis donc allé voir
https://ropsten.etherscan.io/address/0xb65e30ded2cd7d5c4758082bace737976f8b214b
(depuis, ropsten a été décommissionné, mais "la blockchain, c'est pour l'éternité" hein… huhu)
pour trouver l'adresse du compte du CTF.





404CTF{M0N_M07_D3_P4553_357_7r0P_53CUr153_6r4C3_4_14_810CKCH41N}

En pratique, si j'ai bien compris, cette transaction a été émise par le compte du CTF. Elle a créé le contrat intro.sol (dont on nous donnait la source mais qui ne m'a servit à rien). Ce contrat possède un champ "password" qui est public (d'où sa présence dans "read contract"), et son contructeur prend ce "password" en paramètre (qu'on retrouve dans le "Code" du contrat).