본문 바로가기

Hack/Cryptocurrency30

PEPE Token의 Rug Pull 분석 Rug Pull Rug Pull은 재단(또는 개발자)에서 보유한 또는 무단 발행한 물량을 시장에 던짐으로써 투자자나 사용자들에게 피해를 끼치는 행위를 의미합니다. PEPE Token Rug Pull UTC 기준 23년 8월 24일 밈 토큰으로 유명한 PEPE 토큰에서도 Rug Pull로 의심되는 행위가 발견되었습니다. 실제 Transaction을 통해 하나씩 뜯어보겠습니다. (사실 상 Rug Pull로 확실시 되는 분위기) Pepe (PEPE) Token Tracker | Etherscan Pepe (PEPE) Token Tracker on Etherscan shows the price of the Token $0.00, total supply 420,689,899,999,994.7930999999999.. 2023. 8. 25.
Vyper Language Re-Entrancy 취약점 분석 (With Curve Pool Hacking) 기본 개념 EVM 단일 스레드 비동시 시스템으로, 블록체인에서의 제어 흐름은 일반적인 프로그램과는 달리 프로그램(ex: Smart Contract)이 다른 프로그램을 호출할 때마다 전체 제어 흐름이 호출된 프로그램으로 전달됩니다. Vyper Ehereum Virtual Machine(EVM)을 대상으로 한 Smart Contract 기반의 Pythonic한 프로그래밍 언어입니다. Re-Entrancy Attack 제어 흐름이 호출된 Smart Contract로 넘어가는 특성을 악용한 공격으로 제어 흐름이 넘어가는 함수에 반복적으로 재진입(ex : A -> B -> A ...)하여 상태가 업데이트 되기 전에 이전 상태를 악용(자산 탈취 등)할 수 있습니다. Re-Entrancy Attack 대응 방안 1... 2023. 8. 13.
Truffle를 통한 Reentrancy Attack 실습해보기 먼저 Reentrancy Attack에 대한 내용이 궁금하신 분들은 아래 포스팅을 확인해주세요. Reentrancy Attack in Smart Contract Smart Contract는 블록체인 기술에서 중요한 개념 중 하나로, 계약 체결과 실행을 자동으로 수행할 수 있는 프로그램이며, 블록체인 기술을 활용하여 제 3자의 인증 기관 없이 개인 간 계약이 이루어 hacksms.tistory.com 참고로 Local 환경은 Truffle과 Ganache를 이용하여 구축하였습니다. 구축 방법은 아래 포스팅을 확인해주세요. Ethereum 로컬 개발 환경 구성하기 (with Smart Contract) 사실 Etehreum은 Test Nets이 있기 때문에 Remix와 같은 도구들을 통하여 Test Nets.. 2023. 7. 23.
Ethereum 로컬 개발 환경 구성하기 (with Smart Contract) 사실 Etehreum은 Test Nets이 있기 때문에 Remix와 같은 도구들을 통하여 Test Nets에 연결하여 쉽게 이용할 수 있습니다. 그러나 Test Nets은 아래와 같은 일부 단점들을 가지고 있어, 로컬에서 개발 환경이 필요한 경우가 점점 늘어나고 있습니다. 외부적으로 공개가 되어있어 Private하지 못함 Test Ether를 구하는 것이 점점 까다로워지고 있음 사용자가 많아짐에 따라 Transaction 처리 속도가 느려지고 있음 Ethereum 재단에서도 로컬에서 개발 환경을 구축할 수 있는 여러 Framework들을 안내해주고 있습니다. Home | ethereum.org Ethereum is a global, decentralized platform for money and new.. 2023. 7. 23.
stETH (Staked ETH) Ethereum이 2.0으로 업그레이드 되면서 Staking 서비스가 출시되었지만, 샤펠라(상하이+카펠라) 업그레이드가 되기 전까지는 Staking 된 ETH을 Unstaking 할 수 없었습니다. 뿐만 아니라 이 외에도 32ETH이라는 큰 액수로 Staking을 해야 됐다는 점(거래소에서 32ETH을 모아서 해주더라도) 등 여러가지 문제가 있었습니다. ※ 이더리움 샤펠라 업그레이드는 23년 4월 12일 성공적으로 수행되었음 이러한 상황에서 Lido 재단 측에서 스테이킹 진입 장벽을 낮추는 탈중앙화된 스테이킹 솔루션을 홍보하면서 나온 솔루션이 바로 Lido Ethereum Liquid Staking 입니다. 해당 스테이킹 솔루션에 ETH을 Staking 하면, ERC-20 Token을 보상으로 주는데요... 2023. 7. 15.
Solidity Visibility, 그리고 View와 Pure 속성 Soliditiy에서는 함수 및 State Variable을 다른 Smart Contract에서 액세스 할 수 있도록 Visibility(가시성)를 설정할 수 있습니다. Visibility 종류 구분 설명 public 모든 Smart Contract와 Account에서 접근 가능함 private 기능이 정의된 Smart Contract에서만 접근 가능함 internal 내부 기능을 상속받은 Smart Contract에서만 접근 가능함 external 외부 Smart Contract 및 Account에서만 접근 가능함 Sample Code (Solidity) // SPDX-License-Identifier: MIT pragma solidity ^0.8.17; contract Base { // Private.. 2023. 7. 8.
Rollup (Optimistic Rollups, ZK Rollups) Rollup 2023년에는 정말 많은 가상 자산이 존재하고 있는데요. 이 중 제일 많이 사용되고 영향력이 높은 가상 자산은 Ethereum일 것 같습니다. 그런 Ethereum의 Mainnet인 EVM 상에는 정말 다양한 프로젝트들이 올라가 있습니다. 그런데 Ethereum이 초당 처리할 수 있는 Transaction인 TPS(Transaction Per Sencond)는 고작 15 정도에 불과합니다. 실제 사용량에 비해서는 터무니없이 낮은 수준이라고 볼 수 있습니다. (Ethereum이 2.0으로 업그레이드 되면서 TPS가 증가하였다고 하지만, 그럼에도 확장성은 필요하다고 생각합니다.) Ethereum 생태계에서는 이러한 확장성 문제를 해결하기 위해 Plasma, Validium, Rollup, Sha.. 2023. 7. 1.
Contract Application Binary Interface (ABI) Contract Application Binary Interface (ABI)란 Solidity 환경에서의 ABI는 블록체인 외부 환경과 Smart Contract 또는 Smart Contract 간에 상호 작용하는 표준 방법을 의미 합니다. 이러한 상호 작용을 위해서는 ABI 포맷으로 Encoding 하거나, Encoding된 ABI를 Decoding 할 수 있어야 합니다. 실제 Encoding된 ABI Data를 통하여 이러한 방식을 알아보도록 하겠습니다. ※ 이번 포스팅에서는 비표준 방식의 ABI Encoding은 다루지 않을 계획입니다! ABI Encode ABI Encoding된 데이터는 아래와 같은 포맷을 가지게 됨 정적 타입 - 일반 타입, [M]와 같이 배열 크기가 고정된 경우 4Byte .. 2023. 7. 1.
브릿지와 크로스 체인, 멀티 체인, 옴니 체인을 알아보자 각각의 가상 자산들은 각각 고유한 기능과 장단점 등을 가지고 있습니다. 정말 다양한 가상 자산들이 생겨나면서 블록체인 간의 자산을 이동하기 위한 수요가 늘어나기 시작했습니다. 그리고 블록체인 간의 자산 이동 수요를 해결하기 위해 블록체인 생태계 간의 연결을 수행하여 이러한 수요를 해결한 것이 바로 브릿지(Bridge)입니다. 브릿지(Bridge) 앞서 언급했던 것처럼 Mainnet을 보유한 모든 가상 자산은 독립된 환경의 블록체인에서 각각의 규칙과 합의 메커니즘 등으로 작동합니다. 즉, 기본은 블록체인 생태계 간의 통신은 불가능하고 가상 자산이 자유롭게 이동하는 것도 불가능합니다. 브릿지는 현실 세계의 다리와 같이 블록체인 생태계 간의 연결 역할을 수행하면서 정보 및 가상 자산 등이 교환될 수 있도록 만.. 2023. 6. 24.