【ぷろとたいぷおせん】
プロトタイプ汚染 とは?
💡 JavaScriptの「親オブジェクト」を書き換えてシステム全体を汚染する攻撃
📌 このページのポイント
プロトタイプ汚染って名前が物騒だけど、どんな攻撃なの?
JavaScriptにはプロトタイプチェーンという仕組みがあって、すべてのオブジェクトは「Object.prototype」という共通の親オブジェクトを持っているんだよ。プロトタイプ汚染はその親オブジェクトを攻撃者が書き換えることで、アプリ全体の動作を変えてしまう攻撃なんだ。
親オブジェクトが書き換わると何が起きるの?
どうやって攻撃されるの?
どうすれば防げるの?
有名なライブラリでも起きたことあるの?
まとめ:ざっくりこれだけ覚えればOK!
📖 おまけ:英語の意味
「Prototype Pollution」 = プロトタイプ汚染
💬 JavaScriptの「プロトタイプ(Prototype)」という継承機構を「汚染(Pollution)」することから名付けられたんだよ