• Skip to primary navigation
  • Skip to main content
  • Skip to primary sidebar
  • Skip to footer

株式会社ハイファイブクリエイト

東京都を拠点にWebサイト制作やシステム構築、WordPress保守管理やウェブコンサルティングを提供。

  • SERVICE
  • ABOUT
  • WORKS
  • BLOG
  • NEWS
  • CONTACT
ホーム / ブログ / WordPress / Contact Form 7 に見つかったファイルアップロードの脆弱性はどのくらい危険なのか?

Contact Form 7 に見つかったファイルアップロードの脆弱性はどのくらい危険なのか?

池田祐太郎 | 2020年12月28日 公開 コメントを書く

2020年12月16日、ファイアーウォールサービスなどを提供するAstraのSecurity Researchチームが、WordPressの人気フォームプラグインである Contact Form 7に無制限にファイルをアップロードできる脆弱性があることを発見したというニュースがあり、ウェブ制作界隈は騒然としました(と思います)。

Unrestricted File Upload Vulnerability in Contact Form 7

Contact Form 7は500万以上のサイトで有効インストールされているフォーム系で最も人気のプラグインです。ちなみに海外では利用者が多いWPFormsは400万、Ninja Formsは100万インストールです。

最も古く、最も人気なフォーム系プラグインであり、開発者は日本人

目次

  • 1 ファイルを無制限にアップロードできる脆弱性
  • 2 現在稼働しているフォームにファイルアップロード機能がなければそこまで危険ではない
  • 3 実際に不正利用するのは相当に難しいという見解

ファイルを無制限にアップロードできる脆弱性

Contact Form 7のファイルアップロード機能を使って、無制限に悪意のあるファイルをアップロードすることができるようになります。
本来ならば、Contact Form 7はアップロードするファイルを制限できるのですが、それを迂回できる脆弱性があり、無制限にファイルのアップロードが可能になるようです。

上記Astraのブログ記事によると、
Contact Form 7のバージョン 5.3.1以下かつファイルアップロード機能が有効になっているサイトにおいて、悪意のあるファイルがアップロードできるとのことです。

Further, it allows an attacker to inject malicious content such as web shells into the sites that are using the Contact Form 7 plugin version below 5.3.1 and have file upload enabled on the forms.

https://www.getastra.com/blog/911/plugin-exploit/contact-form-7-unrestricted-file-upload-vulnerability/

上記説明からは、ファイルアップロード機能を有効にしていなければそもそもファイルをアップロードできないため影響はないかと考えられますが、
プラグイン公式サイト側にはそれに関して特に記載はありませんでした。

https://contactform7.com/ja/2020/12/17/contact-form-7-532/

付け加えて、Contact Form 7の脆弱性に関しての詳細なレポートを記述しているセキュリティ系プラグインで有名なWordFenceのブログでは、ファイルアップロード機能を有効にしていないサイトでは攻撃者に対して脆弱性はないと言っています。

If you are using Contact Form 7 without the file upload functionality, your site is not vulnerable to attackers looking to exploit this vulnerability.

https://www.wordfence.com/blog/2020/12/a-challenging-exploit-the-contact-form-7-file-upload-vulnerability/

現在稼働しているフォームにファイルアップロード機能がなければそこまで危険ではない

このことから、現在サイト内で利用しているフォーム内に特にファイルアップロードのフォーム項目がなければ、そもそもファイルをアップロードできないため、現状においてもリスクはないという可能性が高いです。

とはいえ、公式の記載もないですし完全にそうだと言い切れるわけではないため、一番安全なのはWordPressを最新にした上で、Contact Form 7を最新版にアップデートすることです。

Contact Form 7を最新のバージョンにするためにはWordPress 5.4以降のバージョンが必要となり、また、Contact Form 7公式ページ内にも検証済み最新バージョンは5.6と明記されています。

基本的にファイルアップロード機能がなければ上記の通りおそらく問題はないのでしょうが、ファイルアップロード機能があるフォームを使っているサイトにおいて、「WordPress 5.6にも5.4にもアップデートできない問題がある…」という場合は、年末年始で対応もできないことが想定されるため、一旦はフォームのページに現在停止中といったような文言を掲載し、Contact Form 7プラグインを無効化(もしくは一時削除)するのが安全面からしておすすめです。

実際に不正利用するのは相当に難しいという見解

前述のWordFenceのブログ記事によると、実際にContact Form 7のファイルアップロードの脆弱性を使って攻撃することは結構難しいんじゃないかという意見が書いてあります。

要約すると、

  • 仮にファイルをアップロードされたとしてもそのフォルダ名はランダムな名前となる
  • ファイルはフォーム受信者にメール送信された直後に削除される
  • フォルダ名を確認するにはディレクトリを一覧で見られるインデックスリスティングを有効にしないといけない
  • Contact Form 7はアップロードされたファイルへの直アクセスを禁止している
  • つまり、攻撃者はメール送信完了までの短い時間の間にランダムなフォルダ名を見つけ出す必要がある=実際に不可能では?

