Techsy
お問い合わせ
始める
ブログ一覧へ戻る
cybersecurity

GitHubがVS Code拡張機能によってハッキングされた(2026年5月):開発者が今夜実行すべき60分間の緊急プレイブック

著者: Mert Batur Gürbüz
更新日 May 20, 2026
2 分
目次
GitHubがVS Code拡張機能によってハッキングされた(2026年5月):開発者が今夜実行すべき60分間の緊急プレイブック

GitHubがVS Code拡張機能によってハッキングされた(2026年5月):開発者が今夜実行すべき60分間の緊急プレイブック

2026年5月20日、GitHubは従業員のワークステーションにインストールされた悪意のあるVS Code拡張機能を介して、内部ソースコードリポジトリの約3,800件が流出したことを確認しました。過去14日間にVS Code内でGitHub PATまたはnpmトークンを使用していた場合、次の60分間が重要になります。これがそのプレイブックです。実際に何が起こったのか、あなたが影響を受けているかどうか、そして最初にローテーションすべきものは何かを解説します。

主要なポイント

  • 発生事象: GitHub.comの本番環境が侵害されたわけではありません。従業員のVS Codeに毒化された拡張機能(高い確率でNx Console v18.95.0)がインストールされ、PATが流出し、約3,800の内部リポジトリがダンプされました。
  • 顧客データ: 影響ありません。侵害されたデータはGitHubの内部ソースコードであり、顧客のコードやアカウントではありません。
  • リスク対象者: 概ねUTC時間5月18日12:36から12:47までの11分間のウィンドウ内にVS Code拡張機能をインストールした開発者、またはVS Code内から長寿命のGitHub PATを使用している任何人。
  • 今すぐ行うべきこと: まずGitHub PATをローテーションし、次にnpmトークン、その後AWS/クラウドキーをローテーションします。詳細なプレイブックは以下の「開発者が必須で行うべきこと」セクションをご覧ください。

TL;DR: 次の1時間で行うべき6つのこと

github hacked vscode extension(GitHubがVS Code拡張機能でハッキング)というニュースによる被害範囲を最小限に抑える最も迅速な方法は、毒化された拡張機能がアクセスできる資格情報をローテーションし、ラップトップにインストールされているものを監査し、GitHub組織のログでUTC時間5月18日から20日のウィンドウを確認することです。影響度順に並べた6つのアクションです。

  1. 過去30日間にVS Codeで作成または使用されたすべてのGitHub Personal Access Tokenを取り消す。
  2. npm token revokeを使用してnpmトークンをローテーションし、2FAおよび信頼された公開(trusted publishing)で再発行する。
  3. GHSA-c9j4-9m59-847wからのIoC(ファイルパス、プロセスなど)についてラップトップをスキャンする(コマンドは下記参照)。
  4. code --list-extensions --show-versionsを監査し、正当化できないものはすべてアンインストールする。
  5. devcontainer.jsonで拡張機能のバージョンをピン留めし、組織レベルの許可リストを強制する。
  6. UTC時間5月18日から20日の間に不明なリポジトリへのプッシュがないか、GitHub組織の監査ログを確認する。

時間が2つ分のアクションしか取れない場合は、#1と#3を実行してください。残りは1時間後でも構いません。

GitHubは実際にハッキングされたのか?見出しの誤解を解く

いいえ、2026年5月20日にGitHub.comの本番インフラストラクチャが侵害されたわけではありません。単一のGitHub従業員のワークステーションが、従業員が悪意のあるVS Code拡張機能(高い確率でNx Console v18.95.0)をインストールした後に侵害されました。TeamPCP(UNC6780として追跡)と呼ばれる攻撃者は、GitHubの内部ソースコードリポジトリの約3,800件を流出させました。顧客のコード、顧客のアカウント、およびGitHubの本番サービスは影響を受けていません。

何が起こり、何が起こらなかったのかをより明確に整理します。

