問43 ポートスキャンの判定

応用情報​技術者試験 令和7年度 秋期 午前、全80問のうちの問43。

出典:令和7年度 秋期 応用情報技術者試験 午前 問43(ふりがなを省いた)

脆弱性検査で,ホストに対してポートスキャンを行う。スキャンしたポートの状態を判定する方法のうち,適切なものはどれか。

  1. アポートに SYN パケットを送信して“RST/ACK”パケットを受信したとき,接続要求が許可されたと判定する。
  2. イポートに SYN パケットを送信して“SYN/ACK”パケットを受信したとき,接続要求が中断又は拒否されたと判定する。
  3. ウポートに UDP パケットを送信してメッセージ“ICMP port unreachable”を受信したとき,対象ポートが閉じていると判定する。
  4. エポートに UDP パケットを送信してメッセージ“ICMP port unreachable”を受信したとき,対象ポートが開いていると判定する。
答えと解説を開く

正解はウです。

UDP には接続の手順が無いので、送ったパケットを受け取るアプリが無いポートに届くと、相手の機械は ICMP の port unreachable (そのポートには届けられない) を返します。だから、このメッセージが返ってきたら、そのポートは閉じていると判定できます。正解はウです。なお、何も返ってこない場合は、開いているか、途中で捨てられたかのどちらかで、区別がつきません。

ほかの選択肢が違う理由

  • アSYN に RST/ACK が返るのは、接続を断られた、つまりポートが閉じているときです。許可されたとは判定しません。
  • イSYN に SYN/ACK が返るのは、接続を受け付けた、つまりポートが開いているときです。拒否されたとは判定しません。
  • エport unreachable は、そのポートで待っているアプリが無いことを示すので、開いているのではなく閉じていると判定します。

仕組み

TCP は、SYN、SYN/ACK、ACK の 3 回のやり取り (3 ウェイハンドシェイク) で接続を始めます。最初の SYN への返事を見るだけで、ポートが開いているかが分かります。

ポートスキャンは攻撃者の下調べにも使われるので、自分の管理する機械に対してだけ、許可を得て行います。開いている必要の無いポートは閉じておくのが守りの基本です。

この問に出る言葉