컨트랙트의 잔액을 0보다 크게 만들면 된다.
문제 컨트랙트는 아무것도 없는 상태. 그렇기 때문에 selfdestruct함수를 이용해서 보내면 된다.
function dest() external payable {
selfdestruct(payable (force));
}
selfdestruct는 현재 컨트랙트를 날리고 force주소에 컨트랙트에 있는 이더를 전송한다.
level 7.force 코드
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.0;
contract Force {/*
MEOW ?
/\_/\ /
____/ o o \
/~____ =ø= /
(______)__m_m)
*/}
'CTF > Ethernaut' 카테고리의 다른 글
[Ethernaut] 9.King (0) | 2024.02.05 |
---|---|
[Ethernaut] 8.Vault (0) | 2024.02.01 |
[Ethernaut] 6.Delegation (2) | 2024.01.31 |
[Ethernaut] 5. Token (0) | 2024.01.26 |
[Ethernaut] 4. Telephone (0) | 2024.01.26 |