Skip to main content
QUICK REVIEW

[논문 리뷰] ScrawlD: A Dataset of Real World Ethereum Smart Contracts Labelled with Vulnerabilities

Chavhan Sujeet Yashavant, Saurabh Kumar|arXiv (Cornell University)|2022. 02. 23.
Blockchain Technology Applications and Security인용 수 16
한 줄 요약

이 논문은 6,700개의 실제 이더리움 스마트 계약으로 구성된 ScrawlD라는 벤치마크 데이터셋을 소개한다. 이 데이터셋은 다섯 개의 정적 분석 도구를 통해 다수결 투표 전략을 사용해 취약성을 주석 처리한 것이다. 이 데이터셋은 취약성 탐지 도구의 편향 없는 평가를 가능하게 하고, 기계학습 훈련을 지원하며, 도구의 효과성에 대한 실증적 통찰을 제공하여, 이 분야에서 표준화되고 대규모이며 실제 세계의 레이블이 부여된 데이터셋의 부족을 해결한다.

ABSTRACT

Smart contracts on Ethereum handle millions of U.S. Dollars and other financial assets. In the past, attackers have exploited smart contracts to steal these assets. The Ethereum community has developed plenty of tools to detect vulnerable smart contracts. However, there is no standardized data set to evaluate these existing tools, or any new tools developed. There is a need for an unbiased standard benchmark of real-world Ethereum smart contracts. We have created ScrawlD: an annotated data set of real-world smart contracts taken from the Ethereum network. The data set is labelled using 5 tools that detect various vulnerabilities in smart contracts, using majority voting.

연구 동기 및 목표

  • 이더리움 스마트 계약의 취약성 탐지 도구 평가를 위한 표준화되고 대규모이며 실제 세계의 벤치마크 데이터셋이 부족한 문제를 해결하기 위해.
  • 수동으로 검증된 취약성 주석이 부여된 실제 세계의 스마트 계약을 대표하고 다양하며 편향이 없는 데이터셋을 구축하기 위해.
  • 새로운 정적 분석 도구 및 기계학습 기반의 취약성 탐지 시스템 개발과 평가를 지원하기 위해.
  • 공통 평가 세트와 기준 레이블을 제공하여 기존 도구 간의 실증적 비교를 가능하게 하기 위해.
  • 합성 또는 소규모 레이블이 부여된 데이터셋으로 인한 편향을 줄여 평가 신뢰도를 향상시키기 위해.

제안 방법

  • 46,000개의 이더리움 스마트 계약을 이더스캔에서 수집하여, 최소 한 건의 거래가 있는 실제 세계의 계약에 집중했다.
  • Slither, Mythril, Oyente, SmartCheck 및 기타 기존 정적 분석 도구 다섯 개를 사용해 각 계약에 대해 알려진 취약성을 분석했다.
  • 취약성 레이블은 다수결 투표 메커니즘을 통해 할당되었다: 특정 라인 번호에서 최소 50%의 도구가 동일한 취약성을 보고한 경우에만 해당 취약성이 존재로 간주되었다.
  • 도구 간 호환성과 실행 환경 격리 보장을 위해 도커 컨테이너를 사용했다.
  • 최종 데이터셋은 6,700개의 계약으로 구성되며, 특정 라인에 취약성 주석이 매핑되어 있고, SWC-registry 취약성 유형을 사용한다.
  • 이 데이터셋은 커뮤니티 사용과 향후 확장성을 위해 https://github.com/sujeetc/ScrawlD 에 공개적으로 배포되었다.

실험 결과

연구 질문

  • RQ1실제 이더리움 스마트 계약에서 다양한 취약성 유형의 발생 빈도는 어떻게 되는가?
  • RQ2다수결 투표 공식화 전략이 취약성 주석 처리의 임의의 양성 및 음성 결과를 줄이는 데 얼마나 효과적인가?
  • RQ3대규모이며 실제 세계의 레이블이 부여된 데이터셋은 스마트 계약의 취약성 탐지 도구 평가 및 훈련을 향상시킬 수 있는가?
  • RQ4표준화되고 실제 세계의 벤치마크에서 평가할 경우 기존 도구들은 취약성을 얼마나 잘 탐지하는가?
  • RQ5실제 세계의 스마트 계약에서 취약성의 분포는 심각도와 빈도 측면에서 어떻게 되는가?

주요 결과

  • 데이터셋은 6,700개의 실제 이더리움 스마트 계약을 포함하며, 이 중 2,688개의 계약은 취약성이 탐지되지 않았다.
  • 재진입(_SWC-107_)과 산술 오버플로우/언더플로우(SWC-101)는 가장 자주 보고된 취약성 유형에 속했다.
  • 서비스 거부(DOS) 취약성은 대부분의 도구에서 탐지되지 않아, 도구의 한계 또는 낮은 발생 빈도를 시사했다.
  • 모든 계약 중 2,912개는 정확히 한 개의 취약성을 가지고 있었고, 1,082개는 두 개의 취약성을 가지고 있어 실제 세계의 계약에서 중간에서 높은 취약성 밀도를 보였다.
  • 다수결 투표 주석 처리 전략은 임의의 양성 결과를 줄였고, 벤치마크 평가를 위한 신뢰할 수 있는 기준 레이블을 제공했지만, 일부 취약성은 예측 불가능하게 보고되었다.
  • 이 데이터셋은 공개되어 있으며, 향후 커뮤니티 기반의 크라우드소싱을 통한 추가 도구 통합 및 수동 검증을 통해 점진적으로 확장될 예정이다.

더 나은 연구,지금 바로 시작하세요

논문 읽기부터 검토까지, 연구 시간을 획기적으로 줄여보세요.

카드 등록 없음 · 무료 플랜 제공

이 리뷰는 AI가 만들고, 인간 에디터가 검토했습니다.