本文へスキップ
動画

開発者を狙う偽の仕事の依頼:私の 2 つのケース、FBI が挙げる危険信号、そして対策

2026 年 6 月、偽クライアントのテストプロジェクトが npm の依存パッケージにマルウェアを隠しており、私の Mac で何日も動き続けました。10 月には別の偽クライアントが、ターミナルにコマンドを貼り付けるよう求めてきました。53 秒の解説動画:手口、FBI が挙げる危険信号、そしてそれを止める 3 つの習慣。

公開
読了時間
4 分
タグ
  • security
  • malware
  • developer
  • explainer
目次
  1. 6 月:テストプロジェクトそのものがマルウェアだった
  2. 10 月:カメラはオフ、「この会議アプリを入れて」
  3. 知られた手口
  4. なぜ人が狙われるのか
  5. 危険信号
  6. 対策
  7. そのあとにつくったもの
  8. 出典

要点: 2026 年、偽の「クライアント」が 2 回、私に自分たちのコードを実行させようとしました。6 月は成功してしまいました。テストプロジェクトは npm の依存パッケージの 1 つにマルウェアを隠しており、それが何日も動き続け、どのアンチウイルスも何も言いませんでした。10 月は断りました。どちらも、FBI が北朝鮮と結びつけている手口に沿っていました。私の 2 件を正式に特定した人はいませんが、その手口と一致しています。FBI の助言は、面接のコードを仕事用のコンピューターで実行しないこと、どうしても必要なら別の仮想マシンを使うこと、そして採用側が誰なのかを別の経路で確かめることです。

6 月:テストプロジェクトそのものがマルウェアだった

詳しい経緯は以前の記事 Upwork の偽案件 2 件と、感染した Mac 1 台:北朝鮮の 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 の依存パッケージの 1 つに隠されていた。)

しばらく気づきませんでした:"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 も従来のアンチウイルスも、2 回とも何の反応もしなかった。)

10 月:カメラはオフ、「この会議アプリを入れて」

4 か月後、新しい「クライアント」が現れました。今度は偽の会社からです。ビデオ通話では "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 をダウンロードする。私はインストールしなかった。)

コマンドとアドレスは、動画にもこの記事にも載せていません。これは餌を見抜くための話で、それが何をインストールするかの話ではないからです。

知られた手口

振り返ると、2 回の試みは同じ形をしていました:"Both attacks followed the same playbook: contact, build trust, the ask, the payload. The second time, I stopped at the payload."(2 つの攻撃は同じ手順をたどった:接触、信頼の構築、依頼、ペイロード。2 回目、私はペイロードで止まった。)

この形は、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 は指標の 1 つとしてこれを挙げています:"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 リポジトリの実行を伴う「採用前テスト」やデバッグ課題を求められること。)

私自身の 2 件から、さらに 2 つ。カメラをオフにしたまま、聞いたこともないアプリに切り替えたがる「クライアント」。そして、ターミナルにコマンドを貼り付けるよう求められることです。

対策

  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 は無料でオープンソースです。上の習慣の代わりではなく、そのあとに来るものです。

出典

動画はコードでアニメーションを作り、台本は AI の手を借りて書きました。上の事実はすべて出典で確認しています。プロジェクトのツリーと赤くなった依存パッケージ、「脅威なし」の盾、ビデオ通話、伏せ字にしたターミナルのコマンドはイメージです。この記事が説明しているのはリスクと対策で、攻撃の手順ではありません。動画は英語です。制作には Shotloop を使いました。コードで解説動画をつくり、1 ショットずつ直せる、私の無料 Mac アプリです。

フォローする

つくったもの、実験、学んだことを随時シェアしています。

新しい動画は YouTube に、短いメモは X に。ここの記事はすべて両方にリンクしています。

YouTube