過去問ドリル

LinuCレベル1 セキュリティ 問37

セキュリティ/セキュリティ管理業務の実施

外部に公開するポートを棚卸しするため、サーバー上で「ss -ltn」を実行したところ、次のように表示された。この結果から判断できることとして適切なものはどれか。 State Recv-Q Send-Q Local Address:Port Peer Address:Port LISTEN 0 128 0.0.0.0:22 0.0.0.0:* LISTEN 0 80 127.0.0.1:3306 0.0.0.0:* LISTEN 0 511 *:80 *:*

当サイトのオリジナル問題(LinuCレベル1の出題範囲「セキュリティ」に対応。実際の試験問題ではありません)

正解:C

解説

ssの-lは待ち受け(LISTEN)状態のソケットだけを、-tはTCPを、-nはポート番号を数値のまま表示します。Local Addressの列は、そのポートをどのアドレスで待ち受けているかを表し、0.0.0.0や*はすべてのアドレス、127.0.0.1はループバックアドレスだけを意味します。ループバックだけで待ち受けているポートには同じホストの中からしか接続できないため、データベースなどを外部に公開しない設定になっているかをこの列で確認できます。実際に他のホストから到達できるかどうかはファイアウォールの設定にも左右されるため、他のホストからnmapで調べる方法もあります。待ち受けているプロセスまで知りたいときは、root権限で-pを付けます。

選択肢ごとの解説

  • A誤り。3306番のLocal Addressは127.0.0.1で、ループバックアドレスだけで待ち受けています。全インタフェースで待ち受けている場合は0.0.0.0や*と表示されます。
  • B誤り。Local Addressの「*」はすべてのアドレスで待ち受けていることを表します。80番は、どのアドレス宛ての接続も受け付ける状態です。
  • C正しい。127.0.0.1:3306はループバックアドレスだけでの待ち受けなので、同じホストの中からしか接続できません。
  • D誤り。待ち受け状態のソケットのPeer Addressは、接続相手がまだ決まっていないため0.0.0.0:*や*:*と表示されます。接続元を制限する意味ではありません。
LinuCレベル1の問題を演習モードで解く