- Today
- Total
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- 리눅스
- Ethereum
- shellcode
- BANDiT
- solidity
- overthewire
- 블록체인
- 해킹
- wargame
- 해시
- 비트코인
- Linux
- 코인
- Leak
- 이더리움
- DreamHack
- lending
- V2
- pwnable
- blockchain
- PWN
- 반딧
- Crypto
- pow
- defi
- bitcoin
- hacking
- web3
- security
- compound
목록web3 (15)
Nullorm
스시스왑, 유니스왑과 같은 허가없이 유동성 풀을 생성하거나 거래할 수 있는 open dex에서 최근 들어서인지, 원래 그랬는지 모르겠는 허니팟 Scammer들한테 자꾸 연락이 와서, 혹시나 속아넘어가는 사람이 있을까봐 글을 작성해본다.FOMO 오게 생긴 차트. 이게 도대체 왜 문제인지... 어떻게 이로 인한 스캠 피해가 생기게 되는지를 코드 분석과 실제 사례를 통해 알아보도록 하자.(+ 나한테 왜그러는지 모르겠는데, 오늘(25.1.5) 새로운 스캠메시지(같은 패턴)이 왔다. https://dexscreener.com/base/0xba83db06677bbe976687429696bbe19a1c872d56 주요 특징 세줄 요약pump&dump: 끊임없는 가격 상승, 그리고 순간 폭락arbitrum: 내가 본 ..
최근 Base 맥시가 된 것 같다. Base, 솔라나쪽에서 AI관련 섹터가 상당히 핫한 것 같은데, Base에서 떠오르는 AI-agent들이 어떠한 것이 있는지, 그리고 어떻게 사용하는지 알아보고자 Virtuals Protocol에 대한 공부를 해보려 한다. 이를 위해 Virtuals Protocol Whitepaper를 읽어보며 AI라는 토픽의 현위치와 기술적 이해를 해보고자 한다.글을 쓰기 시작하는 시점에서, Virtuals에 대해 아는 것은 AI-agent 관련 token에서의 펌프펀이라는 것만 알고 있다. 이제, 시작해보자. Our one liner | Virtuals Protocol WhitepaperLast updated 2 months agowhitepaper.virtuals.iovirtua..
블록체인, Web3라는 세계에 입문한지 어느덧 1년이라는 시간이 되었다. 처음에는 블록체인 기술이라는 것을 정말 “탈중앙화된 금융” 그 이상도, 이하도 아닌 것으로 인식하고 있었다. 때문에 이더리움, 솔라나와 같은 모든 종류의 코인을 그저 비트코인과 대동소이한 암호화폐 라고만 생각했다. 하지만, 온체인 상에 어플리케이션을 올리고, 탈중앙화된 방식으로 서비스를 운영하며, 꽤나 high-level의 프로그래밍 언어도 존재하고, 해킹 방식 또한 기존에 접하던 것들과는 다소 차이가 있는, 흔히 말하는 2세대 블록체인의 여러 요소들이 나에게 꽤나 매력적으로 다가왔던 것 같다. 일년간의 경험을 통해 나의 미래먹거리는 Web3라는 생각을 굳힐 수 있었고, 블록체인밸리 학회를 시작으로, 회사 인턴십을 거쳐 업사이드 아..
들어가기에 앞서 ...Compound v2에서 사용되는 여러 helper function들의 로직을 정리한 포스팅이다. 사실 Lending 프로토콜에서 가장 중요한 것은 사용자들이 직접 호출하는 entry point라고도 할 수 있겠지만, 실제로 사용자들의 자금을 관리, 이자를 업데이트, 프로토콜에 대한 관리 등을 수행하는 것은 이러한 helper function들이 있기에 가능한 것이기 때문에 따로 글을 빼 포스팅을 작성하였다.목차 (Helper functions)CToken::accrueInterest()… (계속해서 추가해나갈 예정이다)CToken::accrueInterest()function accrueInterest() virtual public returns (uint);역할cToken의 bo..
들어가기에 앞서..이번 편에서는 compound v2의 전반적인 구조를 알아보고자 한다.1편과 다소 순서가 뒤바뀐 면이 없지않아 있는 것 같긴 한데, 1편의 내용은 compound에서 사용되는 핵심적인 개념들에 대한 설명이었기 때문에 필수적이었고, 이 또한 전체적인 구조를 파악할 수 있기 때문에 필수적인 것 같다. 그래서 어느 것이 먼저인지는 중요하지 않은 것 같다. 이번 편에서 전체적인 구조를 살펴보고, 다음편 부터 코드레벨까지 뜯어보며 프로토콜 전반에 대한 내용을 살펴보도록 하자.시작해보자.Compound v2 구조위 그림은 업사이드아카데미 1기 - DeepHigh팀으로 활동하면서 만든 Compound v2의 전체적인 호출 flow이다. 위 도식에는 Compound v2를 구성하는external en..
들어가기에 앞서..설명하지 않아야 할 부분까지 설명하는것은 귀찮으니 필요한 부분이나 빌드업을 위한 내용정도만 작성해보겠다.이번 편에서는 compound v2에서 핵심 기능을 구현하기 위해 어떠한 내용을 고려했는지, 또 어떻게 구현했는지를 알아보도록 하자.어떠한 방식으로 compound와 end-user가 소통하는지, 어떠한 수학적 로직이 사용되는지를 먼저 알아보고, 각종 기능들에 대해서는 다음편에서 알아보도록 하자.Compound v2compound프로토콜은 2019년에 출간된 Compound whitepaper(https://compound.finance/documents/Compound.Whitepaper.pdf)를 기반으로 하며, 오픈소스, 그리고 커뮤니티에 의해 관리된다. 이번 포스팅에서는 com..
4개월간의 업사이드아카데미 1기 DeepHigh팀 팀장으로서의 활동을 끝내고, 어떤 공부를 해야할지를 고민해보다가 프로젝트 내용에 대해 내가 정말 완벽히 이해하고있는가를 생각해보았다.작업했던 모든 산출물을 완벽하게 이해하고있는지에 대해 우선적으로 생각해 보았고, 더 공부하고 발전시킬 부분이 있다고 생각하였다.프로젝트의 주제는 Defi Lending Protocol Audit이었으며, 이에 대한 산출물은 EVM기반 Lending 프로토콜에 대한 위협모델링 및 관련 자료들이다. 구체적인 내용은 아래 내용을 통해 알 수 있다. https://deephigh.gitbook.io/deephigh Welcome | DeepHighWelcomedeephigh.gitbook.io실제 위협모델링을 통해 Lending 프..
블록은 이전블록의 해시(prevHash라고 부르도록 하겠다.)와 트랜잭션의 묶음이라고 생각할 수 있다. 해시는 블록의 데이터를 통해 계산되기 때문에 체인의 형태로 구성될 수 있다. 만약, 블록이 생성된 이후에 블록의 데이터를 변경하게 되면, 해당 블록의 블록해시(block hash)가 바뀌고, 이는 이후 생성된 다른 블록들에 영향을 주어 모든 검증자들이 알아차릴 수 있기 때문에, 다음 블록이 모두 무효화되어 임의 변조를 막을 수 있다.네트워크의 모든 참가자들이 동기화된(Syncronized) 상태(State)를 유지하고, 모든 트랜잭션에 동의를 하기 쉽게 하기 위해 다수의 트랜잭션들을 한 개의 블록으로 묶어서 Commit, agree, Syncronize를 한 번에 처리한다. 모든 블록들이 적절하게 검증..
요약)The merge 업데이트에서 PoW → PoS로 consensus protocol을 변경.기존에 사용되던 Casper FFG와 LMD Ghost를 ETH2에 적절히 조합한 PoS consensus algorithm.Fork-Choice-Rule: Nakamoto consensus (classic)비트코인과 이더리움 1.0 PoW의 가장 근간이 되는 합의 프로토콜.다른 말로 Longest Chain Rule이라고도 표현한다. 말그대로 Fork가 발생했을 때, 여러 Fork중, 더 긴 체인을 선택하는 (즉, 더 많은 hash power가 들어간 체인이 나열한 트랜잭션 순서를 valid하다고 인정하는) 프로토콜이다.이렇게 인정된 체인을 Canonical Chain이라고 부른다.Safety & Liven..
지금까지 몇개월정도 Web3 offensive 보안 공부를 하면서 취약한 컨트랙트를 보면 일단 call()함수가 사용되었나를 보고, 사용되었으면 reentrancy attack이 가능하겠다~ 정도를 생각해왔다.그리고, call{value: }() 함수 사용으로 인한 reentrancy attack의 countermeasure로 사용되는 함수가 send(), transfer() 인 것으로 생각하고 있었다.그런데 몇몇 자료들을 찾아다니다보니, 꼭 그런것도 아니겠구나 싶었다. 오히려 send(), trnasfer() 함수가 reentrancy attack을 유발할 수 있겠구나 싶었다.이 내용을 한번 자세히 정리해보고자 한다. 지난번 포스팅에서 송금 관련 함수들 (send, transfer, call)에 대해 ..