Querybuilder APIはDispatcher フィルターをバイパスし、機密情報を公開します
この記事では、Querybuilder APIがDispatcher フィルターをバイパスし、機密情報を公開する可能性があるAdobe Experience Manager as a Cloud Service(AEMaaCS)のアクセス制御の問題を解決します。 この解決には、特定のエンドポイントへの不正アクセスをブロックするように設定を更新することが含まれます。
説明 description
環境
Product: Adobe Experience Manager (AEM) as Cloud Service - Sites
問題/症状
/bin/querybuilder.jsonや/etc/truststore.jsonなどの特定のエンドポイントへのリクエストは、エンコードされたスラッシュ(%2F)がURLで使用されている場合、Dispatcher フィルターをバイパスします。 これにより、内部ノードや機密ファイルへの不正アクセスが可能になります。
解決策 resolution
この問題を解決するには、次の手順に従います。
影響を受ける各仮想ホスト設定ファイルを開きます。
設定ファイル内の< VirtualHost> タグを探します。
< VirtualHost> タグ内に次のLocationMatch ブロックを追加します。
< LocationMatch “(?i)/(etc/truststore.json|bin/querybuilder.json)(;|%3B)”>
ProxyPass “!”< /LocationMatch>
仮想ホスト設定ファイルに変更を保存します。
http://localhost:8082/%2fbin%2fquerybuilder.json?path=/etc.に類似したリクエストを送信してテストします。「404 Not Found」エラーが返され、エンコードされたスラッシュがDispatcherに到達する前にApache レベルでブロックされていることを確認します。