Skip to content
KitploitKITPLOIT
ツールエクスプロイトブログ
Log in
提出
ツールエクスプロイトブログ
提出

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

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

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

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
Vitepos-CVE-Report — CVE-2025-13156の開示 | Kitploit
ツール/GitHubGitHub/mooseloveti/vitepos-cve-report
脆弱性分析コード分析エクスプロイトウェブアプリケーション悪用ペネトレーションテスト学習と教育
GitHubmooseloveti/vitepos-cve-report

Vitepos-CVE-Report

CVE-2025-13156の開示

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

人気

すべて見る →

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

すべてのツールを探索

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

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

Vitepos-CVE-Report

CVE-2025-13156 の開示

CVE-2025-13156 - Vitepos – Point of Sale (POS) for WooCommerce の脆弱性

このリポジトリは、appsbd によって開発された WordPress プラグイン Vitepos – Point of Sale (POS) for WooCommerce <= 3.3.0 で発見された脆弱性を開示するものです。

🛠 影響を受けるバージョン

  • 製品: Vitepos – Point of Sale (POS) for WooCommerce
  • バージョン: ≤ v3.3.0
  • URL: https://wordpress.org/plugins/vitepos-lite/

🔒 割り当て済み CVE

CVE ID種類コンポーネント影響
CVE-2025-13156認証済み(購読者+)任意ファイルアップロードによるリモートコード実行modules/class-pos-settings.php api/v1/class-pos-product-api.php影響を受けるサイトのサーバーに任意のファイルをアップロードできる

🧾 詳細な説明

CVE-2025-13156 — 認証済み(購読者+)任意ファイルアップロード

  • 影響を受けるコンポーネント: サイトのサーバー
  • 攻撃ベクトル: 影響を受けるサイトのサーバーに任意のファイルをアップロードする。
  • トリガー: これにより、購読者レベル以上のアクセス権を持つ認証済み攻撃者が、影響を受けるサイトのサーバー上に任意のファイルをアップロードできるようになり、リモートコード実行が可能になります。
curl -k \
  'http://localhost:8080/wp-json/vitepos/v1/product/add-category' \
  -H 'Cookie: wordpress_logged_in_<your_hash>=<your_cookie>' \
-H 'X-WP-Nonce: <your_nonce>' \
  -F 'category_name=evil' \
  -F 'category_parent=0' \
  -F 'category_description=PoC-shell' \
  -F 'category_image=@./shell.php;filename="shell.php";type=application/octet-stream'

  • 影響: 認証済みユーザー(購読者などの低権限ロールを含む)は、公開されている Vitepos Lite の REST エンドポイントを介して、wp-content/uploads/// に任意のファイルをアップロードできます。PHP の実行が有効なサーバー(またはアップロードした設定ファイルを介して再び有効にできるサーバー)では、これによりリモートコード実行につながります。実行がブロックされている場合でも、攻撃者は悪意のあるペイロードをホストしたり、アップロードした HTML/SVG を介して格納型 XSS を仕掛けたりできます。これにより、事実上、ログイン済みのすべてのユーザーに任意ファイル書き込みプリミティブが与えられます。

❓脆弱性の原因

このプラグインの /wp-json/vitepos/v1/product/... 配下の REST ルートは、緩い権限チェックに依存しており、呼び出し元が POS ユーザーであるか、商品タームを管理する権限を持っているかを無視して、事実上あらゆるログイン済みユーザー(is_user_logged_in())を受け入れます。その結果、低権限ロール(例: 購読者)でも add-category/update-category などのエンドポイントに到達できます。

  • 各 REST ルートを、current_user_can('manage_product_terms') をチェックする厳格な permission_callback で保護する
  • クライアントのファイル名/Content-Type を信頼せず、厳格な許可リスト(例: JPEG/PNG/WebP)を備えた wp_handle_upload() と wp_check_filetype_and_ext() を使用し、不明なタイプや実行可能なタイプを拒否する

ひとこと

WebRoot直下には置けないため、環境によって成功しない場合がある。Uploads配下は基本PHPの実行が許可されていないので、よほど変な環境じゃないと無理じゃないかなあと思った。 MIME許可リストにapplication/octet-streamという文字列が見えた瞬間嫌な予感がしたが本当に成功してしまい、ビックリだった。 本来はWordPressのコア部分がPHPのアップロードを防いでいるのだが、このプラグインは独自の処理を実装していたため、今回の脆弱性が再現出来た。かな~りレアケースです。

🔍 発見者

名前: MooseLove
役割: 独立系セキュリティ研究者 / バグハンター
連絡先: リクエストに応じて提供します


📚 参照

  • 製品: https://wordpress.org/plugins/vitepos-lite/

⚠️ ライセンス

本アドバイザリは、一般のセキュリティ啓発を目的として提供されています。出典を明記の上、自由に共有して構いません。

ツールをダウンロード