発生したこと発生していないこと
従業員のラップトップが毒化されたVS Code拡張機能を介して侵害されたGitHub.comの本番環境が侵害された
約3,800の内部ソースコードリポジトリが流出した顧客のリポジトリやアカウントが操作された
そのエンドポイント上のGitHub従業員の資格情報が盗まれたGitHubのシステムから顧客のPAT、npmトークン、またはOAuthグラントが盗まれた
TeamPCPが身代金を要求した(Tom's Hardwareによる報道)GitHubが支払った(支払いの証拠なし)

なぜこの枠組みが重要なのでしょうか?結論は「github hacked(GitHubがハッキングされた)」ではないからです。真の教訓は、開発者のエンドポイントが現在、あらゆるエンジニアリング組織の弱点となっていることです。あなたのチームが所有するすべてのシークレット(GitHub PAT、npmトークン、AWSキー、Vaultセッション、AIプロバイダーキー)は、EDR(エンドポイント検出・対応)のカバレッジがほとんど、あるいは全くないラップトップ上に存在しています。IDE内で実行される単一の毒化された拡張機能が、それらすべてを継承してしまうのです。

Bleeping Computerで引用されたGitHub自身のスポークスパーソンは、従業員エンドポイントの枠組みと「顧客データなし」というラインを確認しました。Help Net SecurityはTeamPCPの帰属を追加しました。拡張機能の技術的な証拠連鎖はアドバイザリGHSA-c9j4-9m59-847wに記載されています。

GitHub.comが侵害されたのではありません。GitHubの従業員が侵害されたのです。この枠組みを頭に留めたまま、続きをお読みください。

実際に何が起こったのか:2026年5月の侵害タイムライン

github breach 2026(2026年GitHub侵害)の物語は、約48時間にわたる4つの段階で展開されました。毒化された拡張機能が5月18日12:36(UTC)に公開され、11分後に削除され、翌日にGitHubによって検出され、5月20日に公に開示されました。ソース付きのコンパクトなタイムラインは以下の通りです。

時間 (UTC)イベントソース
5月18日, 12:36Nx Console v18.95.0がOpenVSX / Visual Studio Marketplaceに公開(高い確率)StepSecurity / GHSA-c9j4-9m59-847w
5月18日, 12:47悪意のあるバージョンが削除、11分間のウィンドウStepSecurity
5月19日GitHubが従業員エンドポイントの侵害を検出;インシデントを封じ込めるBleeping Computer経由のGitHubスポークスパーソン
5月20日公的开示;TeamPCP / UNC6780が公に帰属を主張Help Net Security, Hackread

この11分間のウィンドウが最も奇妙な詳細です。これは、攻撃者がマーケットプレイスの検出を回避するために拡張機能を回転させたことを示唆しており、Koi Securityが2025年10月のGlassWorm OpenVSXワームで文書化したパターンと同じです。TeamPCP / UNC6780は以前、Trivy、KICS、LiteLLM、TanStack、およびMistralAIに対する2026年の侵害を主張しています。同じグループ、同じプレイブック、異なるターゲットです。

先月はVercelの環境変数でした。今日はGitHubのリポジトリです。私たちが9ヶ月間観察してきたパターンは、被害範囲を外側へとシフトさせ続けています。兄弟インシデントであるVercel侵害対応の内訳もご覧ください。

問題の可能性が高い拡張機能:Nx Console v18.95.0(そしてGitHubが確認しない理由)

GitHubは、従業員エンドポイントの侵害に関与した拡張機能の名前を正式には特定していません。法医学的証拠はNx Console v18.95.0と強く一致していますが、これは依然として高い確率ではあるものの、未確認です。GitHubが別の拡張機能を公に特定した場合、この投稿を更新します。このセクションの残りは、宣言された事実ではなく、入手可能な最良の帰属情報として扱ってください。

Nx ConsoleをGitHubの開示と結びつける4つの状況証拠があります。

  1. タイミングの一致: GHSA-c9j4-9m59-847wアドバイザリのウィンドウ(UTC時間5月18日12:36-12:47)は、GitHub自身の開示におけるGitHub従業員エンドポイント侵害のウィンドウ内にあります。
  2. 法医学的IoCの重複: StepSecurityが公開したNx Consoleペイロード分析(ファイルパス、__DAEMONIZEDなどのプロセス、ネットワークエンドポイント)は、Wizのレポートによると侵害されたエンドポイントで見られたアーティファクトと一致します。
  3. TeamPCPの帰属パターン: TeamPCP / UNC6780は、一貫したペイロード構造を持つVS Codeサプライチェーン空間(2026年のTrivy、KICS、LiteLLM、TanStack、MistralAI)で活動しています。
  4. 11分間の削除ウィンドウ: 攻撃者が公開時刻を制御しているが、マーケットプレイスがすぐにそれを捕捉するというサプライチェーン攻撃の特徴です。

Nx Consoleをインストールしていなかったとしても、まだ安全とは言えません。より広範な攻撃パターン(__DAEMONIZEDプロセス、IMDSの悪用、~/.claude/settings.jsonの流出)は、毒化された拡張機能であれば一般化されます。次のセクションのトリアージは、どの拡張機能を疑っているかに関係なく適用されます。

単一のVS Code拡張機能から、GitHub PAT、npmトークン、AWS IMDS、1Password CLI、Vault、Claude Code設定などを含む10のラベル付き資格情報ターゲットへ矢印が広がっており、悪意のある拡張機能が到達し得る完全な被害範囲を示しています
出典: techsy.io編集部、単一のVS Code拡張機能プロセスから到達可能な資格情報の範囲

あなたは影響を受けていますか?5分間のトリアージ

3つの簡単なテストがあります。(1) UTC時間5月18日12:36から12:47の間にVS Code拡張機能をインストールまたは自動更新しましたか?(2) GHSA-c9j4-9m59-847wからのIoCファイルが現在ラップトップ上にありますか?(3) 過去14日間にVS Code内でGitHub PATを使用しましたか?これら3つを5分以内に実行してください。

テスト1、拡張機能の監査

bash
# List all installed extensions with versions
code --list-extensions --show-versions

# Specifically check for Nx Console v18.95.0
code --list-extensions --show-versions | grep -i "nrwl.angular-console\|nx-console"

5月17日から5月18日の間に自動更新されたものはすべて再確認が必要です。Nx Consoleが正確に18.95.0である場合、可能性が高い一致です。パッチ適用済みバージョンは18.100.0です。アンインストールするか、以下のプレイブックに直接進んでください。

テスト2、IoCスキャン

bash
# Check for the daemonized credential-harvest process artifacts (GHSA-c9j4-9m59-847w)
ps aux | grep -i "__DAEMONIZED" | grep -v grep
ls -la ~/.local/share/kitty/ 2>/dev/null
find ~ -name "*.daemonized*" 2>/dev/null

# IMDS abuse indicator (AWS credential harvest)
# Check shell history for unexpected curl to 169.254.169.254
grep -E "169\.254\.169\.254|metadata\.google\.internal" ~/.zsh_history ~/.bash_history 2>/dev/null

クリーンなマシンであれば、__DAEMONIZEDのgrepで何も返らず、.daemonizedファイルもなく、シェル履歴にIMDSヒットもないはずです。いずれかが該当する場合、ラップトップが侵害されていると仮定し、過去30日間に触れたすべての資格情報を焼失したものとして扱ってください。

テスト3、PATの露出

過去14日間に、VS Codeターミナル、統合Git、またはGitHub APIを呼び出す拡張機能内でGitHub PAT(クラシックまたは細粒度)を使用したことがある場合、それは侵害されていると仮定し、以下のローテーションプレイブックに進んでください。これは保守的なデフォルトです。「拡張機能がアクティブだった間にトークンがメモリにあったか」を監査することはできません。ローテーションしてください。

Claude Codeを使用している場合、IoCリストには具体的に~/.claude/settings.jsonが含まれています。そのファイルに何が保存されており、どのキーを最初にローテーションすべきかについては、Claude Codeフックガイドをご覧ください。

判定。 これら3つのいずれかが陽性反応を示した場合、ナラティブを読むのをやめてください。次のセクションのプレイブックに直接進んでください。次の55分間は、事後分析よりも重要です。

開発者が必須で行うべきこと:60分間の緊急プレイブック

優先順位に従って資格情報をローテーションします。ティア0(今後30分以内):GitHub PATとnpmトークン。ティア1(今日中):AWS / クラウドキー、1Password / Vault、GitHub Actionsシークレット。ティア2(今週中):サードパーティSaaS、OAuthグラント、SSHキー。ティア3(都合の良い時):読み取り専用および公開キー。各ティアは特定の被害範囲の縮小に対応しています。

ティア0のGitHub PATとnpmトークンを赤、ティア1のAWSおよびVaultトークンを琥珀色、ティア2のSSHおよびOAuthを黄色、ティア3の読み取り専用キーを灰色で示す4層の資格情報ローテーションピラミッド。各ティアには時間予算がラベル付けされています
出典: techsy.io編集部、60分プレイブックのための階層化されたローテーション優先順位

今すぐ:影響を受けたと思われる場合

トリアージが陽性だった場合、他の何よりも先に以下の3つを順序通りに実行してください。

  1. デーモンを停止し、疑わしい拡張機能をアンインストールする:
bash
# Kill the malicious payload (GHSA-c9j4-9m59-847w)
pkill -f __DAEMONIZED
pkill -f "nx-console.*18.95.0"

# Uninstall the suspect extension immediately
code --uninstall-extension nrwl.angular-console
  1. ラップトップのネットワークケーブルを抜く(アクティブな流出の証拠がある場合)。極端に聞こえるかもしれません。しかし、そうです。それでも行ってください。オフラインで再調査できます。
  2. セキュリティチームに連絡するか、Slackの#securityに投稿する(他の操作を行う前)。ソロの場合、以下のティア0にスキップしてください。

ティア0(今後30分以内):GitHub + npm

gh CLIおよびWeb設定UIを使用したGitHub PATの取り消し:

bash
# Confirm what you're authenticated as
gh auth status

# List app installations the token has access to (helps inventory blast radius)
gh api -H "Accept: application/vnd.github+json" /user/installations

# The gh CLI cannot revoke classic PATs directly — use the web UI:
#   https://github.com/settings/tokens
# Click "Revoke" on EVERY token. Do not selectively keep "the one that's probably fine."

# Re-issue with fine-grained PATs + ≤90-day expiration:
#   https://github.com/settings/personal-access-tokens/new
# Scope one repo at a time, never the whole account.

# For org-owned PATs and installations:
gh api /orgs/{ORG}/installations

npmトークンのローテーション:

bash
# List and revoke every npm token
npm token list
npm token revoke <token-id-1>
npm token revoke <token-id-2>

# Force 2FA on auth and writes
npm profile enable-2fa auth-and-writes

# For CI: migrate to OIDC trusted publishing — no more long-lived tokens
# Docs: https://docs.npmjs.com/trusted-publishers

公開パッケージを維持している場合、npmトークンはあなたが所有する中で最も危険な単一の資格情報です。AWSよりも先にローテーションしてください。

ティア1(今日中):クラウド + ボールト + CIシークレット

次はAWSアクセスキーです。IoCはIMDSの悪用を示しているため、侵害されたエンドポイントに触れたIAMユーザーはすべて疑わしいものです。

bash
# List access keys for the current IAM user
aws iam list-access-keys --user-name $(aws sts get-caller-identity --query 'Arn' --output text | cut -d/ -f2)

# Deactivate the old key (don't delete yet — let workloads fail loudly first)
aws iam update-access-key --access-key-id AKIA... --status Inactive --user-name <user>

# Create a new key
aws iam create-access-key --user-name <user>

# Once deployed and verified, delete the old key
aws iam delete-access-key --access-key-id AKIA... --user-name <user>

# If any EC2 instance was using IMDSv1, force IMDSv2 immediately
aws ec2 modify-instance-metadata-options --instance-id i-... --http-tokens required

1Password CLI: すべてのデバイスからサインアウトし(op signout --all)、セッショントークンを再生成し、1PasswordのWeb監査ログを通じて、侵害されたエンドポイントから実行された最近のボールトアクセスを監査します。

HashiCorp Vault: ユーザートークンを取り消し(vault token revoke -self)、管理者に短いTTLで新しいトークンを発行してもらいます。

GitHub Actionsシークレット: ローテーションされた資格情報がActionsにもある場合は、それを更新します。リポジトリごとにgh secret set GITHUB_PAT --body <new-pat>を使用するか、組織シークレットの場合は組織レベルのUIを使用します。

AnthropicおよびOpenAI APIキー: GHSA-c9j4-9m59-847wのIoCリストは、~/.claude/settings.jsonを収穫ターゲットとして具体的に指摘しています。AnthropicコンソールAPIキーと、そのファイルに保存したことがあるOpenAIキーを取り消して再発行してください。

ティア2(今週中):SSH + OAuth + パスワードボールト

SSHキーは動きが遅いですが、依然として範囲内です。拡張機能は~/.ssh/に対してファイルシステムの読み取り権限を持っていました。

bash
# Audit existing SSH keys (when were they generated?)
for key in ~/.ssh/id_*; do
  if [ -f "$key" ]; then
    echo "Key: $key"
    stat -c '%y' "$key" 2>/dev/null || stat -f '%Sm' "$key"
  fi
done

# Generate a new Ed25519 key
ssh-keygen -t ed25519 -C "rotated-$(date +%Y%m%d)" -f ~/.ssh/id_ed25519_new

# Upload public key to GitHub
gh ssh-key add ~/.ssh/id_ed25519_new.pub --title "rotated-$(date +%Y%m%d)"

# Delete the old key from GitHub via web UI, then verify SSH still works
ssh -T [email protected]

ブラウザパスワードマネージャーおよびOSキーチェーン: 拡張機能がクリップボードを介して見えた可能性のあるパスワードをローテーションします。現実的な暴露リスクは、拡張機能がアクティブだった間にクリップボードにコピーしたパスワードです。

ティア3(都合の良い時):監査 + 検証

侵害ウィンドウについてGitHub組織ログを監査します。これには組織管理者権限が必要です。

bash
# Pull push events for the May 18-20 window
gh api -X GET /orgs/{ORG}/audit-log \
  --paginate \
  -f phrase='action:repo.push created:2026-05-18..2026-05-20' | jq '.[] | {actor, created_at, repo}'

# Spot-check suspicious commits (unexpected authors, large diffs)
gh api -X GET /repos/{ORG}/{REPO}/commits \
  -f since=2026-05-18T00:00:00Z \
  -f until=2026-05-20T23:59:59Z | jq '.[] | {sha, author: .commit.author, message: .commit.message}'

# Refresh OAuth grants
gh auth refresh -s admin:org -s admin:public_key

監査ログに、あなたが作成していない侵害ウィンドウからのプッシュが表示された場合は、セキュリティチームにエスカレーションし、監査ログJSONを保全してください。リポジトリ内で何かを「元に戻そう」としないでください。まず証拠を保全してください。

私たちは4月のVercel環境変数侵害についても同じ階層型ローテーションロジックを取り上げました。形状は同じで、層が異なります。

5問の拡張機能監査フレームワーク(永久に使用可能)

VS Code拡張機能をインストールまたは信頼する前に、5つのテストを実行してください:発行者ドメインの年齢、バージョンの速度、package.jsonのアクティベーションイベント、期待される動作に対する権限範囲、オープンソースリポジトリの監査。Nx Console v18.95.0はテスト#2に失敗していたでしょう。安定したリリースペース後の突然のバージョンジャンプは、古典的なサプライチェーンの兆候です。

  1. 発行者ドメインの年齢。 発行者のドメインは1年以上経過していますか?新しく登録されたドメインの新規発行者はリスクが高くなります。Visual Studio Marketplaceの発行者ページ、または発行者メールのドメインに対するwhoisで確認します。
  2. バージョンの速度。 バージョン履歴は正常なペース(1〜4週間ごとに1回のリリース)を示していますか、それとも突然のスパイク(24時間以内に3回のリリース)ですか?突然の速度は信号です。Nx Console v18.95.0は速度の異常値でした。
  3. package.jsonのアクティベーションイベント。 .vsixファイル(zip形式)を開き、activationEventsを読み取ります。*(常時オン)でアクティベートする拡張機能は攻撃面が最大です。特定の言語またはファイル名でアクティベートする拡張機能を優先します。
  4. 必要な権限 vs 期待される動作。 「テーマ」拡張機能がネットワークアクセスを要求していますか?「スニペット」拡張機能がファイルシステムの書き込みを必要としていますか?不一致は赤旗です。Microsoftの拡張機能ランタイムセキュリティドキュメントと照合してください。
  5. オープンソースリポジトリの監査。 ソースはGitHubにありますか?最後の5つのコミットを読んで、疑わしい変更(ポストインストールフック、base64エンコードされたブロブ、馴染みのないドメインへのネットワーク呼び出し)を探します。

*でアクティベートし、ネットワークアクセスを要求する拡張機能は、機能的にはVS Codeが取り付けられたリモートシェルです。

同じ監査フレームワークはMCPサーバー、つまり次の拡張機能クラスのサプライチェーン表面にも適用されます。私たちが信頼するものとその理由については、ベストMCPサーバー2026の内訳をご覧ください。

なぜこれが繰り返し起こるのか:2025-2026年のサプライチェーンの波

5月20日のGitHub侵害は、9ヶ月の弧の中の一つのノードです:Shai-Hulud npmワーム(2025年9月)、GlassWorm OpenVSXワーム(2025年10月-11月)、Shai-Hulud 2.0(2025年11月、25,000以上のリポジトリに影響)、Mini Shai-Hulud(2026年初頭)、Nx Console(2026年5月18日)、GitHubエンドポイント侵害(2026年5月20日)。開発者のエンドポイントは新たな弱点となっています。

  • 2025年9月、Shai-Hulud npmワーム。 人気のnpmパッケージ内の自己増殖型マルウェア。CISAが広範な侵害に関するアラートを発出。
  • 2025年10月-11月、GlassWorm。 OpenVSX上のVS Code拡張機能を標的とした初の自己増殖型ワーム。Koi Securityの開示。
  • 2025年11月、Shai-Hulud 2.0。 25,000以上のリポジトリが流出。Microsoft Security Blogが封じ込めガイダンスを発表。
  • 2026年初頭、Mini Shai-Hulud。 TeamPCP変種。Trivy、KICS、LiteLLM、TanStack、およびMistralAIに対する小規模な繰り返しの攻撃。
  • 2026年5月18日、Nx Console v18.95.0。 GitHubエンドポイント侵害の可能性が高いベクトル。
  • 2026年5月20日、GitHubが開示。 約3,800の内部リポジトリが流出。WizのShai-Hulud法医学シリーズによると、IMDS悪用パターンは直接的な進化です。

パターンは明確です。開発者のラップトップには組織内のすべてのシークレット(GitHub PAT、AWSキー、Vaultトークン、AIプロバイダーキー)が存在し、かつ EDRカバレッジはほぼゼロです。この不均衡が逆転するまで、この波は続きます。

防御的AIはその答えの一部です。今年初めにAIがデータ侵害を防ぐ方法の内訳でこの角度を取り上げました。

GitHubのより大きな対応:信頼された公開、FIDO 2FA、90日トークン

GitHubは5月20日之前から4つのサプライチェーンコントロールを展開していました。npm発行者に対する強制2FA、細粒度書き込みトークンの90日キャップ、FIDOおよびパスキーを支持したTOTPの廃止、およびGitHub ActionsとGitLab CI用のOIDC信頼された公開。5月の侵害は、すでに進行中の移行を加速させます。新しいポリシーを導入するものではありません。

コントロールステータスあなたが行うべきアクション
強制npm 2FA有効今すぐ有効化: npm profile enable-2fa auth-and-writes
90日細粒度書き込みトークンキャップロールアウト中(既存トークンは期限切れを強制)TTL≤90日の細粒度PATに移行
TOTP廃止、FIDO / パスキー2026年段階的ロールアウト今日中にすべてのGitHubアカウントでパスキーを登録
OIDC信頼された公開GitHub Actions + GitLab CIで有効CIを長寿命npmトークンからOIDCに移行

GitHubのより広範なより安全なnpmサプライチェーンのための計画は、このインシデントの数ヶ月前から存在していました。それに早く合わせるほど、次回の被害範囲は小さくなります。

強化:次の侵害を生き延べる方法

6つの将来を見据えた動き:devcontainer.jsonで拡張機能のバージョンをピン留めし、組織レベルの拡張機能許可リストを強制し、拡張機能プロセスの可視性を持つEDRを実行し、すべてのプッシュをシークレットスキャンし、PATを1つのリポジトリにスコープ限定し、長寿命トークンの代わりにOIDC信頼された公開を採用します。これらはすべてのインシデントを防ぐわけではありませんが、 together they shrink blast radius from "everything on the laptop" to "one repo."(一緒に、「ラップトップ上のすべて」から「1つのリポジトリ」へと被害範囲を縮小します)。

json
{
  "name": "secure-dev",
  "extensions": [
    "[email protected]",
    "[email protected]",
    "[email protected]"
  ],
  "settings": {
    "extensions.autoUpdate": false,
    "extensions.autoCheckUpdates": false
  },
  "containerEnv": {
    "VSCODE_GALLERY_SERVICE_URL": "https://your-internal-allow-list.example.com"
  }
}

要約すると:

  • ピン留め: devcontainer.json内のすべての拡張機能バージョンをピン留めして自動更新を殺す。
  • 許可リスト: VSCODE_GALLERY_SERVICE_URLを内部ミラーに向けることで組織レベルで許可リスト化する。
  • IDEプロセスの可視性を持つEDR: Crowdstrike、SentinelOne、またはVS Codeを範囲に含めたMicrosoft Defender for Endpoint。
  • すべてのプッシュをシークレットスキャン: プリコミットおよびプッシュ時、サーバーサイド。
  • すべてのPATを1つのリポジトリにスコープ限定: *スコープは決して使用しない。
  • OIDC信頼された公開: CIに長寿命のnpmまたはレジストリトークンを使用しない。

先週のLinux copy_file_range CVEは兄弟ストーリーです。層は異なりますが、教訓は同じです。あなたが忘れていた信頼境界こそが、あなたを傷つけるものです。

次にAIコーディングエージェントを検討する場合は、同じ監査フレームワークを適用してください。それらは拡張機能と同じ信頼プロファイルを持っています。どのエージェントがその信頼を得ているかについては、ベストAIコーディングエージェント2026の内訳で説明しています。

よくある質問

GitHubはハッキングされましたか?

いいえ、ほとんどの見出しが暗示するような意味ではありません。GitHub.comの本番環境は侵害されていません。GitHubの従業員がワークステーションに悪意のあるVS Code拡張機能をインストールし、それがGitHubの内部ソースコードリポジトリの約3,800件を流出させました。顧客のコード、顧客のアカウント、およびGitHubの本番サービスは影響を受けていません。

実際に関与したVS Code拡張機能は何ですか?

GitHubは拡張機能の名前を正式に確認していません。StepSecurity、Wiz、およびGHSA-c9j4-9m59-847wからの法医学的証拠は、高い確率でNx Console v18.95.0を指しています。これは5月18日12:36(UTC)に公開され、11分後に削除されました。GitHubが名前を挙げるまで、これを「高い確率ではあるものの、未確認」として扱います。

現在Nx Consoleを使用しても安全ですか?

パッチ適用済みバージョンは18.100.0です。古いv18.95.0がインストールされている場合は、直ちにアンインストールし、トリアージセクションのIoCスキャンを実行し、バージョン18.100.0以降のみを公式Nrwl発行者から再インストールしてください。再インストール前に発行者ドメインを確認し、devcontainer.jsonでバージョンをピン留めしてください。

GitHub侵害により顧客データは影響を受けましたか?

いいえ。Bleeping Computer経由のGitHubの公式声明によると、顧客のソースコード、顧客のアカウント、OAuthトークン、およびGitHubホストの本番データにはアクセスされていません。侵害されたデータは、従業員エンドポイントからのGitHubの内部ソースコードです。これをプラットフォーム侵害ではなく、従業員ラップトップのインシデントとして扱ってください。

自分のGitHub PATが盗まれたかどうかはどうすればわかりますか?

確実にはわかりません。保守的な仮定:過去14日間にVS Code内でGitHub PATを使用した場合、それは侵害されているものとして扱い、ローテーションしてください。gh api /orgs/{ORG}/audit-logを通じてGitHub監査ログを確認し、UTC時間5月18日から20日の間に不明なプッシュイベントがないか確認し、その後トークンを取り消して再発行してください。

TeamPCPとUNC6780とは何ですか?

TeamPCPは脅威アクターのグループです。UNC6780はインシデント対応ベンダーによって割り当てられた追跡IDです。彼らはGitHub侵害に対する帰属を公に主張しています。同じグループは、Trivy、KICS、LiteLLM、TanStack、およびMistralAIに対する2026年の侵害を主張しており、一貫したVS Codeおよびnpmサプライチェーン標的化パターンを示しています。

VS Code拡張機能はサンドボックス化されていますか?

いいえ、意味のある形ではされていません。VS Code拡張機能は、ユーザーの完全なファイルシステムおよびネットワーク権限を持つIDEのNode.jsプロセス内で実行されます。ホームディレクトリ内のすべてのファイル(SSHキー、~/.aws/credentials、~/.claude/settings.jsonなど)を読み取ることができ、Linuxでは/proc/*/memを介してプロセスメモリにもアクセスできます。Microsoftは公式拡張機能ドキュメントでランタイムセキュリティモデルとその限界を文書化しています。

これはGitHub CodespacesまたはCIランナーに影響しましたか?

今のところ証拠はありません。侵害は従業員ワークステーションであり、GitHubホストのインフラストラクチャではありません。Codespaces、GitHub Actionsランナー、および顧客向けCIインフラストラクチャは影響を受けたと報告されていません。新しいIoCがこの図を変更する場合、この投稿を更新します。

結論

持ち帰るべき3つのこと:

  1. GitHub.comはハッキングされませんでした。 従業員のVS Codeワークステーションが侵害されました。この教訓はすべての開発者に一般化されます。
  2. 今すぐローテーションし、監査フレームワークを永久に使用する。 60分間のプレイブックはパッチであり、5問の監査フレームワークは免疫システムです。
  3. これは一度きりではありません。 減速していない9ヶ月間のサプライチェーンの波におけるノード#6です。

最終更新日: 2026年5月20日。新しいIoC、ベンダーアドバイザリ、およびGitHubが確認した拡張機能の帰属があれば、2026年5月27日にこの投稿を一掃します。

VS Code拡張機能の表面、PATおよびトークンの衛生状態の監査、または組織レベルの許可リストポリシーの構築について支援が必要な場合は、無料相談をご利用ください。私たちは4月のVercel侵害以来、開発者エンドポイントセキュリティに没頭しており、上記のプレイブックは初日にクライアントと共に実行するものです。

タグ

サイバーセキュリティサプライチェーン攻撃vscodegithub開発者セキュリティインシデント対応GHSA-c9j4-9m59-847w

記事をシェアする

関連記事

その他の記事 cybersecurity

cybersecurity
Jul 23, 2026

リリース前のSaaSセキュリティチェックリスト:最初に実行する40の項目(2026年版)

多くのリリースチェックリストは「何を保護すべきか」は教えてくれますが、「どのように行うか」は示しません。このリストはコードを提供します。シークレット、認証、テナント分離、依存関係、ヘッダー、モニタリングにわたる40の事前リリースチェックと、ほぼすべてのレビューで見逃されている落とし穴を含みます。

12 min read 分
読む
cybersecurity
May 8, 2026

AIはデータ漏洩をどう防ぐのか:実際の攻撃を止めた7つの防御策(2026年)

2026年4月30日、約2億7,500万人の生徒が、自分のLMSが漏洩したことを知った。AIなら止められたのか?すでに本番環境で機能している7つの防御策と、今週中にアプリへ組み込む方法を解説する。

13 min read 分
読む
cybersecurity
May 5, 2026

Copy Fail (CVE-2026-31431): Linux、Kubernetes、AIインフラ向け60分緊急パッチ対応ガイド

Microsoftは2026年5月1日、Linuxカーネルの権限昇格脆弱性「Copy Fail」(CVE-2026-31431)を開示しました。これはKubernetesのRuntimeDefault seccompをバイパスし、マルチテナント推論クラスター、エージェントランタイム、CIランナーすべてに影響を与えます。ここでは、ディストリビューション別コマンド、コピー&ペースト可能なseccompプロファイル、そして他社が公開していないAIインフラの露出分析を含む、60分で完了するパッチ対応ガイドを紹介します。

12 min read 分
読む
すべての記事を表示
プロジェクトを始めよう

さあ、何かを作ろう。 特別なものへ?

ビジョンを、かたちに。変化を生むソフトウェアづくりは、私たちのチームにお任せください。

30分のスコーピング通話を予約する実績を見る

注目のツール

Claude Skills

すべて表示
  • New Post

    Full SEO blog pipeline: research, brief, write, validate, image, translate, publish to Sanity. Autonomous from start to finish.

  • Content Refresh

    Audit a stale post, find decay drivers, and ship a SERP-aligned refresh without losing existing rankings.

  • SEO Audit

    Site-wide SEO audit with prioritized fix list: technical, on-page, and EEAT signals.

AI自動化

すべて表示
  • Security Auditor

    Weekly SCA + IaC scan with prioritized fix PRs.

  • Cold Email Writer

    Generates first-touch emails grounded in one specific public detail.

  • Lead Research Agent

    Enrich an email into a profile, score fit, alert in Slack.

注目のツール

Claude Skills

すべて表示
  • New Post

    Full SEO blog pipeline: research, brief, write, validate, image, translate, publish to Sanity. Autonomous from start to finish.

  • Content Refresh

    Audit a stale post, find decay drivers, and ship a SERP-aligned refresh without losing existing rankings.

  • SEO Audit

    Site-wide SEO audit with prioritized fix list: technical, on-page, and EEAT signals.

AI自動化

すべて表示
  • Security Auditor

    Weekly SCA + IaC scan with prioritized fix PRs.

  • Cold Email Writer

    Generates first-touch emails grounded in one specific public detail.

  • Lead Research Agent

    Enrich an email into a profile, score fit, alert in Slack.

サービス

  • エンタープライズソリューション
  • モバイルアプリ
  • Webアプリケーション

ソリューション

  • CRMシステム
  • AI統合
  • ERPソリューション
  • 音声エージェント
  • プロセス自動化
  • サイバーセキュリティ

ライブラリ

  • ブログ
  • ポートフォリオ

コミュニティ

  • AI自動化
  • Claude Skills

ツール

  • モバイルアプリ開発費用計算ツール
  • OpenAI / LLM API 利用料金計算ツール
  • MVP(Minimum Viable Product)開発費用計算ツール
  • 音声AIエージェント構築費用計算ツール

会社情報

  • 概要
  • パートナー
  • お問い合わせ

法的情報

  • プライバシーポリシー
  • 利用規約
  • クッキーポリシー

サービス

  • エンタープライズソリューション
  • モバイルアプリ
  • Webアプリケーション

ソリューション

  • CRMシステム
  • AI統合
  • ERPソリューション
  • 音声エージェント
  • プロセス自動化
  • サイバーセキュリティ

ライブラリ

  • ブログ
  • ポートフォリオ

コミュニティ

  • AI自動化
  • Claude Skills

ツール

  • モバイルアプリ開発費用計算ツール
  • OpenAI / LLM API 利用料金計算ツール
  • MVP(Minimum Viable Product)開発費用計算ツール
  • 音声AIエージェント構築費用計算ツール

会社情報

  • 概要
  • パートナー
  • お問い合わせ
法的情報プライバシーポリシー利用規約クッキーポリシー
TECHSY
© 2026 Techsy. 無断複写・転載を禁じます