開発者の方のブログによると、WordFenceのこの記事を書いた方がここまで理解していることに感銘を受けているのと同時に、国内の有名ホスティング事業者がリリースした記事との差を書いていて面白いです。

かたや、自らコードを精査し、公正性を疎かにせず、過度の不安や楽観を招かないよう表現を選んで記事を書いた Wordfence。かたや、適当にググって拾ってきた(であろう)情報を元に無責任な記事を書いて流した日本のホスティング会社。どちらもそれでメシ食ってるプロフェッショナルなんでしょうけど、仕事への取り組み方がこうも違うものかと愕然とするのです。

https://ideasilo.wordpress.com/2020/12/19/professional-work/

問題は一面的ではなく多面的なので、表面だけすくってみていては気づかないものですね。

2020年ももうすぐ終わります。今年は新型コロナウイルスで大変な世の中でしたが、来年はよい方向に動いてくれることを願います。

個人的にはたくさんWordPressに関わった濃密な1年でした。WordPressを取り巻く状況も徐々に変化してきていて、Gutenbergといった機能性のあるエディターがますます進化していくことが予想されます。来年も楽しみにしています。

良いお年をお迎えください。

メールコンサルティング
WordPress保守管理サービス

Filed Under: WordPress 関連タグ:保守管理, 脆弱性

池田祐太郎

WordPress の構築・保守を10年以上にわたって手掛けており、主に小〜中規模のコーポレートサイト・ECサイト・ブランドサイト等の企画・開発・保守・コンサルティングなどを行ってきました。2012年にハイファイブクリエイトを創業し、現在は WordPress の保守やコンサルティング、ディレクションや開発業務などを担当しています。 プロフィール詳細

Reader Interactions

コメントを残す コメントをキャンセル

メールアドレスが公開されることはありません。 ※ が付いている欄は必須項目です

For security, use of Google's reCAPTCHA service is required which is subject to the Google Privacy Policy and Terms of Use.

I agree to these terms.

この記事と関連する記事

外部のプロフェッショナルによる WordPress サイトの保守・運用:安心と安全性を手軽に手に入れる方法
2023年1月25日
タグ: 保守管理
カテゴリー: WordPress
WordPress のクロスサイト・スクリプティング被害にあった事例を共有します
2023年1月11日
タグ: セキュリティ, 保守管理
カテゴリー: WordPress
エラーログに wp-admin, wp-include 配下のファイルが含まれているエラーの対応方法
2022年11月15日
タグ: 保守管理
カテゴリー: TIPS

人気記事

  1. 同一サーバー上に構築するWordPressのテスト環境の作り方
  2. git pull してもエラーが出てファイルが反映されないときの対処法
  3. サイト制作の要件定義書に普段書いている内容(ダウンロード可)
  4. WordPressの固定ページでタグやカテゴリーを使いたいときはカスタム投稿タイプを検討する
  5. ダウンロードして即使えるサイトマップ(サイト構成図)のテンプレート5点
  6. WordPress において PHP 8.1 に更新していいかどうか検証

最初のサイドバー

WordPress保守管理サポート

Search

最近の投稿

  • WordPress サイトを多言語化するプラグイン5選(自動翻訳サービス除く)
  • ウェブサイトを自動的に多言語対応する各サービスを比較します
  • WooCommerce のバリエーションのある商品を追加して売上向上を図る
  • 目次生成プラグインの TOC+ が表示されなくなったときの対処法
  • ChatGPT の有料版「ChatGPT Plus」を使ってみた

カテゴリー

  • CSS初心者
  • HTML初心者
  • TIPS
  • WooCommerce
  • WordPress
  • エステサロン
  • お知らせ
  • キュレーション
  • サイトマップ
  • システム会社
  • デベロッパーツール入門
  • ブログ
  • ホームページ制作
  • ホームページ制作無料講座
  • メール
  • モバイル
  • 仕事のこと
  • 制作実績
  • 整体院
  • 美容院
  • 雑感

タグ

Android BtoC CMS css elementor git Google+ google workspace Gutenberg HTML iPhone jQuery Mac MAMP php SEO SNS SSL Sublime Text Webサイト高速化 Windows WordPress WordPressカスタマイズ WordPressテーマ WordPress構築調査 WPRocket アクセス解析 アプリ クラウドソーシング サイト引っ越し サブスクリプション サーバー ショートカットキー スマホサイト スマートフォン ツール フルサイト編集 ブログ プラグイン マーケティング リニューアル 保守管理 多言語 最適化 集客するサイト構築

アーカイブ

CONTACT

お問い合わせはこちら

Footer

  • PRIVACY POLICY
  • 情報セキュリティ基本方針
  • 特定商取引法に基づく表示
  • 転載/引用

© 2023 high five create All rights reserved.