스마트 컨트랙트 보안 취약점, 100% 검출 가능해진다
스마트 컨트랙트 보안 취약점, 100% 검출 가능해진다
  • 김하영 기자
  • 승인 2020.10.29 16:15
  • 댓글 0
이 기사를 공유합니다

[공학저널 김하영 기자] 최근 스마트 컨트랙트 코드에서 취약점을 발견하고, 공격하는 사례가 늘고 있는 가운데, 이러한 보안 취약점을 자동 분석해 해킹 등 보안 사고를 예방하는 솔루션이 개발돼 눈길을 끌고 있다.

스마트 컨트랙트는 블록체인에서 일정 조건이 충족되면 중개인 없이 당사자 간 거래가 자동으로 체결되는 기술로 블록체인 기반 사업의 핵심 기술로 손꼽히고 있다.

하지만, 스마트 컨트랙트는 한번 설치되면 수정하기 어렵고, 주로 금전과 관련돼 민감도 높은 데이터를 취급하기 때문에 실행에 문제가 발생하면 큰 손실로 이어질 수 있다는 한계점이 존재했다.

스마트 컨트랙트는 현재 프로그래밍 코드와 거의 비슷한 구조로 구성된다. 만일 송금 스마트계약 프로그램이 있다고 가정했을 때 사용자 계좌정보 분야에 함수 코드 연산 범위를 넘어서도록 조작하면 방어기제 코드를 무력화시키고, 현금을 탈취할 수 있는 셈이다.

이러한 시스템의 허점으로 인해 지난 2017년에는 패러티 월렛(Parity Wallet)에서 350억원의 피해가 발생했으며, 2018년에는 비트코인에서 발견된 이중지불 취약코드가 그대로 피죤코인에서 사용 돼 해커의 공격으로 2억 3천만개 이상의 피죤코인이 탈취되는 손실이 발생하기도 했다.

일반적인 프로그램보다 보안성과 안전성이 매우 중요한 분야지만 기존의 안전성 검증 도구로는 취약점 검출의 정확도와 성공률 부분에서 널리 활용되기에는 부족한 부분이 있었다. 보안 문제가 지속 발생했음에도 국내에는 이에 대비할 수 있는 솔루션이 없었던 것이다.

하지만 최근 고려대학교 블록체인연구소에서 스마트 컨트랙트 시스템의 보안 취약점을 자동 분석해 보안 사고를 예방하는 솔루션인 ‘베리스마트(VeriSmart)’를 오픈소스로 공개해 화제를 모았다.

고려대가 이번에 오픈소스를 공개한 베리스마트는 기존 솔루션의 단점을 보완했다. 베리스마트의 실험 결과 취약점 검출률 100%, 정확도는 99.5%를 기록해 기존 기술 대비 월등하게 향상된 보안 안정성을 선보였다.

검출률은 오류를 찾아내는 능력으로, 실험을 통해 490개 취약점 중 490개 모두를 찾아냈다. 정확도는 허위 경보가 포함된 상태에서 실제 오류의 비중이 얼마나 높은지를 보여주는데, 고려대 블록체인연구소가 베리스마트를 통해 490개의 취약점을 찾아내는 과정에서 단 2개의 허위경보만 보고했다.

고려대 블록체인연구소 오학주 교수(사진)는 “고려대 블록체인연구소가 개발한 베리스마트(VeriSmart) 검증기는 기존처럼 정적 분석이나 단순 기호실행에 치중하지 않고 다양한 취약점을 커버할 수 있도록 설계했다”면서 “블록체인 기술의 핵심이지만 그 동안 보안의 취약점이 큰 단점으로 꼽힌 스마트 계약 분야에서 베리스마트가 큰 역할을 할 것으로 기대한다”고 전했다.

베리스마트는 지난 5월 보안 분야 최우수 학술대회인 ‘IEEE 시큐리티&프라이버시(IEEE Symposium on Security & Privacy)’에서 논문으로 발표됐다. 이와 함께 해당 솔루션의 오픈소스는 누구나 사용해볼 수 있도록 GitHub(https://github.com/kupl/VeriSmart-public)에 공개되었으며, IoTCube(https://iotcube.net/veris)를 통해 사용해 볼 수 있다.


댓글삭제
삭제한 댓글은 다시 복구할 수 없습니다.
그래도 삭제하시겠습니까?
댓글 0
댓글쓰기
계정을 선택하시면 로그인·계정인증을 통해
댓글을 남기실 수 있습니다.