WordPressサイトを多言語化する定番プラグイン「TranslatePress」に、ログインしていない第三者が管理者アカウントを乗っ取れる重大な脆弱性(CVE-2026-19632)が見つかりました。TranslatePressは40万サイト以上で使われているプラグインです。「うちのサイトは英語版も用意しているけど、どのプラグインを使っていたか覚えていない」という方は、この記事を読みながら今すぐ確認してください。
結論から言うと、TranslatePress 3.3.1以前を使っているサイトは、3.3.2以降(2026年9月時点の最新は3.3.4)へ今すぐ更新してください。この脆弱性はCVSSスコア9.8(Critical)で、攻撃者は管理者のユーザー名さえ知っていればパスワードを勝手に再設定できます。更新した後は、見覚えのない管理者アカウントや不審なファイルがないかの点検も必要です。
TranslatePressの脆弱性(CVE-2026-19632)とは?何が起きるのか
今回の問題は、一言でいうと「パスワード再設定メールの中身が、翻訳データとして保存され、外部から読み取れてしまう」というものです。WordPressのパスワード再設定メールには、パスワードを再設定するためのURL(再設定キーとログイン名を含む)が書かれています。TranslatePressは、サイト内の文字列を自動的に翻訳辞書へ保存する機能を持っており、特定の条件下ではこのメールの本文も翻訳の対象になっていました。
その結果、再設定URLが翻訳辞書テーブルに平文で記録され、さらにログイン不要で呼び出せるAJAXの処理を通じて、誰でもその辞書の内容を取り出せたのです。攻撃者は「管理者のパスワード再設定を要求する」→「漏れた再設定URLを取り出す」→「自分でパスワードを設定してログインする」という流れで、サイトを完全に掌握できます。
この問題は2026年8月11日にWordfence経由で報告され、開発元のCozmoslabsが8月13日に修正版3.3.2を公開、8月下旬に詳細が公表されました。
影響を受けるバージョンと修正版
| 項目 | 内容 |
|---|---|
| 脆弱性ID | CVE-2026-19632(認証不要のアカウント乗っ取り/パスワード再設定キーの漏えい) |
| 深刻度 | CVSS 9.8(Critical) |
| 影響を受けるバージョン | TranslatePress 3.3.1 以前(無料版) |
| 修正版 | 3.3.2(2026年8月13日公開)。2026年9月時点の最新は3.3.4 |
| 攻撃が成立する条件 | 「文字列の自動保存」が有効(初期設定で有効)、かつ管理者のプロフィール言語が公開中の第2言語に設定されている |
攻撃には条件がありますが、「文字列の自動保存」は初期設定で有効なので、多くのサイトは前提条件の半分をすでに満たしています。管理者の言語設定まで確認して安全と判断するより、更新してしまう方が早くて確実です。なお、最新の3.3.4では別のストアドXSS(悪意あるスクリプトの埋め込み)も修正されているため、更新先は3.3.2ではなく最新版にしてください。
自分のサイトでTranslatePressを使っているか確認する方法
WordPressの管理画面で「プラグイン」→「インストール済みプラグイン」を開き、「TranslatePress」または「TranslatePress – Multilingual」という名前を探してください。プラグイン名の下に表示されているバージョンが3.3.1以前なら対象です。
管理画面に入れない場合は、公開ページのソースを表示して「translatepress」で検索してください。プラグインのCSSやJavaScriptのパスが見つかれば使用中です。
- 制作会社に任せきりの場合は、「TranslatePressのバージョンを確認してほしい」とそのまま伝える
- 多言語表示に別のプラグイン(Polylang、WPML、Bogo など)を使っている場合、今回の脆弱性の対象外
アップデートの手順と注意点
基本的には、管理画面の「更新」画面から「今すぐ更新」を押すだけで完了します。ただし、多言語サイトは翻訳データがデータベースに蓄積されているため、更新前にバックアップを取ってから更新するのが安全です。手順の詳細は安全なアップデート手順の記事にまとめています。
更新後は、日本語ページと第2言語のページを開き、翻訳と言語切り替えが動くか確認してください。私が保守を担当しているサイトでは毎日7世代のバックアップを自動取得しているので、万一崩れても前日の状態へ戻せます。バックアップの取り方は別記事で解説しています。
すでに攻撃されていないか確認するポイント
修正版が出る前にこの脆弱性を突かれていた場合、更新しただけでは侵入者を追い出せません。乗っ取られた管理者アカウントで「別の管理者」や「裏口」がすでに仕込まれている可能性があるからです。以下を順番に確認してください。

