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

[블록체인 보안] 스마트컨트랙트 취약성(배열 삭제 간과)

by Danny_Kim 2023. 8. 25.

📢 대니월드 공식 홈페이지가 'TradingRoom'으로 변경되었습니다

모든 최신 시황과 교육 자료를 가장 빠르게 받는 방법!
지금 아래 버튼을 클릭해 이메일 구독을 완료해 주세요.

트레이딩룸 접속 & 이메일 등록하기 🚀

배열 삭제 간과 : 데이터 불일치로 이어지는 문제

 

솔리디티에서 동적 배열요소를 적절하게 삭제하지 않으면 데이터 불일치가 발생할 수 있음

배열에서 요소를 삭제할때 삭제 과정을 올바르게 처리하지 않으면 배열은 여전히 스토리지 공간을 유지하게 되며 예상치 못한 동작이 발생할 수 있음

 

조치방안

옵션1 : 마지막 요소를 복사하여 제거할 위치에 넣는 방법

옵션2 : 오른쪽에서 왼쪽으로 요소를 이동하여 삭제하는 방법

 

 

테스트 소스

https://github.com/SunWeb3Sec/DeFiVulnLabs/blob/main/src/test/Array-deletion.sol

 

 

코드 취약부분

 

테스트

 

참고문헌

https://web3sec.notion.site/Array-Deletion-Oversight-199221ca749549278a4261530129abaa

🔑🔑🔑 추천 링크 🔑🔑🔑

  1. 쉽게 이해하고 따라하는 블록체인 마스터 과정
  2. 알트코인 투자 정석 및 2026 암호화폐 시장 주목할 섹터

댓글