基本情報技術者 2017年 秋期 午前(科目A) 問44
問題文
図のように、クライアント上のアプリケーションがデータベース接続プログラム経由でサーバ上のデータベースのデータにアクセスする。アプリケーションとデータベースとの間で送受信されるコマンドや実行結果の漏えいを防止する対策はどれか。

選択肢
ア:サーバ側のデータベース接続プログラムにアクセスできるクライアントのIPアドレスを必要なものだけに制限する。
イ:サーバ側のデータベース接続プログラムを起動・停止するときに必要なパスワードを設定する。
ウ:データベース接続プログラムが通信に使用するポート番号をデータベース管理システムでの初期値から変更する。
エ:データベース接続プログラム間の通信を暗号化する。(正解)
アプリケーションとデータベース間の通信の漏えい対策【午前2 解説】
要点まとめ
- 結論:ネットワーク上でコマンドや結果が盗聴されるのを防ぐには、通信内容を暗号化することが最も直接的かつ確実な対策です。
- 根拠:暗号化により中間者が取得しても平文が得られず、認証付き暗号化ならなりすましや改ざんも防止できます。
- 差がつくポイント:IP制限やポート変更は補助策だが盗聴を防げないため、TLS/SSLやSSHなどのトランスポート層暗号化を必須にする判断が合格で差がつきます。
正解の理由
正解は エ:データベース接続プログラム間の通信を暗号化する。
設問は「コマンドや実行結果の漏えいを防止する」ことを問うており、これは通信路での盗聴(スニッフィング)対策です。通信暗号化(例えば TLS/SSL、SSH、IPsec)は送受信されるデータを暗号化して平文が漏れないようにするため、直接かつ確実に目的を達成します。さらに認証付きの暗号化は通信相手のなりすましや中間者攻撃の防止にも寄与します。
設問は「コマンドや実行結果の漏えいを防止する」ことを問うており、これは通信路での盗聴(スニッフィング)対策です。通信暗号化(例えば TLS/SSL、SSH、IPsec)は送受信されるデータを暗号化して平文が漏れないようにするため、直接かつ確実に目的を達成します。さらに認証付きの暗号化は通信相手のなりすましや中間者攻撃の防止にも寄与します。
よくある誤解
- IPアドレス制限で漏えい防止できると考える誤り:アクセス制限は不正接続を減らすが、既に通信経路に侵入されている場合の盗聴までは防げません。
- ポート番号変更でセキュリティが高まると思う誤り:ポート番号変更は「隠し場所」を変えるだけであり、攻撃者にとっては探索で見つかります(セキュリティ・バイ・オブスキュリティ)。
- プロセスの起動パスワードで通信保護できると考える誤り:プロセス保護はサーバ内部の不正操作防止に有効だが、ネットワーク上のパケット盗聴対策には無関係です。
解法ステップ
- 問題文の脅威(攻撃者による盗聴)を特定する。
- 盗聴対策は「通信の秘匿(暗号化)」が基本であると整理する。
- 各選択肢が「盗聴防止」に直接寄与するかを検証する(アクセス制御・認証・ポート変更・暗号化の効果差を比較)。
- 暗号化を選び、なぜ他が不十分かを理由付けする。
選択肢別の誤答解説
- ア: サーバ側のデータベース接続プログラムにアクセスできるクライアントのIPアドレスを必要なものだけに制限する。
→ 有効な補助策で不正接続の範囲を狭めるが、通信経路上で既に盗聴される場合の平文漏えいは防げないため不十分です。 - イ: サーバ側のデータベース接続プログラムを起動・停止するときに必要なパスワードを設定する。
→ サービス起動制御は管理者権限や不正操作の防止には役立つが、ネットワーク上のデータの暗号化や盗聴防止には関係がありません。 - ウ: データベース接続プログラムが通信に使用するポート番号をデータベース管理システムでの初期値から変更する。
→ ポート番号変更は攻撃の難易度をわずかに上げるだけで、スキャンや解析で容易に特定されるため盗聴対策としては実効性が低いです。 - エ: データベース接続プログラム間の通信を暗号化する。
→ 通信内容を暗号化し平文が得られなくするため、盗聴による漏えいを直接防止できます。よって正解です。
補足コラム
- 実装例:データベースでは多くの場合 TLS(SSL)での接続をサポートしています。PostgreSQLやMySQLではサーバ証明書を用意してクライアント接続をTLS化することで通信の機密性とサーバ認証を確保できます。
- 運用ポイント:暗号化だけでなく証明書管理(CA、失効リスト、更新)やクライアント認証(相互TLS)、強い暗号スイートの採用が重要です。
- 追加対策:VPNやIPsecでトンネリングしても良いですが、アプリケーション層でTLSを使う方が証明書による相互認証など細かく制御できます。
FAQ
Q1: ポート番号を変えるだけではなぜダメですか?
A1: ポートスキャンやパケット解析で容易に検出されるため、秘匿策にはならず本質的な防御にはなりません。
A1: ポートスキャンやパケット解析で容易に検出されるため、秘匿策にはならず本質的な防御にはなりません。
Q2: IP制限だけで十分では?
A2: 内部からの脅威やネットワーク機器の侵害、経路上の盗聴者には無力です。暗号化と組み合わせて運用すべきです。
A2: 内部からの脅威やネットワーク機器の侵害、経路上の盗聴者には無力です。暗号化と組み合わせて運用すべきです。
Q3: どの暗号化方式を使えばよいですか?
A3: 現在は TLS 1.2 以上(理想は TLS 1.3)を採用し、古い弱い暗号スイートは無効化することが推奨されます。
A3: 現在は TLS 1.2 以上(理想は TLS 1.3)を採用し、古い弱い暗号スイートは無効化することが推奨されます。
Q4: 暗号化による性能影響は気にすべきですか?
A4: 暗号化はCPU負荷を増やしますが、現代のハードウェアでは通常許容範囲です。必要ならハードウェアアクセラレーションや負荷分散で対処します。
A4: 暗号化はCPU負荷を増やしますが、現代のハードウェアでは通常許容範囲です。必要ならハードウェアアクセラレーションや負荷分散で対処します。
関連キーワード: データ暗号化、通信の盗聴対策、TLS、SSL、IP制限、ポート変更、認証、鍵管理、VPN、中間者攻撃(MITM)

\ せっかくなら /
基本情報技術者を
クイズ形式で学習しませんか?
クイズ画面へ遷移する→
すぐに利用可能!

