명필은 붓을 안 가린다는 말은 오래전 이야기다. 게이머에게 장비는 중요하다. 특히 필드 몬스터를 잡으러 갈 때 나무 막대기보다 투 핸디 소드와 같은 검을 사용하여 잡기가 더 쉽다는 것은 게임을 안 해도 누구나 알 수 있는 사실이다. 따라서 게이머에겐 마우스, 키보드는 중요하다. 더욱이 성능 좋은 키보드는 게임에서 승리와 패배 사이의 차이를 만들어 낸다는 말도 있지 않은가. 게이머들에게 키보드와 마우스는 전쟁을 나가기 전에 하나의 장비이다. 특히나 좋은 장비는 전사들 사이에서 입소문이 돌며 빠르게 퍼지는데, 인기리에 널리 판매되었던 키보드가 나를 도청하는 장치라면 어떨 것 같은가. 키보드로 우린 게임을 하고, 로그인도 하는데, 이 정보가 다른 이에게 전달된다면, 그건 아마도 소름 돋는 일일 것이다. 하지만 실제로 이와 비슷한 일이 일어났다. 며칠 전, 게이머들 사이에서 많이 사용되는 기계식 키보드에서 사용자의 정보를 수집하는 키로거(Keylogger)가 발견되었다.[1] 이 키로거는 사용자가 키보드로 입력하는 동안 해당 데이터를 중국에 있는 서버로 보냈다.[2] 과연 어떻게 된 일인지 자세히 얘기해보자.
문제의 키보드, Mantistek GK2 기계식 게이밍 키보드는 약 60달러 이하에 가격으로 시중에 판매되고 있는 인기 있는 기계식 키보드다.[3][4] 국내에서는 약 25만 원 정도로 판매되는 것으로 확인되었는데[5], 이 사건이 터지고 난 뒤에 본 가격이라 떨어진 가격인지 아니면 원래 그런 가격이었는지는 확실하지 않다. 중국에서 만들어진 이 키보드는 9가지의 백 라이트로 더 화려하게 전환할 수도 있고[6], 대체로 무난하게 사용할 수 있어 이를 사용하는 사람들의 평을 들어보면 대체로 만족하는 평이다.[7] 아마도 얼마나 많은 이가 사용하고 있을지 모르지만, 가히 그 숫자가 적지 않으리라 생각이 든다.
그렇다면 키보드에 키로거가 있다는 것을 어떻게 알게 되었을까. 어느 한 포럼에서 사용자 중 한 명이 이 키보드에 키로거가 있는 것 같다고 가능성을 던졌다.[8] 이에 대해 너도나도 여러 사용자가 그 말에 동조하였고, 이를 분석하기에 이르렀다. 그 중 Tom 's Hardware라는 익명의 사용자는 키보드를 분석한 결과, 키보드에서 사용하는 드라이버인 MANTISTEK Cloud Driver 프로세스가 중국에 있는 IP 주소 47.90.52.88에 있는 서버로 정보를 보내고 있다고 지적했다.[9] 즉, Cloud Driver에 있는 키로거를 통해 사용자의 정보를 분석하여 수집하고, 민감한 정보는 Alibaba에 연결된 서버로 전송된다는 것이다. 또한, 해당 주소에 접속하면 ‘Cloud mouse platform background management system’이라고 적힌 로그인 페이지와 함께 페이지에는 Shenzhen Cytec Technology Co., Ltd.라며 저작권을 보유하고 있다고 적혀있었다고 한다.[10]
Tom 's Hardware가 좀 더 면밀하게 분석한 결과, Mantistek 제품은 사용자가 누른 키보드의 내용을 수집하여 전송하는 것이 아니라, 그 대신에 사용자가 키를 누른 횟수를 캡처하여 이 데이터를 온라인 서버에 보내는 것이었다. 또한, 키로거는 이러한 데이터를 수집하여 ‘/cms/json/putkeyusedata.php’와 ‘/cms/json/putuserevent.php’ 이 두 위치로 보냈고, 이 과정을 스크린 샷으로 찍어 포럼에 올렸다.[11] 전송되는 데이터가 다행히도 사용자에 대한 계정 정보와 같은 민감한 정보는 아니었지만, 제작사의 악의적인 의도가 없다고 하더라도 충분히 사용자의 사생활을 침해하고 민감한 정보를 유출할 수 있는 보안 위험에 빠질 수 있는 문제였다. 더욱이, Alibaba 는 Google 및 Amazon과 같은 클라우드 서비스도 판매하기 때문에 이 수집된 정보가 반드시 Alibaba 자체로 전송되는 것이 아니라 클라우드 서비스를 사용하는 사용자에게 전송될 가능성도 배제하지 못할 위험성이었다.[12]
정리하면, Alibaba 서버에 전송된 데이터는 키를 눌러 나오는 그 정보 대신 각 키를 누른 횟수와 관련된 데이터를 수집하여 내보내는 것이었다. 아마도 이 데이터는 키보드의 주요 스위치 수명을 확인하는데 사용되었을 것이고, 이는 키보드 제작사에서 좀 더 오래가는 제품 기술의 연구를 위해 넣었을 것으로 보인다. 즉, 키보드의 키 별로 내구성을 차등화하기 위해 어떤 키가 몇 번 눌렸는지 카운팅하여 Alibaba로 전송한다는 것이다. 그리고 이 키로거는 키보드의 기기 안에 있는 것이 아니라 키보드를 사용하기 위해 설치하는 cloud driver에 존재하여 키로거가 설치되었다. 결과적으로 키로거를 통해 제조사는 어떤 키를 많이 사용하였는지 알고 싶었던 것이다. 참으로 너무 안일하게 개발하지 않았나 싶다.
이 사건에서 크게 다뤄야 할 큰 문제는 MantisTek가 의도한 목적과 상관없이 사용자에게 키로거에 동의하는 것을 요구하지 않았기 때문에 이는 명백한 사생활 침해라는 점이다. 소프트웨어에서 데이터가 나가는 연결은 사용자가 무엇을 눌렀는지 그 데이터를 확보하려고 시도하는 나쁜 녀석들에게 공격이 가능한 포인트를 열어준 셈이다. 만약, 키로거가 단순히 키 눌림에 대한 카운팅이 아니라 눌린 키의 정보가 들어있다면 키보드도 안심할 수 없을 것이다.
그렇다면 만약 지금 내가 사용하고 있는 키보드가 MantisTek 키보드라면 이를 어떻게 막을 것인가. 가장 좋은 방법은 역시 키보드를 사용하지 않는 것이 안전하지만, 부득이하고 급하게 그럴 수 없다면 MantisTek 클라우드 드라이버 소프트웨어가 백그라운드에서 실행되고 있는지 확인부터 하자. 또한, 방화벽에서 실행 가능한 CMS.exe를 차단하고, 고급 보안 기능을 갖춘 Windows Defender 방화벽에서 MantisTek 클라우드 드라이버에 대한 새 방화벽 규칙을 추가하여 데이터가 유출되는 것을 보호할 수도 있다.[13]
만약, 이와 같은 종류의 키로거가 숨겨져있는 것에 대한 확인을 원할 경우, 네트워크 모니터링 도구를 다운로드하여 확인할 수도 있을 것이다. 예를 들어, 네트워크 모니터링 도구인 GlassWire는 경고 탭에서 인터넷에 연결하는 모든 프로그램을 보고, 방화벽 탭에서 이러한 연결을 차단할 수 있을 것이다. 또한 모든 데이터 추적을 사용하지 않도록 설정한 경우에는 Windows 10이 Microsoft 서버에 보내는 모든 연결과 같은 다른 유형의 연결에도 사용할 수 있다.[14]
이 사건에 대한 글을 보면서 여러 이가 ‘역시 중국’이라는 말을 하는 것을 봤다. 하지만 요즘 대부분의 제품은 중국산으로 만들어지고, 의도하지 않았지만, 그 제품에 없어야 하는 다른 기능을 추가할지도 모른다. 결국, 사용할 수밖에 없는 상황은 앞으로 더 많아질 것이고 꼭 중국만이 아니라 다른 나라의 기업 제품도 안 그러리란 법이 없다. 그런 의미로 사용자들은 기기를 직접 구매하기로 하였을 때 추가적인 보호 장치가 있는지 문제가 있는 것은 아닌지 추가 주의가 필요하다고 여겨진다. 물론 모든 제품에 개인 정보 보호 또는 보안 문제가 있는 것은 아니지만, 주의를 해서 나쁠 건 없지 않은가.