본문 바로가기
블록체인교육/블록체인보안

[블록체인 보안] 스마트컨트랙트 취약성(반복문에 return사용)

by Danny_Kim 2023. 8. 25.

🔑 100배 수익 경험자의 노하우가 담긴 치트키 공개 🔑

  1. 네이버, 카카오 임직원들이 듣고 있는 비트코인 강의
  2. 아무도 알려주지 않은 비트코인, 이더리움의 리스크
  3. 블록체인 전문가들도 놓치기 쉬운 비트코인, 이더리움의 핵심 가치
  4. 천배 수익이 가능한 디파이(DeFi), 코인 생태계 지도
  5. 토큰 제작, 1억 연봉의 블록체인 개발자로 거듭나자!

내부 루프 반복에서의 return 사용으로 의도치 않은 종료 발생

 

BankContractBug의 addBanks 함수는 루프 반복 내에서 return 문을 잘못 사용하여 루프가 의도치 않게 종료되는 문제를 나타냄.

Return 문이 내부 루프 내에 배치되어 있으며, 이로 인해 모든 은행 주소에 대한 반복이 완료되기 전에 함수가 조기 종료됨.

 

조치방안

Return 대신에 break 사용.

 

테스트 소스

https://github.com/SunWeb3Sec/DeFiVulnLabs/blob/main/src/test/return-break.sol

 

취약성 코드

 

테스트

 

 

참고문서

https://web3sec.notion.site/Return-vs-break-06125cc0e8ff4328b6b3551ad8b04ce5

🔑 100배 수익 경험자의 노하우가 담긴 치트키 공개 🔑

  1. 네이버, 카카오 임직원들이 듣고 있는 비트코인 강의
  2. 아무도 알려주지 않은 비트코인, 이더리움의 리스크
  3. 블록체인 전문가들도 놓치기 쉬운 비트코인, 이더리움의 핵심 가치
  4. 천배 수익이 가능한 디파이(DeFi), 코인 생태계 지도
  5. 토큰 제작, 1억 연봉의 블록체인 개발자로 거듭나자!

댓글