지난 2016년 6월 이더리움재단이 만든 펀딩 시스템 다오(The DAO·탈중앙화된 자율조직) 프로젝트는 243만 이더(ETH)를 해킹당하는 피해를 입는다. 전체 모금액의 3분의 1을 차지하는 규모로 현금으로 따지면 5,500만 달러(640억원)에 달했다. 해커는 당시 DAO토큰 보유자들이 이더를 환불받을 수 있게 하는 스플리트(split·이더 환불 명령 함수) 기능의 호출 취약성을 노렸다.
지난해 11월 패러티(Parity) 사의 멀티싱 월렛(MultiSig Wallet)에 접근할 때 필요한 코드가 삭제되면서 87개의 지갑과 그 안에 담겨있던 51만 이더의 출금이 막혔다. 멀티싱 월렛 라이브러리 스마트 컨트랙트에 보안적 결함이 발생한 것이다. 패러티 사에서 ICO 자금을 보관하던 블록체인 프로젝트들은 막대한 손실을 입었다.
스마트 컨트랙트와 관련된 해킹 사건들은 코드의 작은 결함이 엄청난 경제적인 손실로 직결될 수 있다는 점을 보여준다. 이에 따라 블록체인 코드를 감사(Code audit)하는 직업이 각광 받고 있다. 바로 ‘블록체인 보안 감사 전문가’다.
블록체인 보안 감사 전문가는 주로 블록체인 프로젝트의 스마트 컨트랙트가 가진 코드의 결점을 찾아내 보완하는 역할을 한다. 암호화폐 코드의 취약성을 파악하는 일이다 보니 투자사 및 펀드 등 투자기관이 암호화폐 프로젝트에 투자하기 전 제 3자의 시각으로 해당 프로젝트를 무결성을 검증하는 작업을 대행하기도 한다. 일반 기업에서 회계사가 외부 감사를 진행하는 것처럼 외부자의 시각에서 해당 프로젝트가 안전하고 믿을 수 있는 보안 수준을 가지고 있는 지 살핀다. 기존 산업군에서는 컴퓨터 프로그래밍 분야의 품질 관리나 테스터와 가장 유사하다.
국내에서는 올해부터 본격적으로 보안 감사 전문 기업이 생겨나기 시작했다. 대표적인 기업으로는 온더, 해치랩스, 핵슬란트 세 기업이 꼽힌다. 온더에서는 3명의 전문가가 코드의 오딧을 전문적으로 진행하며, 해치랩스에는 직원 5명, 핵슬란트에서는 팀장급 개발자 1명이 오딧을 담당하고 있다.
김종호 해치랩스 대표는 “여러 블록체인 프로젝트의 스마트 컨트랙트를 살펴보면서 산업 내에 보안 문제가 많이 발생하지만, 이에 대한 보안감사를 제공하는 곳이 턱없이 부족하다는 것을 알게 됐다”며 “더 많은 개발자들이 안전한 스마트 컨트랙트를 구현할 수 있도록 하고자 이 산업에 뛰어들게 됐다”고 설명했다.
스마트 컨트랙트의 보안 감사의 과정은 이렇다. 먼저 고객사로부터 보안 감사를 원하는 코드를 받아본다. 다음은 보안 감사 기업에서 제공하는 감사 도구를 비롯해 오옌테(Oyente), 미스릴(Mythril) 등 오픈소스 보안 감사 도구를 통해 해당 코드의 보안 감사를 진행해 문제점을 찾아낸다. 여러 분석 툴을 통해 기존 코드에서 발생할 수 있는 결함을 찾아내 감사보고서를 제공한다.
블록체인 보안 감사 전문가들은 코드 보안감사는 선택이 아닌 필수여야 한다고 입을 모은다. 이진호 헥슬란트 개발자는 “상당수 블록체인 프로젝트는 앞서 공개된 비트코인, 이더리움 등 기존의 코드를 차용해 사용한다”며 “해당 코드의 일부분에 덧붙일 경우 코드를 수정하는 과정에서 코드 오류가 나타날 수 있다”고 설명했다. 그는 “팀 내 개발자들이 코드를 수정하고 보완하는 과정을 거치지만 팀 내에서 발견하지 못하는 코드 오류도 더러 있다”며 “코드 검증·배포에 있어 제 3자의 시각에서 코드를 바라보고 검증하는 것이 필수”라고 강조했다.
김민석 해치랩스 COO는 “많은 해외의 블록체인 프로젝트 팀은 두 곳 이상의 보안감사 업체를 선정해 의견을 받으며 이후에도 버그 바운티(보안 취약점 신고에 대한 포상시스템)을 진행한다”면서 “반면 국내 팀은 한 곳으로부터 보안감사를 받는 것도 어렵게 생각한다”며 아쉬움을 드러냈다.
정순형 온더 대표는 “코드 보안감사 비용을 제 3자에게 공개하기 꺼려 하는 경우가 있다”며 “실무진들이 검토 받아야 한다고 주장해도, 경영진이 받아들이지 않는 사례도 더러 있다”고 현 상황을 꼬집었다. 이어 “프로젝트가 시작되기 전에 보안감사가 진행되어야 하는데 이미 유통된 후 문제가 터지고 난 후 뒤늦게 찾아온다”며 “이는 더 많은 비용을 초래한다”고 덧붙였다.
암호화폐 산업이 커지면서 보안 감사 전문가에 대한 수요도 늘고 있다. 거래소업계에서는 상장을 앞둔 암호화폐의 코드에 문제점이 있는지 분석하고 보안 감사를 진행하는 코드감사가 필수적인 단계로 인식되고 있다. 지난 4월 후오비에 상장된 스마트매쉬(SmartMesh, SMT) 토큰 문제로 거래소에서도 토큰 감사에 대한 경각심이 높아졌다. 김 COO는 “거래소의 문제가 아닌 토큰 상의 결함임에도 해당 프로젝트를 비롯해 거래소도 많은 피해를 입었다”며 “상장된 이후에도 토큰의 결함이 큰 경제적 손실을 입힐 수 있기 때문에 보안감사가 필수적으로 진행돼야 한다”고 말했다.
스마트 콘트랙트 보안감사에 있어서 가장 요구되는 덕목은 뭘까. 국내 전문가들은 ‘책임감’을 가장 우선적으로 꼽았다. 정 대표는 “보안감사는 퍼블릭 체인 영역에 맞닿아 있고, 이는 토큰과 직결된다”며 “경제적인 부분과 닿아있어 문제점을 정확히 짚고, 효율적으로 기능들이 수행되는가를 꼼꼼히 따져줄 책임감을 가진 사람이 필요하다”고 말했다. 또 “해커 같은 마인드가 필요하다”며 “의도치 않은 방향으로 문제가 터졌을 때 다양한 기능을 조합해서 문제 가능성을 예측하는 자질 또한 필요하다”고 지적했다.
이 개발자는 “오딧을 하다 보면 부가적으로 고쳐야 할 코드의 오류나 비즈니스 설계들을 발견하게 된다”며 “검수 맡은 프로젝트를 처음부터 끝까지 살펴볼 책임감을 가지고 업무에 돌입한다”고 설명했다. 개발의 영역이지만 비즈니스적인 측면까지 고려해야 한다는 것이 이들의 의견이다.
정 대표는 “올해 초 암호화폐 시장이 컸을 때, 관련 작업 수요도 크게 늘었다”며 “블록체인 산업이 커지면 오딧이라는 직업 자체도 같이 성장할 것”이라고 내다봤다. 그는 또 “컴퓨터 내부 구조가 발전한다고 해도 이 업무는 사람이 할 수 밖에 없는 구조”라며 “엔지니어들이 비행기나 미사일을 만져보면서 검수하듯, 블록체인 코드도 직접 만져야 한다”고 비교했다. /신은동기자 edshin@decenter.kr
- 신은동 기자
- edshin@decenter.kr