セキュリティ
自分は書いていないコードの脆弱性
2026年10月8日
レン
自分のコードは注意して書いてる。だから大丈夫だよね?

プロクラ
それがね、今のアプリって、実際に動いているコードの大半が自分の書いたものじゃないんだ。ライブラリを入れると、そのライブラリがまた別のライブラリに依存していて…と、数百単位になることも珍しくない。

レン
数百!?そんなに入ってるの!

ウィルスン
…そこがワタシの狙い目だ。キミのコードに穴を探すより、キミが使っているライブラリの、既に公表されている穴を突くほうが早い。しかもその穴は、同じライブラリを使う全員に共通している。1つ見つければ、大量の標的に使えるのだよ。
把握する方法

プロクラ
幸い、既知の脆弱性は公開データベースにまとまっていて、それと照合するツールが標準で用意されていることが多いよ。npmなら監査コマンドが、GitHubなら自動で警告してくれる仕組みがある。
- 定期的に脆弱性チェックのコマンドを実行する習慣をつける
- リポジトリの自動警告機能を有効にしておく
- 警告が出たら、深刻度と「その機能を実際に使っているか」を見て優先度を決める
- 使っていないライブラリは消す(依存が減れば、それだけ穴も減る)
更新するときの現実的な注意

プロクラ
更新すれば動かなくなるリスクもあるよね。だから「全部を最新にし続ける」より、まずセキュリティ修正を含む更新を優先しよう。テストがあれば更新は怖くなくなるので、そこに投資する価値もある。

レン
放置するとどうなる?
プロクラ
時間が経つほど直しづらくなるよ。何年も放置したものを一気に更新しようとすると、変更が大きすぎて手が付けられなくなる。少しずつ、こまめにやるのが結局いちばん楽なんだ。
警告が出たときの判断
警告の数に圧倒される必要はありません。見るべきは、その弱点が自分の使い方で到達しうるかです。開発時にしか使わないものや、該当する機能を呼んでいない場合は、急ぎではありません。ただし「関係ない」と判断したことは記録に残してください。次に同じ警告を見たとき、また一から調べ直さずに済みます。

プロクラ
警告が出ても、全部が今すぐ危険というわけではないよ。慌てて全部更新すると、動かなくなって別の問題が起きる。この順で考えよう。
- その弱点は、自分が実際に使っている機能に関わるか
- 外部から届く入力が、そこへ到達しうるか
- 開発時だけ使うもので、本番では動いていないか
- 深刻度と、更新に伴う影響の大きさを見比べる

プロクラ
「使っていない経路の弱点だから今は見送る」という判断もあっていい。ただし、そう決めた理由を記録しておくこと。後から見返せないと、放置と区別がつかなくなるからね。
こまめに続けるための工夫
- 自動で警告してくれる仕組みを有効にする
- 月に一度など、見る日を決めてしまう
- テストがあると更新が怖くなくなる。少しずつでも増やす
- 使わなくなったライブラリを消す。減らすのが一番効く

レン
全部を最新にするんじゃなくて、判断して、記録して、こまめに。
VPSの料金を比較する
あわせて読みたい
- セキュリティ信頼していたライブラリが乗っ取られる信頼していたライブラリが乗っ取られる手口と、完全には防げない前提での備え。更新を取り込む時期を自分で決める方法と、入られた後を小さくする設定を解説します。
- セキュリティ狙われる入口を減らす:攻撃面という考え方忘れられたサービスがなぜ危険なのか、今動いているものを知るコマンド、減らせる典型例、そして入口を増やさないための記録の残し方を解説します。
- セキュリティrootで作業しない:sudoを正しく使うrootのまま作業する危険を、攻撃と自分の操作ミスの両面から解説します。sudoを付けるひと手間が確認の機会になる、という運用上の意味まで扱います。
- セキュリティ【セキュリティ】DDoS攻撃とは?個人サーバーにできる備え個人のVPS単体では防ぎ切れない前提での備え。本当に攻撃なのかをアクセスログで見分ける方法と、平時にしか用意できない対策を解説します。