- 「ユーザー」一覧で、権限が「管理者」のアカウントに見覚えのないものがないか
- 自分の管理者アカウントで「パスワードを再設定した覚えがないのにログインできない」状態になっていないか
- 「プラグイン」一覧に、入れた覚えのないプラグインが追加されていないか
- パスワード再設定メールが、心当たりのないタイミングで届いていないか(届いていたら攻撃の兆候)
私が過去に対応したマルウェア案件では、サイトを開くと海外のカジノサイトへ飛ばされる改ざんが起きていました。SSHでサーバーに入り、find と grep で最近変更されたファイルや不審なコードを洗い出したところ、wp-content/uploads の中にPHPファイルが置かれ、見覚えのない管理者アカウントまで追加されていました。今回の脆弱性も「管理者になれる」タイプなので、侵入されていれば同じ手口が使われていると考えてください。詳しい駆除の流れはマルウェア駆除の記事にまとめています。
ここまでのまとめ
- TranslatePress 3.3.1以前には、ログイン不要で管理者を乗っ取れる脆弱性がある
- 対処は「最新版(3.3.4)への更新」+「管理者アカウントとファイルの点検」の2段構え
- 心当たりのないパスワード再設定メールや管理者アカウントがあれば、すでに攻撃されている可能性が高い
ここから先は、技術担当者や制作会社の方向けに、脆弱性の仕組みと恒久的な対策を解説します。
技術者向け:なぜ再設定キーが外部から読めたのか
TranslatePressは、ページ出力やメールに含まれる文字列を検出し、第2言語ごとの翻訳辞書テーブル(trp_dictionary_ で始まるテーブル)へ自動保存します。パスワード再設定メールも、対象ユーザーのプロフィール言語が公開中の第2言語なら翻訳パイプラインを通るため、再設定キーとログイン名を含むURLが辞書テーブルに平文で保存されていました。
もう一つの問題が、翻訳辞書を返すAJAXアクション「trp_get_translations_regular」です。これは wp_ajax_ と wp_ajax_nopriv_ の両方に登録されていたため、未ログインでも呼び出せ、攻撃者が任意の文字列IDを指定すると該当する辞書行がそのまま返っていました。つまり「機密情報を保存してはいけない場所に保存した」ことと「その場所を認証なしで読めた」ことの2つが重なった脆弱性です。
WordPress本体は再設定キーをハッシュ化して保存し、平文のキーはメールにしか存在しません。プラグインがそのメール本文を保存した時点で本体側の防御は無意味になります。OWASP Top 10でいえば「アクセス制御の不備」と「機密データの露出」の組み合わせです。
技術者向け:管理者アカウントを守るための恒久対策
プラグインの更新は応急処置です。次に同じ種類の脆弱性が出ても被害を最小化できるよう、以下を組み合わせてください。
- 管理者アカウントに二要素認証を設定する。パスワードを再設定されても、二要素認証があれば即ログインはされない
- 管理者権限のアカウント数を最小限にし、日常の記事更新は編集者権限で行う
- admin-ajax.php への未認証リクエストをWAFで監視・制限する。エックスサーバーの標準WAFやセキュリティプラグインのファイアウォールが使える
- wp-content/uploads でPHPが実行できないよう .htaccess で制限する
- 使っていない言語・使っていないプラグインは削除して攻撃面を減らす
私自身は不正ログイン対策として、ログインURL変更・管理画面制限・ログイン通知が1つで完結する国産の CloudSecure WP Security へ、Wordfenceから移行しました。設定の考え方は不正ログイン対策の記事に書いています。また、今回のように「よく使われているプラグインほど狙われる」点は、脆弱なプラグインのリスクの記事でも触れています。
なお、Wordfenceのファイアウォールルールは有料ユーザーには8月13日に、無料ユーザーには9月12日に配信される予定です。無料版のWordfenceだけを頼りにしているサイトは、それまで防御ルールが届いていないため、プラグインの更新自体を優先してください。
まとめ:更新と点検をセットで、今日中に
TranslatePressの脆弱性は、攻撃者が管理者のユーザー名を知っているだけで成立し、しかも初期設定の多くが攻撃条件を満たしています。今日中に最新版へ更新し、管理者アカウント・プラグイン一覧・uploads 内のファイルを点検する、この2つをセットで済ませてください。
「更新したいがサイトが壊れないか不安」「すでに乗っ取られているかもしれない」という場合は、WordPressトラブル対応サービスで調査から復旧までお引き受けします。今後も毎回自分で更新と点検をするのが大変なら、更新代行と毎日のバックアップ、不正アクセス監視をまとめて任せられる保守サポートサービスもご検討ください。まずは現状を把握したいという方は、無料AI診断でサイトのリスクをチェックできます。