TAチームが 「Joomla! CMS Security Bypass (CVE-2023-23752) 」を分析して書いた脆弱性レポート。
CVE-2023-23752 は、Joomla! バージョン 4.0.0 から 4.2.7 に見つかった脆弱性で、不正なアクセス検証により、ウェブサービスエンドポイントへの不正アクセスが可能です。これにより、悪意のあるユーザが認証なしでシステムにアクセスしたり、データを操作したりできる危険性があります。 Joomlaのデフォルトのルーティングエントリの1つであるREST API api/index.phpはデフォルトでブロックされていますが、特定のパラメータ(public=true)を含めることでアクセスすることができます。このAPIはデータベースアカウントやパスワードなどの機密設定情報を公開する可能性があります。 対応策として、影響を受けるバージョンの最新のセキュリティパッチを適用し、サーバーレベルでのアクセス制御を強化し、Webアプリケーションファイアウォール(WAF)を介してデータをブロックする必要があります。
出典: https://www.idappcom.co.uk/post/joomla-cms-security-bypass-cve-2023-23752
Source: https://xz.aliyun.com/t/12175?time__1311=GqGxRDuDgA0%3D%3DGN4eeTq18e40KD%3DDcnQWoD
CVE-2023-23752 は、Joomla! バージョン 4.0.0 から 4.2.7 に見つかった脆弱性で、不正なアクセス検証により、ウェブサービスエンドポイントへの不正アクセスが可能です。これにより、悪意のあるユーザが認証なしでシステムにアクセスしたり、データを操作したりできる危険性があります。 Joomlaのデフォルトのルーティングエントリの1つであるREST API api/index.phpはデフォルトでブロックされていますが、特定のパラメータ(public=true)を含めることでアクセスすることができます。このAPIはデータベースアカウントやパスワードなどの機密設定情報を公開する可能性があります。 対応策として、影響を受けるバージョンの最新のセキュリティパッチを適用し、サーバーレベルでのアクセス制御を強化し、Webアプリケーションファイアウォール(WAF)を介してデータをブロックする必要があります。
1. 概要
CVE-2023-23752 は、4.0.0 から 4.2.7 までの Joomla! バージョンにおける脆弱性です。この脆弱性は、不正なアクセスチェックにより、ウェブサービスのエンドポイントへの不正アクセスを可能にします。その結果、悪意のあるユーザが認証なしでデータにアクセスしたり、システムを操作したりできるリスクが存在します。
2. 攻撃タイプ
Joomlaのデフォルトのルーティングエントリでは、開発者向けのREST APIであるapi/index.php以下のAPIはデフォルトではアクセスできません。 しかし、特定のAPIはパラメータにpublic=trueを含めることでアクセスでき、内部情報へのアクセスを許可します。
- アクセシブルなAPI
v1/banners
v1/banners/:id
v1/banners/:id/contenthistory
v1/banners/:id/contenthistory/keep
v1/banners/clients
v1/banners/clients/:id
v1/banners/categories
v1/banners/categories/:id
v1/config/application
v1/config/:component_name
v1/contacts/form/:id
v1/contacts
v1/contacts/:id
v1/contacts/categories
v1/contacts/categories/:id
v1/fields/contacts/contact
v1/fields/contacts/contact/:id
v1/fields/contacts/mail
v1/fields/contacts/mail/:id
v1/fields/contacts/categories
v1/fields/contacts/categories/:id
v1/fields/groups/contacts/contact
v1/fields/groups/contacts/contact/:id
v1/fields/groups/contacts/mail
v1/fields/groups/contacts/mail/:id
v1/fields/groups/contacts/categories
v1/fields/groups/contacts/categories/:id
v1/contacts/:id/contenthistory
v1/contacts/:id/contenthistory/keep
v1/content/articles
v1/content/articles/:id
v1/content/categories
v1/content/categories/:id
v1/fields/content/articles
v1/fields/content/articles/:id
v1/fields/content/categories
v1/fields/content/categories/:id
v1/fields/groups/content/articles
v1/fields/groups/content/articles/:id
v1/fields/groups/content/categories
v1/fields/groups/content/categories/:id
v1/content/articles/:id/contenthistory
v1/content/articles/:id/contenthistory/keep
v1/extensions
v1/languages/content
v1/languages/content/:id
v1/languages/overrides/search
v1/languages/overrides/search/cache/refresh
v1/languages/overrides/site/zh-CN
v1/languages/overrides/site/zh-CN/:id
v1/languages/overrides/administrator/zh-CN
v1/languages/overrides/administrator/zh-CN/:id
v1/languages/overrides/site/en-GB
v1/languages/overrides/site/en-GB/:id
v1/languages/overrides/administrator/en-GB
v1/languages/overrides/administrator/en-GB/:id
v1/languages
v1/media/adapters
v1/media/adapters/:id
v1/media/files
v1/media/files/:path
v1/menus/site
v1/menus/site/:id
v1/menus/administrator
v1/menus/administrator/:id
v1/menus/site/items
v1/menus/site/items/:id
v1/menus/administrator/items
v1/menus/administrator/items/:id
v1/menus/site/items/types
v1/menus/administrator/items/types
v1/messages
v1/messages/:id
v1/modules/types/site
v1/modules/types/administrator
v1/modules/site
v1/modules/site/:id
v1/modules/administrator
v1/modules/administrator/:id
v1/newsfeeds/feeds
v1/newsfeeds/feeds/:id
v1/newsfeeds/categories
v1/newsfeeds/categories/:id
v1/plugins
v1/plugins/:id
v1/privacy/requests
v1/privacy/requests/:id
v1/privacy/requests/export/:id
v1/privacy/consents
v1/privacy/consents/:id
v1/redirects
v1/redirects/:id
v1/tags
v1/tags/:id
v1/templates/styles/site
v1/templates/styles/site/:id
v1/templates/styles/administrator
v1/templates/styles/administrator/:id
v1/users
v1/users/:id
v1/fields/users
v1/fields/users/:id
v1/fields/groups/users
v1/fields/groups/users/:id
v1/users/groups
v1/users/groups/:id
v1/users/levels
v1/users/levels/:id
- このAPIは、データベースのアカウントやパスワードなど、ウェブサイトの最も重要な設定情報を取得するために使用されます。
3. 対応
CVE-2023-23752の脆弱性に対する普遍的な対応方法は以下の通りです:- Joomla!を使用している場合、4.0.0から4.2.7までのバージョンを使用している場合は、最新のセキュリティパッチが必要です。
- WAF機能により、サーバーレベルでのアクセス制御を実施し、データをブロックする。