【Security Hub CSPM修復手順】 [RDS.43] RDS DB プロキシの接続には TLS 暗号化が必要です
こんにちは、クラスメソッドオペレーションズの watabo です。
今回は、Security Hub CSPM のコントロール [RDS.43] RDS DB プロキシの接続には TLS 暗号化が必要です / RDS DB proxies should require TLS encryption for connections への対処方法を紹介します。
前提条件
本記事はAWS Security Hub CSPM で「AWS基礎セキュリティのベストプラクティススタンダード」を利用されている方向けの内容です。
Security Hub CSPM の詳細については以下の記事をご覧ください。
コントロールの概要
このコントロールは、RDS ProxyがプロキシとバックエンドのRDS DBインスタンス間のすべての接続でTLSを要求する設定になっているかチェックします。「トランスポート層セキュリティが必要」を有効にすることで、このコントロールはPASSEDになります。
RDS Proxyは、クライアントアプリケーションとバックエンドのRDS DBインスタンスの間に配置されるプロキシサービスです。
クライアントからRDS Proxy、RDS ProxyからRDS DBインスタンスへの各接続区間で、それぞれTLSを適用できます。
このコントロールは、プロキシとRDS DBインスタンス間の通信を対象としています。
RDS Proxy の詳細はこちらにまとまっています。
対処方法
修復を行う前に、RDS Proxyを利用しているアプリケーションやサービスを把握しておきましょう。設定変更中はプロキシが約1分間 変更中 (modifying) 状態になり、既存の接続が瞬断する可能性があります。アクセスの少ない時間帯での変更をお勧めします。
マネジメントコンソールからの設定
- RDSコンソールを開きます
- 左側のナビゲーションペインから「プロキシ」を選択します

- 対象のRDS Proxyを選択します
- 右上の「アクション」→「変更」をクリックします

- 「接続のセキュリティ」セクションで「Transport Layer Security が必要」のチェックボックスをオンにします
- 画面下部の「変更」ボタンをクリックします

プロキシのステータスが 変更中/modifying から 利用可能/available に戻れば設定変更は完了です。
AWS CLIでの設定
コンソール操作の代わりに、AWS CLIでも同様の変更が可能です。
aws rds modify-db-proxy \
--db-proxy-name <プロキシ名> \
--require-tls \
--region <リージョン>
Security Hubへの反映確認
修復後、Security Hubコンソールの「検出結果」からRDS.43の結果を確認します。

※ RDS.43はスケジュールタイプが「定期的(Periodic)」のため、設定変更後すぐには反映されません。反映には最大24時間程度かかる場合があります。
RDS Proxy - DB インスタンス間の通信暗号化について
当該項目はデフォルトでは無効になっています。
設定を有効化するべき立場としてそれぞれメリット・デメリットを記載します。
有効化のメリット
有効化することで、Proxy と RDS DB インスタンス間の通信が暗号化され、VPC 内部での盗聴リスクを排除できます。
また、公式ドキュメントにも記載があるように、DB インスタンスのバージョンが古い場合でも Proxy を経由することでクライアント側から TLS 1.3 で接続することができます。
Amazon RDS Proxy は、クライアントアプリケーションと基盤となる RDS DB インスタンスの間に別のセキュリティ層を追加します。例えば、基盤となる DB インスタンスが古いバージョンの TLS をサポートしている場合でも、TLS 1.3 を使用して RDS Proxy に接続できます。RDS Proxy を使用すると、データベースアプリケーションに強力な認証要件を適用できます。
有効化していないことのデメリット
有効化していない場合、Proxy と RDS DB インスタンス間の通信が平文で流れる可能性があります。
同一 VPC 内とはいえ、マルチテナント環境や共有サブネット構成では、他のワークロードからのパケットキャプチャが理論上可能です。
VPC 内は信頼できるネットワークという前提は崩れつつあり、侵害された EC2 やコンテナから内部通信をキャプチャされるリスクは現実的な脅威です。
おわりに
RDS.43はプロキシ側の設定変更のみで対応できるシンプルなコントロールです。
クラウド黎明期からの慣習で「VPC 内は信頼できるネットワーク」という考え方が根強くありますが、ゼロトラストの考え方に基づき、このコントロールが作られたものと考えられます。
このエントリがどなたかの助けになれば幸いです。





