こんなシステムを引き受けます
- PHP 8.1 以前、または PHP 5・7 系で動いている
- 作った会社や担当者がもういない、仕様書がない
- テストがなく、どこを直すと何が壊れるかわからない
- EC-CUBE、WordPress、CakePHP、古い Laravel、独自のフレームワークで作られている
- 脆弱性のニュースが出るたびに、自社が対象かどうかを調べるだけで一日かかる
2026年10月の php2shell のように、古いPHPには修正版そのものが出ないことがあります。PHP 8.2 のサポートも2026年12月31日で終わります。
進め方
一度に全部を作り直すことはしません。動いているシステムを止めずに、一段ずつ、毎回確かめながら進めます。
1. 棚卸しと、いま必要な手当て
本番で動いているPHP、フレームワーク、ライブラリのバージョン、サーバーの構成、外部とのつながりを一覧にします。そのうえで、公表済みの脆弱性に当たるものを洗い出し、今すぐ必要な修正版の適用や設定の変更を行います。
お渡しするもの:現状の一覧、危ない順に並べたリスク、行った手当ての記録。
2. 安全網をつくる
直す前に、今の動きを記録します。主な画面と処理(ログイン、注文、決済、管理画面の更新など)が今どう動くかを自動テストに残し、バックアップと元に戻す手順を実際に試し、本番と同じ構成の検証環境を用意します。
お渡しするもの:今の動きを確かめるテスト、試した戻し方の手順、検証環境。
3. サポート中のバージョンへ上げる
PHP 8.3 か 8.4 へ、フレームワークとライブラリも合わせて上げます。一度に上げるのは一段だけで、そのたびにテストを流し、検証環境で画面を見比べてから本番に出します。
お渡しするもの:段階ごとの変更の記録、それぞれの戻し方。
4. 必要なところだけ、新しい構成へ移す
アップグレードで足りるなら、ここで終わりです。画面の作りが限界に来ている、機能を足すたびに壊れる、といった部分があれば、そこだけを新しい構成(たとえば Next.js の画面と API)へ移します。古い仕組みと並べて動かし、切り替えは機能ごと、一部の利用者からです。
お渡しするもの:移した部分のコードと手順、切り替えの記録。
そのあと:見張る
更新のあとに出る不具合をいち早く見つけるため、エラーと、利用者が感じた不具合の報告を集めます。ここでは自社のオープンソース Mushi Mushi を使います。
やらないこと
- 全部を一度に作り直す提案
- 今の動きを記録しないまま、本番を書き換えること
- 必要のない移行を勧めること
- 「これで完全に安全です」という約束
- 攻撃の手順や検証用の攻撃コードを扱うこと
ご相談の形
- 棚卸しだけ:範囲を決めて、現状の一覧とリスクの順位をお渡しします。
- 緊急の手当て:修正版の適用や暫定策の設定、入られていないかの確認。
- 段階的なアップグレードと移行:上の2〜4を、段階ごとに区切って進めます。
費用は、最初の棚卸しのあとに段階ごとにお見積もりします。
kensaurus について
kensaurus合同会社は、東京・渋谷の小さな開発会社です。予約と決済、会計、AIを使う機能をもつ自社のサービスやアプリを10以上、自分たちで作って運用しています(展示室で見られます)。AIのコーディングエージェントも使いますが、この仕事での変更は、すべてテストと見比べで確かめてから本番に出します。
ご相談は、下のリンクからメールでどうぞ。いま動いているPHPのバージョンがわかれば、書き添えてください。