セルフホストアプリが脆弱なPHPバージョンを使用しているか確認する方法

エヴァ・ウォン は テクニカルライター であり ZimaSpaceの常駐ティンカーでもあります。 生涯のオタクであり、 ホームラボとオープンソースソフトウェアに情熱を持っています。彼女は複雑な技術的概念をわかりやすく、 実践的なガイドに翻訳することを専門としています。エヴァはセルフホスティングは楽しくあるべきで、怖がるものではないと信じています。彼女のチュートリアルを通じて、コミュニティが ハードウェアのセットアップを解明する手助けをしています。初めてのNAS構築からDockerコンテナの習得まで。

ホストでは複数のPHPバージョンが同時に動作していることがあります。SSHシェルで返されるバージョンは、コマンドラインツールのものであり、公開Webサイトが別のランタイムを使用している場合があります。2026年10月のPHP脆弱性を評価する際は、各バージョンの結果を実際のアプリケーションとサービスに紐付けてください。

ホストのコマンドライン版PHPだけでなく、アプリケーションを提供している環境を確認してください。正確なランタイムブランチまたはディストリビューションのパッケージリビジョンを該当するセキュリティ勧告と照合し、文書化されたベンダーによるバックポートを考慮してください。確認後は、一時的な診断ページを削除してください。

1. PHPを使用するアプリケーションを特定する

アプリケーション、インストール方法、外部からのアクセス経路を一覧にしてください。アプリケーションのドキュメントまたはパッケージのメタデータを確認し、PHPを使用しているかどうかを判断してください。同じアプリケーションイメージを使用する場合は、cronランナーやキューなどの補助サービスも含めてください。

NASのブランドからPHPの使用状況を推測しないでください。複数のアプリケーションを実行しているデバイスでは、サービスごとに評価する必要があります。

2. Composeのデプロイ環境を調べる

docker compose ps
docker compose images
docker compose exec -T app php -v
docker compose exec -T app php --ini

対象のComposeプロジェクトディレクトリで実行してください。appはPHPを含むサービス名に置き換えます。このコマンドで現在のコンテナを特定し、そのサービス内のバイナリを確認します。PHPが独立したphpまたはfpmサービスで実行されている場合は、そちらを調べてください。

php実行ファイルが見つからなくても、アプリケーションが安全である証拠にはなりません。最小構成のイメージ、別のバイナリパス、または独立したランタイムサービスを使用している場合は、メンテナーが指定する確認方法が必要なことがあります。バージョン確認のためだけに、本番コンテナへパッケージをインストールしないでください。

3. ホストにインストールされたPHPを調べる

command -v php
php -v
php --ini

これらはシェルのPHPを示しています。次に、Webサーバーの設定とサービスマネージャーを調べ、サイトを処理しているPHP-FPMプール、Apacheモジュール、またはその他のハンドラーを特定してください。そのコンポーネントのパッケージバージョンとベンダーのセキュリティ勧告を確認してください。PHPのドキュメントによると、設定場所と動作はサーバーインターフェースによって異なります。

ダッシュボードから実際のウェブサービスのランタイム情報を非公開で確認できる場合は、インベントリの補足情報として利用できます。公開のphpinfo()ページをオンラインに残さないでください。確認に関係のない詳細情報が露出するおそれがあります。

4. 根拠をアドバイザリと照合する

10月21日のインシデントに対する上流のセキュリティリリースは、PHP 8.2.35、8.3.36、8.4.27、8.5.12です。同じブランチの、より新しいサポート対象リリースにもこれらの修正が含まれる場合があります。ディストリビューションがセキュリティパッチをバックポートしている場合は、上流のバージョン番号だけでパッケージの採否を決めず、パッケージのリビジョンとアドバイザリを参照してください。

結果は、「修正済みと確認」「影響ありと確認」「ベンダーの根拠待ちで未解決」のいずれかとして記録してください。サポート終了ソフトウェアについては、サポート対象へのアップグレード、または保守を継続するベンダーによる明確な修正を確認してください。未解決の結果は、メンテナンスリストに残しておきましょう。

5. アップデート後の状態を確認する

デプロイ後にも、個別のワーカーやコンテナを含め、同じ確認を繰り返してください。イメージ識別子またはパッケージのリビジョンと、再起動の状態を記録します。通常の認証済みリクエストと、家庭で実際に使う機能をテストしてください。

ZimaCube 2パーソナルクラウドでは、この記録をアプリの設定およびバックアップ手順と一緒に保管してください。「NASを更新した」ではなく、「このアプリケーションはこの修正済みランタイムを使用している」といった追跡可能な記録が役立ちます。影響を受けるコンテナが見つかった場合は、データボリュームを変更する前に、リンク先の更新ガイドを利用してください。

プライベートストレージやセルフホストアプリの環境に、ZimaCube 2パーソナルクラウドホームNASをご検討ください。ソフトウェアのセキュリティは、インストールされているサービス、その設定、検証済みのアップデートによって異なります。

PHPセキュリティシリーズを続ける

情報源と対象範囲

2026年10月22日時点で確認済み。導入に関するアドバイスは、アプリケーションおよびベンダーのドキュメントに照らし合わせる必要があります。この記事は、特定製品の影響の有無を示すものではありません。

サポートとヒント

もっと読む

Get More Builds Like This

Stay in the Loop

Get updates from Zima - new products, exclusive deals, and real builds from the community.

Stay in the Loop preferences

We respect your inbox. Unsubscribe anytime.