GMOサイバーセキュリティ byイエラエ株式会社は11月28日、同社オフェンシブセキュリティ部アプリケーションセキュリティ課エンジニアの山崎啓太郎氏によるWordPressプラグインAdvanced Custom Fieldsの脆弱性に関する解説記事を同社ブログで公開した。

 山崎氏はWordPressプラグインAdvanced Custom Fields におけるデータベース閲覧に関わる認証の欠如(CVE-2021-20865)、ユーザ一覧取得に関わる認証の欠如(CVE-2021-20866)、フィールドグループ移動に関わる認証の欠如(CVE-2021-20867)の脆弱性と認証欠如の脆弱性(CVE-2022-23183)を発見し、Japan Vulnerability Notes(JVN)に報告を行っていた。


 Advanced Custom Fieldsは編集画面をカスタマイズすることを可能にするWordPressプラグインで、ダウンロード数は200万を超える。

 山崎氏が報告を行ったこれらの脆弱性は、ユーザが自身の権限を超えてデータベース内のデータへのアクセスや操作ができ、特にサイトのユーザ登録が許可されていると第三者による悪用が可能となり、実際に本脆弱性によって非公開情報の奪取が可能となったサイトの存在も確認されている。

 CVE-2021-20866、CVE-2021-20867 は、それぞれ「wp_ajax_nopriv_acf/fields/user/query」「wp_ajax_acf/field_group/move_field」を呼び出すことで「購読者」ユーザが本来許可されていないデータの参照・更新が可能となっている。「wp_ajax_nopriv_」フックはログインしていないユーザからの呼び出しも許可されているため、外部の攻撃者にとっては有用であるが、CVE-2021-20866では呼び出しにはログイン後にプラグインの発行するnonce値を手に入れる必要があるため、管理画面へのログインが必要となっている。

 CVE-2021-20865、CVE-2022-23183 は、「wp_ajax_parse_media_shortcode」フック経由の脆弱性で、脆弱性の存在したAdvanced Custom Fields をインストールすることで、Advanced Custom Fields と関係のないデータベース上のデータを取得することが可能になっていた。

 山崎氏は最後に、本脆弱性はAdvanced Custom Fields v5.12.1では全て修正済みなため、それ以前のバージョンを使用している場合はアップデートを推奨している。

元の記事を読む