インストールしただけでウイルスに感染する事件が、
2026年に実際に起きている。
月74万回ダウンロードされていた正規のアプリがマルウェアに汚染されていた。
この記事では、
Claude Codeを使って自分のPCのセキュリティ対策を全部やってみた結果を共有する。
非エンジニアでも、
Claude Codeに聞くだけで環境チェック・安全確認・漏洩防止・環境分離まで全部できた。
もし脆弱性が見つかった場合の対処法も、
Claude Codeと一緒にやる手順として解説する。
この記事で得られること
・自分のPCに入っているアプリが安全かチェックする方法
・新しいアプリを入れる前に安全性を確認する方法
・もし危険なアプリが見つかった場合の具体的な対処法
・APIキーやパスワードの漏洩を防ぐ設定方法
・プロジェクトごとに環境を分離する方法
・Claude Codeにそのまま使えるプロンプト集
こういう人に読んでほしい
・AIに「これ入れて」と言われるままインストールしてきた
・バイブコーディングでアプリを作ってる
・セキュリティ対策、何もやってない
・「自分は大丈夫でしょ」と思っている
自分の使い方:バイブコーディングを始める前に、
Claude Codeで環境の健康診断・パッケージ安全確認・APIキー漏洩チェック・仮想環境作成を一気に実行。
今後は新しいパッケージを入れるたびに「これ安全?」と聞いてから入れるルールにしている。
「インストールしただけで感染」は本当に起きているのか?
2026年、実際に起きている。しかも1件や2件じゃない。
一番衝撃的だったのがtelnyx事件。
Pythonの正規パッケージ「telnyx」が乗っ取られて、
マルウェア入りのバージョンが配布された。
月74万回ダウンロードされていた正規のアプリだ。
何が怖いって、
インストールした瞬間にマルウェアが動くこと。
アプリを起動しなくても、
入れただけでバックグラウンドで情報を盗み出す。
これだけじゃない。
| 事件 | 何が起きたか | 規模 |
|---|---|---|
| telnyx(Python) | 正規パッケージがマルウェアに汚染 | 月74万DL |
| axios(JavaScript) | 週1億DLのライブラリが乗っ取り | 週1億DL |
| LiteLLM(Python) | AI管理ツールにSSH鍵・暗号資産の窃取コード | AI開発者直撃 |
全部2026年の出来事だ。
「自分はエンジニアじゃないから関係ない」と思うかもしれない。
でも逆。
バイブコーディングでAIに言われるままインストールしている人が、
一番狙われやすい。
エンジニアはバージョン管理や依存関係の確認が習慣になっているけど、
AIでコーディングを始めた人にはその習慣がない。
自分もそうだった。
だからClaude Codeを使って、
全部チェックすることにした。
Claude Codeで環境の安全チェックはどうやるのか?
最初にやったのは、
自分のPCに入っているアプリの安全性チェック。
「pip-audit」というスキャンツールを使う。
ただし、
ここで大事なポイント。
スキャンツール自体が安全じゃなかったら意味がない。
だからまず、Claude Codeにこう聞いた。
Claude Codeは以下を自動で確認してくれた。
・誰が作っているか → PyPA(Python公式のパッケージ管理団体)
・メンテナーは誰か → Dustin Ingram(元Google、
PyPI管理者)とTrail of Bits(セキュリティ企業)
・GitHubのスター数 → 十分な数がある
・最終更新日 → 2025年12月(放置されていない)
・不審な急更新はないか → なし
「安全です」と判断が出たので、
pip-auditをインストールしてスキャンを実行した。
そもそもパッケージをほとんどインストールしていなかったから当然といえば当然。でも「問題なし」という確認が取れたことが大事。
正直、
自分はパッケージをほとんど入れていなかったから0件だった。
でもこれからバイブコーディングでいろいろ入れていく前に、
この「まっさらな状態で安全」という確認を取っておきたかった。
基準点ができたことで、
今後何か入れて問題が起きたときにすぐ気づける。
もし脆弱性が見つかったらどうすればいいのか?
自分は0件だったけど、
見つかる人もいると思う。
そのときに慌てないように、
Claude Codeと一緒に対処する手順を整理しておく。
ステップ1:何が見つかったか確認する
pip-auditを実行すると、こういう結果が出ることがある。
Name Version ID Fix Versions ---------- ------- -------------- ------------ requests 2.28.0 PYSEC-2023-XXX 2.31.0 urllib3 1.26.5 PYSEC-2023-XXX 1.26.18 setuptools 65.5.0 PYSEC-2024-XXX 70.0.0
これを見ても「何のことかわからない」のが普通。
だからClaude Codeに聞く。
ステップ2:Claude Codeが説明してくれる
Claude Codeはこういうふうに教えてくれる。
urllib3 1.26.5:特定の条件でサーバーとの通信が漏洩する脆弱性。→ 1.26.18で修正済み
setuptools 65.5.0:悪意あるパッケージ名で誤ったコードが実行される脆弱性。→ 70.0.0で修正済み
3件ともアップデートで解決できます。実行しますか?
ステップ3:アップデートして再チェック
「お願い」と言えば、Claude Codeが全部やってくれる。
pip install --upgrade requests==2.31.0 urllib3==1.26.18 setuptools==70.0.0
アップデートが終わったら、
もう一度pip-auditを実行して0件を確認。
これで完了。
ポイントは「一人で悩まなくていい」ということ。
脆弱性が出ても、
Claude Codeに「これ何?どうすればいい?」と聞けば、
説明から対処まで全部やってくれる。
非エンジニアにとっての最大の武器は「聞ける相手がいること」だと思う。
新しいアプリを入れる前に何を確認すべきか?
環境チェックの次にやったのは、
今後インストールするときの安全確認ルールを作ること。
やることは簡単。新しいパッケージを入れる前にClaude Codeに聞くだけ。
Claude Codeが自動でチェックしてくれる項目はこれ。
| チェック項目 | なぜ重要か | 危険サイン |
|---|---|---|
| メンテナー情報 | 誰が管理しているかで信頼度が変わる | 個人1名だけ/アカウント作成直後 |
| GitHubスター数 | 多くの人が使っている=監視の目が多い | 極端に少ない(100未満) |
| 最終更新日 | 放置されたアプリは脆弱性が放置される | 2年以上更新なし |
| 直近のリリース | 数時間前のリリースは汚染の可能性 | 数時間〜数日前の急なリリース |
telnyx事件では、
汚染されたバージョンは公開からたった6時間で発見・隔離された。
つまり「最新版をすぐ入れない」だけで防げた。
バージョン固定のすすめ
もう一つ大事なのが、バージョンを固定すること。
| やり方 | コマンド | 安全度 |
|---|---|---|
| 最新版を自動取得(危険) | pip install telnyx | 低い |
| バージョンを指定(安全) | pip install telnyx==4.87.0 | 高い |
Claude Codeに「requirements.txtに今のバージョンを全部記録して」と頼めば、
一発でバージョン固定リストが作れる。
APIキーやパスワードの漏洩はどう防ぐのか?
次にやったのが、秘密情報の保護。
まず「APIキー」「.env」って何?という人向けに説明する。
APIキーは、
外部サービスを使うための「合い鍵」のようなもの。
OpenAIやAWSなどのサービスを使うときに発行される。
これが漏れると、
他人があなたのアカウントで好き放題使える。
数十万円の請求が来た事例もある。
.envファイルは、
そのAPIキーやパスワードをまとめて保存しておくファイル。
このファイルをGitHub(コードの保管庫)にうっかりアップロードすると、
世界中から丸見えになる。
対策はシンプル。
.gitignoreファイルに「.envは上げるな」と書いておくだけ。
1分で終わった。でもこの1分で、数十万円の事故を防げる可能性がある。
プロジェクトごとに環境を分けるべきなのか?
最後にやったのが、プロジェクト環境の分離。
これはイメージで説明する。
普通にアプリをインストールすると、
全部同じ部屋に放り込まれる。
もし1つのアプリがウイルスだったら、
同じ部屋にある他のアプリも全部巻き込まれる。
「仮想環境」を作ると、
プロジェクトごとに部屋が分かれる。
マンションの防火壁みたいなもの。
隣の部屋で火事が起きても、
自分の部屋には燃え移らない。
全部同じ部屋
1つ汚染 → 全滅
それぞれ別の部屋
1つ汚染 → 他は無事
正直、
仮想環境を毎回作るのは面倒だと最初は思った。
でも1回汚染されたら全プロジェクトが死ぬリスクを考えると、
保険として絶対やっておくべき。
Claude Codeに頼めば10秒で終わるし。
Claude Codeにそのまま使えるプロンプト集
最後に、
実際に使えるプロンプトを場面別にまとめておく。
コピペしてClaude Codeに貼るだけでいい。
初回の環境チェック
| 場面 | プロンプト |
|---|---|
| スキャンツールの安全確認 | pip-auditっていうツールを使いたい。まずこのツール自体が安全か確認して。PyPIのメンテナー、GitHubスター数、最終更新日、不審なリリースがないか調べて |
| 脆弱性スキャン実行 | pip-auditをインストールして、今の環境の脆弱性チェックを実行して |
| バージョン固定リスト作成 | 今インストールされているパッケージを全部バージョン固定でrequirements.txtに出力して |
新パッケージの導入前
| 場面 | プロンプト |
|---|---|
| 安全性チェック | ○○っていうパッケージを入れたい。安全かどうか確認して。メンテナー、GitHubスター数、最終更新日、直近の不審なリリースがないか調べて |
| 安全なバージョン指定 | ○○の安定版で、リリースから1週間以上経っているバージョンを教えて。それを指定してインストールして |
脆弱性が見つかったとき
| 場面 | プロンプト |
|---|---|
| 内容の確認 | pip-auditで脆弱性が出た。それぞれ何が危ないのか初心者にわかるように説明して |
| 一括アップデート | 見つかった脆弱性を全部安全なバージョンにアップデートして。終わったらもう一度pip-auditで確認して |
秘密情報の保護
| 場面 | プロンプト |
|---|---|
| 漏洩チェック | .gitignoreに.envが含まれてるか確認して。なかったら追加して。あとコードにAPIキーやパスワードが直書きされてないかチェックして |
| 環境分離 | このプロジェクト用にPythonの仮想環境を.venvで作って。.gitignoreに.venvも追加して |
定期メンテナンス
| 場面 | プロンプト |
|---|---|
| 定期チェック | 前回から新しくインストールしたパッケージがないか確認して。あったら安全性を検証して |
| バージョン整合性 | requirements.txtに書いてあるバージョンと、実際にインストールされてるバージョンが一致してるか確認して |
バイブコーディング時代に「確認する習慣」が最強の防御である理由
ここまで5つの対策を全部やってみて思ったこと。
セキュリティ対策に特別な技術は要らない。「確認する習慣」があるかどうかだけ。
Veracodeの調査によると、
AIが生成したコードの45%にセキュリティ問題があるという。
でもそれはAIが悪いんじゃない。
確認しないまま使う側の問題だ。
pip-auditの安全性をClaude Codeに確認させるという発想が、
自分にはなかった。
「ツールを入れる前にツール自体を疑う」。
これがセキュリティの基本だと気づけたのが、
今回の一番の収穫だと思う。
非エンジニアにとって一番の防御は「聞ける相手がいること」だ。
わからなくても、
Claude Codeに「これ安全?」と聞けばいい。
それだけで、
やられる側からやられない側に移れる。
全部で30分もかからなかった。まだやってないなら、今日やろう。
よくある質問
参考情報
・telnyx事件(ReversingLabs報告) — PyPIパッケージ「telnyx」のサプライチェーン攻撃詳細
・axios乗っ取り事件(2026年3月) — npmパッケージへのマルウェア混入
・Veracode "State of Software Security 2025" — AI生成コードの45%にセキュリティ問題
・pip-audit(GitHub) — PyPA公式の脆弱性スキャンツール
※この記事の内容は執筆時点のものです。AIは進化が速い分野のため、最新の仕様は公式サイトでご確認ください。