안녕하세요. 스팀시티 온라인을 담당하고 있는 @hanyeol입니다.
시작은 @asbear님과의 스팀컨넥트 보안에 관한 댓글 논쟁이었습니다. 스팀콘넥트를 처음 접했을 때 든 생각은, 이런 걸 암호화폐 시스템의 서비스로 제공해도 되는지에 대한 의아함이었습니다. 보안에 대한 저의 관점에서 봤을 때, 스팀컨넥트는 보안에 매우 취약하게 설계된 서비스였습니다. 웹페이지로 지갑 기능을 제공하는 서비스보다도 더 보안에 취약한 사용자 경험을 제공하는 서비스였거든요. 물론 개발자들은 편하죠. 하지만 편의성을 위해 보안 수준을 희생한 서비스였습니다. 이 때는 제가 소극적으로 생각했습니다. 나만 안쓰면 되지, 뭐, 제가 스팀 관계자도 아닌 마당에 이런 걸 이슈화할 필요가 있나 싶었으니까요.
하지만 @asbear님과의 댓글 논쟁을 하면서, 생각이 바뀌었습니다. 저는 스팀콘넥트를 제공하는 사람들과 이를 이용하는 개발자들이 스팀콘넥트가 왜 위험한지는 알고 쓴다고 생각했습니다. 편의를 위해 보안을 희생했으니, 좀 더 조심하게 사용하고, 사람들에게 그 위험성 정도는 고지해가며 사용하는 거죠. 하지만 @asbear님은 정말로 스팀콘넥트가 안전하다고 생각하시는 것으로 보였습니다. 게다가 스팀컨넥트가 1위 증인에 의해 만들어졌다는 사실도 알게 되었습니다. 아, 그래서 아무런 비판이 없나? 근데 큰일인데? 이렇게 스팀컨넥트가 안전하다는 믿음으로 광범위하게 사용하게 되면, 게다가 포스팅만이 아니라 스팀페이처럼 송금 기능까지 제공하는 서비스가 늘어난다면, 결국 스팀 블록체인의 근간까지 흔들 커다란 보안 사고가 터지겠구나 싶었습니다.
그래서 댓글에서 물러서지 않았습니다. @asbear님을 포함하여 그 댓글을 보는 사람들이 스팀컨넥트에 대한 경각심을 가져주기를 바랬습니다. 하지만 실패한 것 같습니다. 스팀컨넥트의 보안 취약성에 대해서 인정하고 해결 방안을 찾기를 바랬는데, 돌아온 대답은 스팀컨넥트는 안전하다는 말이었습니다. 아, 어떻게 할까요.
떠오르는 방법은 하나 밖에 없었습니다. 스팀컨넥트가 보안에 얼마나 취약한 지 직접 눈으로 보여주자. 그래서 앱을 하나 만들었습니다. QR코드 스캐너 앱입니다. 앱스토어/구글플레이에 잔뜩 깔려있는 앱 중에 하나죠. 스팀페이는 QR코드를 사용하니, 사람들은 QR코드 스캐너를 사용할 것이고, 그렇게 사용하는 QR코드 스캐너 앱 중 하나가 나쁜 마음을 먹고 스팀페이를 통해 사용자의 액티브 키를 훔치는 시나리오를 떠올렸습니다.
1시간 만에 만든 앱인데, QR코드 -> 스팀페이 -> 스팀컨넥트를 통해 액티브 키 혹은 비밀번호를 탈취하는 데는 아무런 문제가 없었습니다. 그 탈취과정을 찍은 영상을 공유하겠습니다.
가짜 스팀페이 페이지를 만든게 아닙니다. 가짜 스팀컨넥트 페이지로 피싱한 것도 아닙니다. 정상적인 경로로 스팀페이를 사용했고, 안전하다는 스팀컨넥트를 이용했습니다. 하지만 저 앱은 이미 스팀컨넥트 웹페이지의 모든 제어권을 갖고 있죠. 그렇게 액티브 키가 쉽사리 유출되었습니다.
이 보안 문제가 저 앱 때문에 발생했다고 생각하시나요? 아닙니다. 웹페이지에서 송금할 때마다 직접 액티브 키를 입력받게 하는 스팀컨넥트의 취약한 보안 설계 때문에 발생한 일입니다. 제가 보여드린 방법은 스팀컨넥트의 취약한 보안 설계를 뚫을 수 있는 수많은 방법 중 그저 하나일 뿐입니다.
그래서 부탁드립니다. 다시 한번 생각해봐주세요. 스팀컨넥트를 이용한 송금 기능이 매우 큰 보안의 위험에 노출되어 있다는 건 변할 수 없는 사실이기 때문입니다.
긴 글 읽어주셔서 감사합니다.