先日、PHPの世界で大きなニュースがありました。PHP開発チームが2件の重大な脆弱性について緊急アップデートを予告し、どちらも深刻度は9.2(CVSS v4.0)と評価されています。しかもWebリクエストを処理するPHP環境すべてが影響を受けるおそれがあり、認証なしでコードを実行される可能性があるとされています。
日本でも高市総理大臣が異例の呼びかけ(SNSへの投稿 21日)を行っています。ただごとではない事態に、弊社では今でも対応に追われている状況です。
さて、PHPが脆弱だからということで集中的に狙われたのは事実ですが、プログラム言語というのは他にもあります。では、次に狙われる言語は何っていう話なのですが、結論から言うと、攻撃者が見ているのは言語そのものより、その周りにある「道具箱」です。
なぜPHPは狙われ続けてきたのか
PHPが狙われる一番の理由は、人気があることです。ひとつの繁華街に人が集まれば、スリもそこに集まります。攻撃者も同じで、「1回の攻撃手法で、できるだけ多くのサイトに入り込みたい」と考えます。PHPはWordPressをはじめ、ネットショップや企業サイトなど、あちこちで動いています。1つ穴が見つかれば被害が広がるので、効率を重視する攻撃者にとっては、ありがたい標的でした。
つまり狙われる条件は、「たくさん使われていること」と「そこを突けば大きな成果が得られること」の2つです。この条件を当てはめると、次の候補が見えてきます。
候補その1:JavaScript(Node.js)
最有力は、やはりJavaScriptです。画面側(フロントエンド)からサーバー側まで、同じ言語で作れる手軽さから、Web開発の主役になりました。
ここで注目したいのが、npmというパッケージの集積所です。ライブラリが山ほど並んでいて、「こんな機能が欲しい」と思えば、たいてい誰かが作ってくれています。
ただ、これは巨大な市場のようなものです。本物そっくりの名前をつけた偽の商品を並べる人もいれば、有名な作者のアカウントを乗っ取って、本物の商品に毒を混ぜる人もいます。買う側は、並んでいる商品を信じて使うしかありません。こうした「サプライチェーン攻撃」が、近年とくに増えています。
候補その2:Python
次はPythonです。AIや機械学習、データ分析のブームに乗って、利用者が一気に増えました。
特徴的なのは、利用者の層の広さです。プロのエンジニアだけでなく、研究者や学生、他分野からデータ分析を始めた人も大勢使っています。セキュリティが専門ではない人が多いので、どうしても隙が生まれやすくなります。
候補その3:Go
3つ目はGo言語です。JavaScriptやPythonと比べると、少し意外かもしれません。
Goは、クラウドやマイクロサービスなど、現代のインフラを支える場面で急速に存在感を増しています。言語としての設計は比較的堅実で、「穴だらけ」というわけではありません。
それでも注目されるのは、動いている場所が重要だからです。町の商店より、銀行や発電所のほうが警備が厳重ですが、そのぶん、突破できたときの見返りも大きくなります。「重要な場所で動いている」こと自体が、高度な攻撃者に目をつけられる理由になります。
毒の混ぜ方
ここまで3つの言語を挙げましたが、共通点があります。
昔の攻撃は、言語そのもののバグを突く正面突破が中心でした。いまは、開発者が日常的に使う便利なツールやパッケージに毒を混ぜる、裏口からの侵入が増えています。
食事に例えると、料理人の腕(言語)より、仕入れた食材(パッケージ)のほうが危ない、という状況です。どんなに腕のいい料理人でも、仕入れた食材に毒が入っていたら、防ぎようがありません。
今日からできる、基本の守り方
大がかりな対策をしなくても、次の積み重ねで安全性はぐっと上がります。専門家にお願いすればさらに上がるでしょう。
- 信頼できるパッケージだけを使う:名前が似ているだけの偽物に注意し、公開元や利用実績を確認する
- こまめにアップデートする:今回のPHPのように、修正版が出たらすぐに適用できる体制をつくる
- 使っているものを把握しておく:自社のどこでどの言語やライブラリが動いているかを棚卸ししておく。
とくに3つ目は地味ですが効果的です。今回のPHPの件でも、IPA(情報処理推進機構)は事前に、PHPを使っているプログラムを可能な範囲で棚卸しするよう呼びかけていました。何が動いているのかを知らなければ、緊急パッチが出ても、どこに当てればいいのか分かりません。
まとめ
PHPの次に狙われる言語を挙げるなら、あくまで個人的な見解ですが、JavaScript、Python、Goが有力です。ただ、本当に大切なのは、どの言語を使うかより、使っている道具箱の中身を把握し、手入れしておくことだと思います。
どの言語を選んでも、リスクがゼロになることはありません。それでも、「何が狙われやすいのか」を知っているだけで、守りの質は変わります。焦らず、できることから一つずつ進めていきましょう。
ご相談ください
株式会社アイ・セプトでは、Webサイトの運用・保守サービスを行っています。「うちのサイトは大丈夫なのか分からない」「PHPのバージョンの確認方法が分からない」「更新したいけれど、何から手をつけていいか不安」といったお悩みがあれば、セキュリティに関することでも、どうぞ気軽にお問い合わせください。













