
가짜 채용 제안: 면접 자체가 공격일 때
한 채용 담당자가 암호화폐 회사의 고연봉 직무에 관해 메시지를 보내옵니다. 대화는 전문적이고, 회사도 실제처럼 보이며, 다음 단계는 짧은 기술 과제입니다. 저장소를 클론하고, 의존성을 설치하고, 실행한 뒤 버그를 고치는 것이죠. 혹은 화상 통화일 수도 있는데, 면접관이 먼저 회의 앱이나 "카메라 수정 도구"를 설치해 달라고 요청합니다.
점점 더 많은 사람에게 바로 그 순간이 자신의 컴퓨터와 암호화폐가 탈취된 순간이었습니다. 가짜 채용은 이제 공격자가 노리는 바로 그 컴퓨터, 즉 개발자와 트레이더, 암호화폐 업계 종사자의 컴퓨터에 악성코드를 심는 가장 효과적인 방법 중 하나가 되었습니다.
수법은 이렇게 작동합니다
세부 방식은 다양하지만 핵심은 늘 같습니다.
- 그럴듯한 접근. 전문가 네트워크, 구인 사이트, 채팅 앱 등에서 잘 꾸며진 프로필을 가진 채용 담당자나 창업자가 메시지를 보냅니다. 때로는 실제 회사를 사칭하고, 때로는 그럴듯한 회사를 지어냅니다.
- 평범해 보이는 절차. 사전 인터뷰, 직무 설명, 연봉 협의가 이어집니다. 경계할 만한 점은 전혀 없으며, 신뢰를 쌓기 위해 며칠씩 이어지는 경우도 많습니다.
- 악성 페이로드를 심는 단계. 무언가를 실행하라는 요청을 받습니다. 저장소에서 받은 코딩 테스트, 검토할 프로젝트, 상대가 보낸 링크의 회의 앱, 또는 통화 중 웹캠이나 오디오 문제를 "고쳐 준다"는 스크립트 등입니다.
- 조용한 탈취. 코드는 지갑 확장 프로그램, 브라우저에 저장된 비밀번호, 파일과 메모 속 복구 문구, 세션 쿠키를 찾아내는 악성코드를 설치한 뒤 이를 외부로 전송합니다. 자금은 당일에 사라질 수도, 몇 주 뒤에 사라질 수도 있습니다.
이 수법이 효과적인 이유는 낯선 코드를 실행하는 것이 기술 면접에서 지극히 평범한 과정이기 때문입니다. 요청이 이상하게 느껴지지 않는 것은, 대개 실제로 이상하지 않기 때문입니다.
악성 부분은 어디에 숨어 있을까
집에서 수행하는 과제 유형에서는 눈에 보이는 코드가 깨끗한 경우가 많습니다. 페이로드는 여러분이 읽지 않을 법한 곳에 숨어 있습니다.
- 의존성. 프로젝트 의존성 목록에 있는 패키지가 설치될 때 코드를 실행합니다.
- 설치 및 빌드 스크립트. 프로젝트를 설치하거나 시작할 때 자동으로 실행되는 훅입니다.
- 난독화된 설정. 설정 파일 안의 길고 읽을 수 없는 문자열이 실행 시점에 디코딩되어 실행됩니다.
- "필수" 도구. 과제에 꼭 필요하다고 안내받는 자체 제작 명령줄 도구, 브라우저 확장 프로그램, 회의 클라이언트입니다.
과제 코드를 한 줄도 빠짐없이 검토하더라도, 설치하는 순간 감염될 수 있습니다.
위험 신호
어느 하나만으로 사기를 증명할 수는 없지만, 여러 개가 겹친다면 확실히 속도를 늦춰야 합니다.
- 기술 단계를 둘러싼 재촉 - "오늘 안에 완료해 주세요", "채용 매니저가 기다리고 있습니다".
- 직무, 팀, 계약에 관한 의미 있는 대화도 하기 전에 코드 실행을 요구합니다.
- 통화에 낯선 소프트웨어 사용 - 들어 본 적 없는 회의 앱이나 카메라, 마이크용 "수정" 스크립트입니다.
- 맞지 않는 세부 정보 - 회사 도메인이 채용 담당자의 이메일과 다르거나, 웹사이트가 최근에 등록되었거나, 팀 소개 페이지에 확인 가능한 인물이 없습니다.
- 주력 컴퓨터를 쓰라는 압박, 또는 격리된 환경을 제안했을 때 불쾌해하는 반응입니다.
- 시장 수준을 크게 웃도는 보수에 비해 직무 설명이 모호합니다.
스스로를 보호하는 방법
- 암호화폐가 있는 컴퓨터에서는 절대 면접 코드를 실행하지 마세요. 별도의 컴퓨터, 가상 머신, 또는 가치 있는 것이 전혀 없는 일회용 클라우드 환경을 사용하세요.
- 낯선 사람이 통화용으로 보낸 링크의 프로그램은 아무것도 설치하지 마세요. 주요 회의 플랫폼은 브라우저에서 작동하므로 특별한 클라이언트가 필요 없습니다.
- 회사를 독립적으로 확인하세요. 공식 사이트와 채용 페이지를 직접 찾아보고, 해당 직무와 채용 담당자가 실제로 존재하는지 확인하세요.
- 비밀 정보를 범용 컴퓨터에 두지 마세요. 복구 문구는 다른 모든 일에 쓰는 컴퓨터의 파일, 메모, 스크린샷, 비밀번호 관리자에 있어서는 안 됩니다.
- 탈취된 컴퓨터는 탈취된 것으로 취급하세요. 의심스러운 것을 실행했다면, 그 컴퓨터에서 접근할 수 있었던 모든 것이 노출되었다고 가정하세요.
이는 잘 짜인 운영 보안 체크리스트와 같은 원칙의 일부입니다. 탈취된 기기 한 대가 닿을 수 있는 범위를 줄이는 것입니다.
두 개의 기기가 도움이 되는 지점
이것이 바로 SSP의 2-of-2 설계가 대비하고 있는 시나리오입니다. 컴퓨터에 있는 악성코드는 그 컴퓨터에 있는 SSP Wallet의 키에 접근할 수 있지만, 혼자서는 자금을 쓸 수 없습니다. 모든 거래에는 휴대폰에 있는 SSP Key의 승인도 필요하기 때문입니다. 도난당한 브라우저 키 하나만으로는 아무것도 옮길 수 없습니다.
다만 이 보호가 무조건적인 것은 아닙니다. 같은 악성코드가 SSP Key 복구 문구까지 찾아낸다면, 즉 그 컴퓨터의 메모, 스크린샷, 파일에 저장되어 있었다면 공격자는 두 키를 모두 손에 넣게 됩니다. 두 복구 문구를 컴퓨터 밖에, 그리고 서로 떨어진 곳에 보관하는 것이 두 번째 키를 의미 있게 유지하는 방법입니다.
그리고 컴퓨터가 탈취되었다면 무언가를 도난당했는지 확인될 때까지 기다리지 마세요. 키 하나가 탈취되었을 때 해야 할 일에서는 두 번째 기기가 아직 자금을 보호하는 동안 새 키로 자금을 옮기는 과정을 안내합니다.
악성 프로그램을 실행했다고 생각된다면
- 컴퓨터의 네트워크 연결을 끊고 민감한 용도로는 더 이상 사용하지 마세요.
- 깨끗한 기기에서 자금을 옮기세요. 키나 복구 문구가 그 컴퓨터에 있었던 모든 지갑이 대상입니다.
- 비밀번호를 변경하고 세션을 해지하세요. 이메일, 거래소, 업무 계정이 대상이며 이메일부터 시작하세요.
- 프로필과 메시지를 신고하세요. 처음 연락이 시작된 플랫폼에 신고하고, 실제 회사를 사칭했다면 그 회사에도 알리세요.
- 컴퓨터를 처음부터 다시 설치한 뒤에야 다시 신뢰하세요.
솔직한 요약
가짜 채용 제안이 통하는 이유는 평범한 업무 단계, 즉 다른 사람의 코드를 실행하는 일을 공격으로 바꿔 놓기 때문입니다. 검토를 요청받은 코드는 깨끗할 수 있지만, 그 주변의 의존성, 스크립트, 회의 앱은 그렇지 않을 수 있습니다.
면접 과제는 잃을 것이 없는 컴퓨터에서 하고, 낯선 사람이 링크로 보낸 것은 아무것도 설치하지 말고, 복구 문구는 컴퓨터에서 완전히 떼어 두세요. 두 번째 기기가 모든 거래를 승인한다면, 컴퓨터 한 대가 탈취되더라도 그것은 손실이 아니라 정리하면 되는 문제가 됩니다.


