# 개발자를 해킹하는 가짜 채용 제안: 제가 겪은 두 사례, FBI가 꼽은 위험 신호, 그리고 대책

> 2026년 6월, 가짜 클라이언트의 테스트 프로젝트가 npm 의존성에 악성코드를 숨겼고, 그 코드는 며칠 동안 제 Mac에서 돌았습니다. 10월에는 또 다른 가짜 클라이언트가 터미널에 명령어를 붙여 넣으라고 했습니다. 53초짜리 설명 영상: 수법, FBI가 꼽은 위험 신호, 그리고 이를 막는 세 가지 습관.

- URL: https://oliverz.dev/ko/videos/fake-job-offer
- Author: Oliver Zhang (https://oliverz.dev)
- Language: ko
- Published: 2026-10-31
- Tags: security, malware, developer, explainer
- Video: https://www.youtube.com/shorts/ziU4qzdx9ig

> **요약:** 2026년에 두 번, 가짜 "클라이언트"가 제게 자기 코드를 실행시키려 했습니다. 6월에는 성공했습니다. 테스트 프로젝트가 npm 의존성 하나에 악성코드를 숨겼고, 그 코드는 며칠 동안 돌았으며, 어떤 백신도 아무 말을 하지 않았습니다. 10월에는 거절했습니다. 두 번 모두 FBI가 북한과 연결 짓는 수법을 따랐습니다. 제 두 사례의 배후를 공식적으로 지목한 곳은 없지만, 그 수법과 일치합니다. FBI의 조언은 이렇습니다. 면접용 코드를 업무용 컴퓨터에서 실행하지 말고, 꼭 실행해야 한다면 별도의 가상 머신을 쓰고, 채용하는 사람이 누구인지 다른 채널로 확인하라는 것입니다.

## 6월: 테스트 프로젝트가 곧 악성코드였다

전체 이야기는 이전 글 [가짜 Upwork 일자리 두 번, 감염된 Mac 한 대](https://oliverz.dev/ko/blog/upwork-contagious-interview)에 있습니다. 짧게 말하면, 프리랜서 사이트의 한 "클라이언트"가 제게 코딩 테스트를 줬습니다.

"He sent over a Node.js test project called "Online_Store". The malicious code was hidden in one of its npm dependencies."("Online_Store"라는 Node.js 테스트 프로젝트를 보내 왔습니다. 악성코드는 그 npm 의존성 중 하나에 숨겨져 있었습니다.)

한동안 알아채지 못했습니다: "By the time I noticed, it had been running in the background for days."(알아챘을 때는 이미 며칠째 백그라운드에서 돌고 있었습니다.)

그리고 아무것도 경고하지 않았습니다: "neither macOS's built-in XProtect nor traditional antivirus made a sound, either time."(두 번 모두 macOS 기본 XProtect도, 기존 백신도 아무 경고를 하지 않았습니다.)

## 10월: 카메라는 끄고, "이 회의 앱을 설치하세요"

넉 달 뒤, 새로운 "클라이언트"가 나타났습니다. 이번에는 가짜 회사 소속이었습니다. 화상 통화에서 "He kept his camera off"(그는 카메라를 계속 꺼 두었습니다). 그러고는 "we had to switch to a meeting app called "Zeff""("Zeff"라는 회의 앱으로 바꿔야 한다고 했습니다). 그 앱을 받으려면 저는 "run a `curl | bash` command in the terminal, or download a DMG. I didn't install it."(터미널에서 `curl | bash` 명령을 실행하거나, DMG를 내려받아야 했습니다. 저는 설치하지 않았습니다.)

명령어와 주소는 영상에서도, 이 글에서도 뺐습니다. 이 글은 미끼를 알아보는 법에 관한 것이지, 그것이 무엇을 설치하는지에 관한 것이 아닙니다.

## 알려진 수법

돌이켜 보면 두 시도는 같은 모양이었습니다: "Both attacks followed the same playbook: contact, build trust, the ask, the payload. The second time, I stopped at the payload."(두 공격은 같은 수법을 따랐습니다. 접촉, 신뢰 쌓기, 요청, 페이로드. 두 번째에는 페이로드 단계에서 멈췄습니다.)

FBI가 경고해 온 것이 바로 그 모양입니다. FBI의 공공 서비스 공지 PSA 240903의 제목은 "North Korea Aggressively Targeting Crypto Industry with Well-Disguised Social Engineering Attacks"(북한, 교묘하게 위장한 사회공학 공격으로 암호화폐 업계를 공격적으로 노려)입니다. 제 사례는 이 공지가 설명하는 패턴과 일치합니다. 다만 공식적으로 배후를 지목한 곳은 없으므로, 북한이 저를 해킹했다고 주장하지는 않습니다.

## 왜 사람을 노리는가

Binance 해킹 이후 BBC와 이야기하면서, Aikido의 Mackenzie Jackson은 하나의 변화를 설명했습니다. BBC의 표현으로는: "He says hackers have shifted from going after company infrastructure to going after the machines of the people who run it."(그는 해커들이 회사 인프라를 노리던 데서 그 인프라를 운영하는 사람들의 기기를 노리는 쪽으로 옮겨 갔다고 말한다.)

방법에 대해서는: "Jackson says techniques vary, but include tricking workers into installing malware under the pretext of a job interview, or interfering with code that developers rely on."(Jackson은 기법이 다양하지만, 채용 면접을 구실로 직원을 속여 악성코드를 설치하게 하거나, 개발자들이 의존하는 코드에 손을 대는 방식 등이 있다고 말한다.)

Jackson은 흔한 기법을 설명한 것이지, Binance가 어떻게 뚫렸는지를 말한 것은 아닙니다.

## 위험 신호

FBI는 여러 지표 가운데 이것을 꼽습니다: "Requests to conduct a "pre-employment test" or debugging exercise that involves executing non-standard or unknown Node.js packages, PyPI packages, scripts, or GitHub repositories."(비표준이거나 알 수 없는 Node.js 패키지, PyPI 패키지, 스크립트, GitHub 저장소를 실행해야 하는 "채용 전 테스트"나 디버깅 과제를 요청하는 경우.)

제 두 사례에서 두 가지를 더 꼽자면, 카메라를 계속 끈 채 들어 본 적 없는 앱으로 옮기자고 하는 "클라이언트", 그리고 터미널에 명령어를 붙여 넣으라는 요청입니다.

## 대책

1. **업무용 컴퓨터에서는 실행하지 않기.** FBI: "Avoid taking pre-employment tests or executing code on company owned laptops or devices."(회사 소유의 노트북이나 기기에서 채용 전 테스트를 하거나 코드를 실행하지 마라.)
2. **코드를 꼭 실행해야 한다면 분리하기.** FBI의 조언을 요약하면, 회사와 연결되지 않은 기기에서 가상 머신을 쓰거나, 테스트를 내는 쪽이 제공한 기기를 쓰라는 것입니다.
3. **다른 채널로 확인하기.** FBI: "Develop your own unique methods to verify a contact's identity using separate unconnected communication platforms."(서로 연결되지 않은 별도의 커뮤니케이션 플랫폼을 이용해 연락 상대의 신원을 확인하는 자신만의 방법을 마련하라.)

## 그 뒤에 만든 것

그 뒤 저는 도구를 하나 만들었습니다: "So I built a small macOS menu bar app called Tsuba"(그래서 Tsuba라는 작은 macOS 메뉴 막대 앱을 만들었습니다). 아이디어는 이렇습니다: "before unfamiliar code runs for the first time, it takes a look for you."(낯선 코드가 처음 실행되기 전에 대신 한번 살펴봅니다.) [Tsuba](https://oliverz.dev/ko/products/tsuba)는 무료이며 오픈 소스입니다. 위의 습관을 대신하는 것이 아니라, 그 습관 다음에 오는 것입니다.

## 출처

- Oliver Zhang, [가짜 Upwork 일자리 두 번, 감염된 Mac 한 대](https://oliverz.dev/ko/blog/upwork-contagious-interview), oliverz.dev, 2026년 10월 28일
- FBI, [PSA 240903: North Korea Aggressively Targeting Crypto Industry with Well-Disguised Social Engineering Attacks](https://www.ic3.gov/PSA/2024/PSA240903), 2024년 9월 3일
- BBC News, [Binance 해킹 라이브 페이지](https://www.bbc.com/news/live/cqrmynd3042gt), 2026년 10월 30일

영상은 코드로 애니메이션을 만들었고, 대본은 AI의 도움을 받아 썼습니다. 위의 모든 사실은 출처와 대조해 확인했습니다. 설명을 위한 연출: 프로젝트 트리와 빨간 의존성, "위협 없음" 방패, 화상 통화, 가려진 터미널 명령어. 이 글은 위험과 대책을 설명할 뿐, 공격 단계를 설명하지 않습니다. 영상은 영어로 되어 있습니다. 영상은 [Shotloop](https://oliverz.dev/ko/products/shotloop)으로 만들었습니다. 코드로 설명 영상을 만들고 한 샷씩 고칠 수 있는 제가 만든 무료 Mac 앱입니다.
