암호화폐를 위협하는 트로이 목마
암호화폐와 관련된 악성코드라고 하면, 몰래 채굴을 하거나 컴퓨터를 잠그고 코인을 요구하는 공격자를 떠올릴 수 있어요. 하지만 자산이나 시드 구문을 훔치기 위해 사용되는 다양한 악성 프로그램도 존재해요.
악성코드는 자산을 탈취하거나 니모닉 구문을 알아내고, 심지어 하드웨어 지갑에 변조된 펌웨어를 설치할 수도 있어요(이론적으로). 이들이 어떻게 작동하고, 어떤 방식으로 기기를 노리는지 살펴볼게요.
작동 방식
공격자는 트로이 목마를 이용해 사용자가 눈치채지 못하게 악성코드를 설치해요. 트로이 목마의 전략은 '유용하고 안전해 보이는 무언가'로 위장하는 데 있어요. 애플리케이션, 게임, 문서 등 다양한 형태일 수 있죠. 침투 시점에는 해로운 기능이 없더라도, 이후 자동으로 또는 공격자의 명령에 따라 '페이로드'를 다운로드해 해커가 원하는 동작을 수행해요. 이런 트로이 목마를 "다운로더"라고 부르고, 반대로 다운로드 없이 악성 앱이 미리 내장된 형태는 "드로퍼"라고 해요. 트로이 목마의 종류는 많지만, 이 두 가지를 알아두면 충분해요.
유포 방식
공격자는 주로 소셜 엔지니어링과 피싱 기법을 사용해요. 예를 들어, 유명 앱의 가짜 웹사이트를 만들어 감염된 프로그램 설치 파일을 배포하거나, 개발자를 사칭해 이메일로 업데이트나 '수정된' 버전을 설치하라고 유도하기도 해요. 이 경우 앱 자체는 정상적으로 작동하지만, 동시에 악성코드가 컴퓨터나 스마트폰에 설치돼요.
공식 앱스토어를 통한 배포도 있어요. 공격자는 안드로이드용 간단한 유틸리티를 만들어 앱스토어에 등록하고, 사용자가 설치하길 기다려요. 하지만 앱스토어에 등록되기 어렵기 때문에, 감염된 APK 파일이 대체 플랫폼을 통해 유포되는 경우가 많아요.
스스로 퍼지는 트로이 목마도 있어요. 예를 들어, Emotet 트로이 목마는 감염된 컴퓨터의 Outlook 데이터를 이용해 주소록에 있는 연락처로 감염된 파일이나 링크를 자동으로 전송해요.
암호화폐와 트로이 목마
트로이 목마는 다양한 방식으로 암호화폐 자산을 노릴 수 있어요. 몇 년 전, 카스퍼스키 랩 연구진이 CryptoShuffler 트로이 목마를 발견했어요. 이 악성코드는 매우 단순했는데, 감염된 컴퓨터에서 클립보드를 감시하다가 Bitcoin, Ethereum, Zcash, Monero, Dash, Dogecoin 지갑 주소로 보이는 문자열을 발견하면 공격자의 지갑 주소로 바꿔치기했어요. CryptoShuffler가 발견될 때까지 공격자는 14만 달러(현재 환율로는 50만 달러 이상)를 훔쳤어요.
최근 사례도 있어요. ESET 연구진은 텔레그램과 WhatsApp 메신저의 트로이 목마 버전을 배포하는 가짜 웹사이트를 다수 발견했어요. 일부 트로이 목마는 CryptoShuffler와 동일하게 동작했고, 다른 일부는 시드 구문을 찾는 데 특화됐어요. 이들은 컴퓨터와 스마트폰에서 이미지를 검색해 OCR 모듈로 시드 구문과 유사한 텍스트를 추출했어요. 즉, 사용자가 니모닉 구문을 캡처하거나 종이에 적어둔 것을 사진으로 찍어 보관한 경우를 노린 거죠.
트로이 목마는 데이터를 '직접' 훔치지 않고, 다단계 공격의 일부로 활용되기도 해요. 예를 들어, 스마트폰에 침투한 트로이 목마가 기기가 홈 네트워크에 연결됐는지 확인한 뒤, 공유기 비밀번호를 추측해 성공하면 DNS 서버를 공격자의 주소로 바꿔요. 이러면 피해자는 실제 암호화폐 지갑 사이트 대신 피싱 사이트로 쉽게 유도될 수 있어요.
하드웨어 지갑 해킹
하드웨어 지갑 해킹은 이론적으로 가능하지만, 실제로 성공한 사례는 없어요. Ledger Nano S를 해킹한 Saleem Rashid는 가능한 공격 시나리오를 설명했어요. 트로이 목마가 컴퓨터에 설치된 뒤, 사용자가 암호화폐 지갑을 연결하면 펌웨어 업데이트가 필요하다는 경고를 띄워요. 사용자가 동의하면, 악성코드가 변조된 소프트웨어를 지갑에 설치하는 방식이에요.
이 시나리오는 어디까지나 가정일 뿐이고, 당시 Nano S에 취약점이 있었을 때 제시된 사례예요. 이후 여러 차례 펌웨어 업데이트가 이뤄져 해당 취약점은 모두 수정됐어요. 하지만 앞으로 새로운 취약점이 발견될 수 있으니, 이런 공격 가능성을 완전히 배제할 수는 없어요.
스스로를 지키는 방법
암호화폐 자산을 노리는 다양한 악성코드가 존재한다는 점을 꼭 기억해야 해요. 예를 들어, 스파이웨어는 사용자가 암호화폐 서비스 웹사이트를 방문하는 순간 화면을 캡처하도록 설정될 수 있어요. 만약 새 지갑을 만들면, 공격자가 시드 구문이 담긴 스크린샷에 접근할 수 있죠.
또 하나 걱정스러운 점은, 시간이 지날수록 이런 '비즈니스'에 진입하는 장벽이 점점 낮아지고 있다는 거예요. 일부 악성코드는 구매 후 간단히 목적에 맞게 변형해서 사용할 수 있어요.
아마 익숙한 내용일 수 있지만, 지금으로서는 아래와 같은 기본 수칙이 가장 효과적인 보호책이에요.
- 신뢰할 수 있는 백신 프로그램을 설치하세요(Windows Security만으로는 부족해요). 무료 버전도 도움이 돼요.
- 스마트폰에는 공식 앱스토어 이외에서 받은 소프트웨어를 설치하지 마세요. 유명 앱의 웹사이트에서 APK 파일 설치를 권장한다면 특히 주의하세요.
- 유료 소프트웨어의 불법 복제판은 설치하지 마세요. '리패커'가 트로이 목마를 심었을 수 있어요.
- 암호화폐를 다룰 때 '루팅'된 스마트폰은 사용하지 마세요. 슈퍼유저 권한은 악성코드 설치를 훨씬 쉽게 만들어요.
- 업데이트(특히 보안 업데이트)는 번거로워도 반드시 설치하세요. 업데이트를 통해 트로이 목마가 악용하는 취약점이 해결돼요.
- 신뢰할 수 있는 콜드 지갑, 예를 들어 Tangem Wallet을 사용하세요. Tangem Wallet은 EAL6+ 인증을 받았으며, 해킹이 불가능해요. 또한 시드 구문이 없으니 유출 걱정도 없어요.