일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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
- 분산원장
- 이더리움
- External Call
- POS
- Report
- 비트코인
- solidity
- view 이동
- 재진입공격
- dsYM
- Algorithm
- 프로그래머스
- pow
- 암호화폐
- PBFT
- 백준
- 블록체인
- ios
- Crash
- 블록체인 기술
- reentrancy
- Xcode
- DEFI
- Mining
- viewcontroller
- DPOS
- .dsym
- Blockchain
- Today
- Total
목록External Call (2)
개발하기좋은날
External call에 이어서 관련된 재진입 공격에 대해 알아봅시다. 이더리움의 DAO 해킹 사건이후 가장 요구되는 기본 보안 사항이다 보통 재진입 공격같은 경우 External Call의 address.call에 의해 발생한다 DAO 사건또한 이러한 문제 떄문에 발생한 이슈입니다 1. 단일 함수에 대한 재진입 입니다 // INSECURE mapping (address => uint) private userBalances; function withdrawBalance() public { uint amountToWithdraw = userBalances[msg.sender]; (bool success, ) = msg.sender.call.value(amountToWithdraw)(""); // At t..
모든 체인의 Contract는 보안성이 중요하다 순식간에 자본금이 사라질수있기 떄문이다. 시큐리티 코딩은 기본적으로 스마트컨트랙트 개발자라면 알아두어야할 사항이라 생각하여 포스팅을 시작한다 External Call 신뢰성 - External Call 잠재적인 위험에 노출되어있다고 생각해도 무방 하다. - External Call은 해당 계약및 의존하는 다른 계약에서 악성 코드를 실행 할 수 있기 때문이다. - 그래서 모든 External Call은 잠재적인 보안 위험으로 취급되어 최대한 외부호출을 제거하거나 권장 사항을 사용하여 위험을 최소화 해야한다 1. 신뢰할 수 없는 계약의 표시 - 가장 먼저 외부 계약에 관련해서 상호 작용이 잠재적으로 안전하지 않다는 것을 분명히 하자 // bad Bank.wit..