
CVE-2026-48908 — SP Page Builder(Joomla)の任意ファイルアップロードを介した未認証RCEのPoCエクスプロイト。マルチスレッド対応、ケースバイパス、シェル検証。許可されたセキュリティテスト専用です。
Critical(CVSS v4: 10.0)— Joomla向けSP Page Builder(
com_sppagebuilder)における未認証リモートコード実行の概念実証エクスプロイト
| 属性 | 値 |
|---|---|
| CVE ID | CVE-2026-48908 |
| 深刻度 | Critical |
| CVSS v4 スコア | 10.0 |
| 弱点 | CWE-284(不適切なアクセス制御)→ 未認証ファイルアップロード |
| コンポーネント | Joomla向けSP Page Builder(com_sppagebuilder) |
| 影響を受けるバージョン | 1.0.0 – 6.6.1 |
| 修正バージョン | 6.6.2 |
| 必要な権限 | なし(認証前) |
| ユーザー操作 | なし |
| 攻撃ベクトル | ネットワーク |
| 影響 | システム全体の侵害(RCE) |
SP Page Builderは、カスタムアイコンフォントパッケージのアップロードを処理するコントローラタスク asset.uploadCustomIcon を公開しています:
index.php?option=com_sppagebuilder&task=asset.uploadCustomIcon
脆弱なバージョンでは、このタスクは認証なしかつ有効なCSRFトークンなしで到達可能です。ZIPアーカイブ(multipartフィールド custom_icon)を受け入れ、その内容を展開して、Webルート配下の公的にアクセス可能なディレクトリに配置します:
/media/com_sppagebuilder/assets/iconfont/<name>/
エンドポイントは認証前にアクセス可能で、展開されたファイルはブラウズ可能な場所に配置されるため、攻撃者は任意のファイルをアップロードし、HTTP経由でリクエストすることでPHPコードを実行できます。
このエクスプロイトは、以下の方法で一般的なサーバー側ファイル名フィルタを回避します:
.php、.phtml、.phar などを拒否しますが、大文字小文字を正規化しないため、.PHP などの混在大文字小文字のバリアントが受け入れられます。selection.json、style.css、fonts/<name>.ttf をパッケージ化するため、アップロードが受け入れられます。fonts/shxt.{ext} に書き込まれます。.php と .PHP のバリアントを試行しますresult.txt に保存しますrequests ライブラリgit clone https://github.com/Jenderal92/CVE-2026-48908
cd CVE-2026-48908
pip install requests
基本的な使用方法
python2 CVE-2026-48908.py list.txt
スレッド数を指定する場合
python2 CVE-2026-48908.py list.txt 20
入力ファイルの形式
list.txt には、1行に1つのターゲットURLを記述します:
https://example.com
http://target-site.com/joomla
https://192.168.1.100/joomla
出力
· 成功したシェルのURLは result.txt に追加されます · 各行には、アップロードされたPHPシェルへの完全なURLが含まれます
⚙️ 動作の仕組み
シェルペイロード
組み込まれたシェルは以下を提供します:
· サーバー環境情報(php_uname()) · 追加ファイルをアップロードするためのファイルアップロードインターフェース · 成功/失敗のフィードバック
🛡️ 緩和策
· SP Page Builderをバージョン6.6.2以降にアップグレードします。 · アップロードディレクトリに不正なファイルがないか監査します: · /media/com_sppagebuilder/assets/iconfont/ · それらのディレクトリで見つかった予期しないPHPファイルを削除します。 · asset.uploadCustomIcon への不審なPOSTリクエストがないかサーバーログを確認します。 · そのようなリクエストをブロックするためにWebアプリケーションファイアウォール(WAF)を導入します。
⚠️ 免責事項
このツールは、教育および許可されたセキュリティテスト目的のみに使用されます。
コンピュータシステムへの不正アクセスは違法です。作者は、このツールの誤用または損害について一切の責任を負いません。所有しているシステム、または明示的な書面によるテスト許可を得たシステムでのみ使用してください。
詳細な免責事項 Jenderal92 のカバーに記載されている免責事項をご覧いただけます。こちら !!! で確認できます。
📚 参考情報
· Censys アドバイザリ · NVD エントリ · JoomShaper セキュリティ告知
📄 ライセンス
このプロジェクトは教育および研究目的のみです。使用は自己責任で行ってください。