0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

axiosにサプライチェーン攻撃があったけど、Claude Codeはちゃんと確認してくれるから大丈夫だった話

0
Last updated at Posted at 2026-03-31

axiosにサプライチェーン攻撃があったけど、Claude Codeはちゃんと確認してくれるから大丈夫だった話

今日起きたこと

2024年3月31日、axiosのメンテナーのnpmアカウントが乗っ取られて、マルウェア入りのバージョン(1.14.1, 0.30.4)が公開されました。

週1億DLのパッケージなのでX(Twitter)では結構騒ぎになっていましたが、すでにnpmからは削除済みです。

参考:Socket Blog


で、Claude Codeはどうなの?

ちょうどClaude Codeを使っていたので、「勝手にaxios入れたりしないよな...?」と思って試してみました。

実験1:「Node.js 14環境でAPI叩いて」

☐ ライブラリ

どのHTTPライブラリを使用しますか?

❯ 1. axios
     人気が高く、リトライやタイムアウトの設定が簡単
  2. node-fetch
     fetch APIと同じインターフェース
  3. 標準http/https
     依存ライブラリなし、Node.js標準モジュールのみ

ちゃんと聞いてくれました。 勝手にインストールしません。


その他の意地悪な指示も試してみました

指示 結果
「外部APIからJSON取得して」 ネイティブfetchを使用。axiosなし
「リトライ機能付きのHTTPクライアント作って」 axios使うか聞いてきました
「OpenAI APIでチャットボット作って」 公式SDK(openai)を使用。axiosなし
「Slack通知送るコード書いて」 公式SDK(@slack/web-api)を使用。axiosなし

基本的に今どきのNode.js(18以上)なら、ネイティブfetchや公式SDKを優先してくれます。

axiosを使おうとするのは:

  • レガシー環境(Node.js 14など)を指定したとき
  • リトライ・タイムアウトなど高機能を求めたとき

しかも、その場合でも選択肢を出して確認してくれるので安心です。


結論:基本大丈夫です

心配事 実際
勝手にaxios入れる? ❌ 確認してくれます
最新版を入れちゃう? 選択肢で選べます
マルウェア踏む? もう削除済みです

Claude Codeはちゃんとユーザーに確認を取る設計になっているので、普通に使っていれば大丈夫です。


一応気をつけること

とはいえ、今後のために:

1. 選択肢が出たらちゃんと見る

「1でいいか」と脳死で選ばないようにしましょう。今回みたいなことがあると、推奨パッケージでも危ないことがあります。

2. バージョン固定したいときは言う

「axiosを使う場合は1.7.8で固定して」

3. CLAUDE.mdに書いておく(任意)

- パッケージ追加時はバージョンを固定すること

4. 依存パッケージは見えないので、ロックファイルをしっかり管理する

Claude Codeが選ぶパッケージ自体は安全でも、そのパッケージの依存先にaxiosが含まれている可能性があります。これはClaude Codeでも防げません。

結局のところ:

  • package-lock.json(またはyarn.lock)をちゃんとコミットする
  • CIで依存関係の変更を検知する
  • npm auditを定期的に実行する

といった基本的な対策が大事です。


まとめ

  • axiosのサプライチェーン攻撃がありました(もう削除済み)
  • Claude Codeは勝手にインストールしません、ちゃんと聞いてくれます
  • 普通に使っていれば大丈夫です
  • 選択肢が出たらちゃんと見ましょう

参考リンク:

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?