In the DAO attack, the attacker transferred eth from the DAO (at 0xbb9bc244d798123fde783fcc1c72d3bb8c189413) to the dark DAO they created (at 0x304a554a310c7e546dfe434669c62820b7d83490). This dark DAO has exactly the same bytecode as the original DAO. Why didn't the attacker make it so their dark DAO could easily send them all the eth it contained? For example by just adding a function like this:

function withdraw() onlyOwner {

Is there some line in the DAO contract(s) that forces a split DAO to be exactly the same as the original DAO?

  • Here you'll find more details about the attack ethereum.stackexchange.com/a/6228. It wasn't possible to extract directly it required creating a child dao.
    – Ismael
    Commented Jun 19, 2021 at 17:55


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Browse other questions tagged or ask your own question.