지난 주, 독립적으로 개발된 마이대시월렛(MyDashWallet)이 사용자의 개인 키를 외부 서버에 전송할 수 있는 해커에 의해 손상되었음이 밝혀졌다. 그러나 이와 같은 취약점이 발견되자 대시 코어 그룹 멤버가 개발자의 문제 해결을 도왔다고 한다.

 

 

이번 해킹은 해당 지갑이 다른 코드 베이스의 최신 버전에 의존해야 했으나 이 코드 베이스가 손상되어 있었기 때문이다. 주의를 기하기 위해 2019년 5월 13일부터 2019년 6월 12일 사이에 마이대시월렛을 사용한 사람이라면 누구나 자신의 개인 키가 외부에 유출되었다고 가정해야 하며, 이에 따라 자신의 잔고를 즉시 옮겨야 한다.

 

“2018년 4월, 마이대시월렛이 스크립트 호스팅 웹사이트인 GreasyFork에서 외부 스크립트를 로딩하도록 수정되었습니다. 이와 같은 방식은 비정상적인 방식은 아니지만 안전한 것은 아닌 것으로 알려져 있으며, 이는 특정 버전이 아닌 최신 버전의 스크립트를 레퍼런스 로드할 때 더욱 그러합니다. 2019년 5월 13일, 한 해커가 스크립트 원본 계정인 Jixun Moe의 GreasyFork 계정에 침입하여 사용자의 개인 키를 외부 서버에 보낼 수 있도록 하는 코드를 추가하였습니다. 이 변경은 2019년 7월 12일 해당 해커가 개인 키를 이용하여 사용자의 자금을 옮기려고 시도하면서 감지되었습니다. 마이대시월렛은 대시 코어 그룹이 관리하지 않으며, 대시 네트워크 자체는 전혀 손상되지 않았습니다.”

 

Leon White의 도움을 받은 Phillipp Engelhorn이 대시 포럼에 남긴 게시물에 따르면 ‘제3자 코드 리뷰가 부족하여 마이대시월렛이 구현한 불안정한 코드 실행이 1년 이상 감지되지 않았다’고 한다. 그는 앞으로 ‘개인 키를 다루는 모든 코드가 사용자의 자금을 수용하기 전까지 완전한 리뷰를 받게 될 것’이며 ‘마이이더월렛(MyEtherWallet)이 구현한 모범 사례와 유사하게, 로컬 키스토어 파일을 사용하기 보다 하드웨어 지갑을 사용해야 할 것’이라고 전했다.

 

대시 코어 그룹, 사용자에게 경고를 전달하고 상황을 완화하기 위해 지원하다

 

우선 대시 코어 그룹은 이와 같은 취약점의 위험도를 완화하기 위해 ‘대시 코어 그룹이 출시한 모든 소프트웨어는 오픈 소스이며, 출시 이전에 엄격한 품질 테스트를 거쳐야 함’을 보장한다. 제3자 취약점은 오픈 소스 소프트웨어에 있어 위험도를 갖게 되는데, 이는 누구나 해당 코드를 무료로 사용하고 자신만의 방식으로 변경하거나 자체적 응용 프로그램을 구현할 수 있기 때문이다. 그러나, 오픈 소스 소프트웨어는 손상 내용이 알려지지 않거나 공개되지 않는 비공개 코드와 비교할 때 사적 개인에 의해 이와 같은 취약점이 발견될 수 있다는 이점을 가지고 있다.

 

둘째, 대시 포럼의 Michael Seitz에 따르면, 대시 코어 그룹은 ‘개발자가 이 이슈를 해결하고 법 집행에 필요한 제반 정보를 수집할 수 있도록 돕고 있다’고 한다. 이는 발견되는 취약점이 대시 코어 그룹 혹은 대시 블록체인과 관련되지 않았다고 하더라도 발견된 이슈를 해결하는 데 도움을 줌으로써 대시와 관계된 제품을 보증하고자 노력하고, 이로써 커뮤니티 회원들이 안전할 수 있음을 확인할 수 있는 긍정적인 신호가 된다. 이는 또한 제3자 거래소나 벤더가 대시를 통합하는 이유가 되기도 한다. 즉, 대시 코어 그룹은 물리적 사람들로 구성되어 있어 문제가 발생하는 경우 의지하거나 질문할 수 있다는 것이다.

 

탈중앙화 시스템은 높은 수준의 사용자 인식이 필요하다

 

암호화폐는 오픈 소스 및 탈중앙화를 특성으로 하도록 설계되었으며, 이에 따라 특정인이나 그룹이 책임을 지지 않는다. 이로써 암호화폐 네트워크는 허가가 필요하지 않은 접근성을 갖게 되지만, 다른 한 편으로 제3자 제품이 개발 및 사용되는 경우 적절하고 엄격한 테스트를 거치지 않는 경우도 발생한다. 어떠한 사용자라도 신뢰할 수 있고 견고한 소프트웨어를 사용할 수 있으나 엉망으로 설계된 서비스 및 사기 기타 악의적 응용 프로그램의 희생자가 될 수도 있다. 이 때문에 탈중앙화를 비롯한 암호화폐 사용의 이점을 모색하는 사용자들은 신의 성실을 통해 충분한 검증을 받지 않았을 가능성을 가지고 있는 위험도에 관해 책임을 질 수 있어야 하며, 그 보안 및 자금에 대한 안전성을 확보하기 위해 추가적인 예방 조치 역시 취해야 할 것이다.