개요 해당 포스트는 2023년 1월 27일 Dexible에서 일어난 약 1,540,000 달러의 해킹 사건을 분석한 포스트입니다. 컨트랙트 취약점과 해킹 기법, 취약점 수정에 초점을 맞추어 포스트를 작성하였습니다. 취약한 컨트랙트 해킹 대상이 된 컨트랙트는 Dexible로 링크를 통해 확인할 수 있습니다. 취약점을 찾기 위해서는 두 개의 컨트랙트(Dexible.sol, SwapHandler.sol)를 보아야 합니다. //SPDX-License-Identifier: Unlicense pragma solidity ^0.8.17; import "./interfaces/IDexible.sol"; import "./baseContracts/DexibleView.sol"; import "./baseContracts..
개요 해당 포스트는 2023년 2월 27일 LZ finance에서 일어난 약 1,000,000 달러의 해킹 사건을 분석한 포스트입니다. 컨트랙트 취약점과 해킹 기법, 취약점 수정에 초점을 맞추어 포스트를 작성하였습니다. 취약한 컨트랙트 취약한 컨트랙트의 주소는 0x6D8981847Eb3cc2234179d0F0e72F6b6b2421a01입니다. 이 컨트랙트는 LZ finance에서 배포한 SwapXProxy의 implementation 컨트랙트입니다. 취약한 컨트랙트는 마치 Uniswap Router와 같은 역할을 수행하고 있으며, LZ finance에서 해당 코드를 공개하지 않아, 바이트코드를 디컴파일해 분석할 수도 있으나, 이번 포스트에서는 Transaction 분석을 통해 해당 컨트랙트의 기능과 취약..
개요 해당 포스트는 2023년 2월 23일 Hakuna Matata에서 일어난 약 10,000 달러의 해킹 사건을 분석한 포스트입니다. 컨트랙트 취약점과 해킹 기법, 취약점 수정에 초점을 맞추어 포스트를 작성하였습니다. 취약한 컨트랙트 해킹 대상이 된 컨트랙트는 HakunaMatata(CoinToken)로 링크를 통해 확인할 수 있습니다. 위 컨트랙트의 totalSupply가 매우 작을 때(10 이하), PancakeSwap 컨트랙트와의 관계에서 취약점이 발생합니다. 아래는 HakunaMatata 컨트랙트의 소스코드입니다. /** *Submitted for verification at BscScan.com on 2021-04-16 */ // SPDX-License-Identifier: MIT pragma..
개요 해당 포스트는 2023년 2월 22일 Dynamic Finance에서 일어난 약 23,000 달러의 해킹 사건을 분석한 포스트입니다. 컨트랙트 취약점과 해킹 기법, 취약점 수정에 초점을 맞추어 포스트를 작성하였습니다. 취약한 컨트랙트 해킹 대상이 된 컨트랙트는 StakingDYNA로 링크를 통해 확인할 수 있습니다. 아래는 해당 컨트랙트의 소스코드입니다. // SPDX-License-Identifier: MIT pragma solidity ^0.8.13; import "@openzeppelin/contracts/token/ERC20/IERC20.sol"; import "@openzeppelin/contracts/utils/math/SafeMath.sol"; import "@openzeppelin/c..