こんにちは、山上です。

10月21日に公表されたPHPの脆弱性。テレビのニュースになり、銀行や官公庁のサイトが止まり、高市首相が公式Xで修正の適用を呼びかける騒ぎになりました。PHPは世界中のホームページを動かしている言語なので、「ホームページに関わる業者は全員対象」という空気がありました。

私も、多くのお客さんのサイトの対応にあたりました。ひと段落した今、正直に言うと、少し違和感が残っています。今日はその話を書きます。

一度も責められなかった

これまでこの手の騒ぎが起きると、運用や開発をしている会社が問い詰められるのが普通でした。「なぜ防げなかったのか」「誰の責任なのか」。

今回は違いました。一度も責められていません。それどころか、「対応、大変ですね」と気づかってもらうことさえありました。テレビで流れ、首相まで呼びかけた。誰のせいでもない、という空気が最初からできていたんだと思います。

時代が変わった、と言う人もいます。大きく見れば、その通りだと思います。ただ、私はこの感謝を「安心させてくれたことへのお礼」だと受け取っています。不安なときに誰かが動いてくれた。そのこと自体へのありがとうです。

周りには、今回の件を天災だと話しています。セキュリティを100%守ることは、もうできません。100%に近づけたいなら、いちばんの近道はネットから離れることです。情報が漏れたことを責めるなら、行き着く先はネットを使わない世界になる。それは無理なので、怒る相手にはなりえない。今回、誰も怒らなかったのは、その感覚がようやく共有されたからかもしれません。

23時までの話と、23時からの話

もうひとつの違和感は、騒ぎの捉え方です。「ホームページ業者が対応に追われた」と報じられましたが、問題の中心は別の場所にありました。

時系列を並べます。21日の深夜3時台には、すでに脆弱性の情報が外に漏れていました。夕方には攻撃のためのコードが出回り、20時半ごろには大規模な攻撃の試みが観測されています。PHPの修正版が出たのは23時です。

この修正版をサーバのPHPに当てるのは、サーバを持っている会社です。さくらインターネットやエックスサーバーのようなレンタルサーバ会社がそれにあたります。エックスサーバーの公表では、翌22日の6時45分にPHP 8.2〜8.5、12時に7.4〜8.1、14時に5.6〜7.3の適用が終わっています。

共用のレンタルサーバを使っているかぎり、私たちのような制作・保守の業者は、PHPそのものには手が出せません。サーバ会社の作業が終わるのを待つしかない。対応するとかしないとか以前に、触れる場所がなかった。

その中で業者にできたのは、「PHPを動かさない」ことだけでした。サーバの設定でアクセスを止める、PHPを通らない静的なページに切り替える。修正が当たるまでの穴を小さくする意味はありました。本当に急ぐべきだったのは、攻撃コードが出回り始めた夕方から23時までの間です。

一方で、意味のない「対応」もありました。WordPressのメンテナンスモードのように、PHPで作られたメンテナンス画面です。メンテナンス画面を出すためにPHPが動くので、守りになりません。今回の脆弱性は、サイトのプログラムが動き出す前の段階で攻撃が成立しうるものでした。

困るのは、どちらもお客さんから見れば同じメンテナンス画面だということです。見た目だけ整えても「対応しました」という形はできてしまう。そして、ありがとうと言われる。

ちなみに、攻撃の試みは公表の4日前、17日から観測されていました。騒ぎが始まった時点で、時計はすでに進んでいたことになります。

保守なのに、保守していなかった

騒ぎの翌日から見えてきたのが、「保守契約を結んでいたのに、何もされていなかった」という話です。

ホームページを納めたあと、保守契約を結ぶ業者は多い。毎月の売上が積み上がる、ストック型の商売になるからです。ただ、何を保守するのかは、契約によってまったく違います。

「トップページの文言を直してほしい」と頼まれて、保守契約があるから対応する。これも保守です。サーバやCMSのバージョンを日々確認して、問題が出たらすぐに更新する。これも保守です。同じ言葉で、中身がまるで違う。

そして世の中の保守の大半は、前者だと私は思っています。もちろん誰も口にはしません。昔、保守契約を2,000件以上抱える会社の担当者が、保守のお客さんのことを「開けてはいけないパンドラの箱」と言っていました。自覚はあるんです。

保守の形は、これから変わる

お客さんは、昔も今もこれからも、仕組みをなんとなくでしか把握しません。それは悪いことではないし、全部を理解してもらう必要もない。そのために私たちがいます。

変わったのは、何かあったときの実害の大きさです。今回の脆弱性も、AIが見つけたと言われています。同じような発見は、これから数カ月で増えるという見方もあります。なんとなくのまま預けておける時間は、短くなっています。

だから保守は、「何を見ていて、何かあったら何をするのか」を言える契約に変わっていくはずです。今回、意味のあるメンテナンス画面と意味のないメンテナンス画面を見分けられたお客さんは、ほとんどいなかったと思います。見分けられなくていい。その代わり、保守をしている側が説明できる必要がある。

もし今、保守契約を結んでいるなら、一度だけ聞いてみてください。「今回の件で、うちのサイトには何をしてくれましたか」。その答えが、箱の中身です。