ネットワークスペシャリスト 2019年 午前2 問19
問題文
脆弱性検査で、対象ホストに対してポートスキャンを行った。対象ポートの状態を判定する方法のうち、適切なものはどれか。
選択肢
ア:対象ポートにSYNパケットを送信し、対象ホストから“RST/ACK”パケットを受信するとき、接続要求が許可されたと判定する。
イ:対象ポートにSYNパケットを送信し、対象ホストから“SYN/ACK”パケットを受信するとき、接続要求が中断又は拒否されたと判定する。
ウ:対象ポートにUDPパケットを送信し、対象ホストからメッセージ“ICMP port unreachable”を受信するとき、対象ポートが閉じていると判定する。(正解)
エ:対象ポートにUDPパケットを送信し、対象ホストからメッセージ“ICMP port unreachable”を受信するとき、対象ポートが開いていると判定する。
脆弱性検査におけるポートスキャンの判定方法【午前2 解説】
要点まとめ
- 結論:UDPポートにパケットを送信し、ICMPの「port unreachable」メッセージを受信した場合、そのポートは閉じていると判定します。
- 根拠:UDPはコネクションレスで応答がない場合は開いている可能性が高く、ICMPのエラーメッセージが返ると閉じていることを示します。
- 差がつくポイント:TCPのSYN/ACKやRST/ACKの意味を正確に理解し、UDPの応答の有無とICMPメッセージの役割を区別できることが重要です。
正解の理由
選択肢ウは、UDPポートにパケットを送信し、対象ホストからICMPの「port unreachable」メッセージを受信した場合、そのポートが閉じていると判定する方法を正しく説明しています。UDPはコネクションレスであり、応答がない場合はポートが開いている可能性があるため、ICMPのエラーメッセージが返ることが閉じている証拠となります。
よくある誤解
TCPのSYNパケットに対してRST/ACKが返る場合は接続拒否を意味し、SYN/ACKが返る場合は接続許可を意味します。UDPでは応答がないことが開いている可能性を示し、ICMPエラーが閉じていることを示します。
解法ステップ
- ポートスキャンの対象プロトコル(TCPかUDPか)を確認する。
- TCPの場合、SYNパケット送信後の応答(SYN/ACKかRST/ACK)でポート状態を判定する。
- UDPの場合、UDPパケット送信後にICMPの「port unreachable」メッセージが返るかを確認する。
- ICMP「port unreachable」が返ればポートは閉じていると判定し、返らなければ開いている可能性が高いと判断する。
選択肢別の誤答解説
- ア:RST/ACKは接続拒否を示すため、「接続要求が許可された」との説明は誤りです。
- イ:SYN/ACKは接続許可を示すため、「接続要求が中断又は拒否された」との説明は誤りです。
- ウ:UDPパケット送信後にICMP「port unreachable」が返るとポートが閉じていると判定する正しい説明です。
- エ:ICMP「port unreachable」が返る場合はポートが閉じているため、「開いている」と判定するのは誤りです。
補足コラム
TCPのポートスキャンでは、SYNスキャンが一般的で、SYNパケットに対してSYN/ACKが返ればポートは開いており、RST/ACKが返れば閉じていると判断します。一方、UDPはコネクションレスのため応答がないことが多く、ICMPのエラーメッセージが重要な判定材料となります。これらの違いを理解することが脆弱性検査の精度向上に繋がります。
FAQ
Q: UDPポートスキャンで応答がない場合はどう判断すればよいですか?
A: 応答がない場合はポートが開いているか、フィルタリングされている可能性があるため、確定的な判定は難しいです。
A: 応答がない場合はポートが開いているか、フィルタリングされている可能性があるため、確定的な判定は難しいです。
Q: TCPのSYNスキャンでRST/ACKが返る意味は何ですか?
A: RST/ACKは接続拒否を示し、そのポートは閉じていると判断します。
A: RST/ACKは接続拒否を示し、そのポートは閉じていると判断します。
関連キーワード: ポートスキャン、UDP, TCP, ICMP, SYNスキャン、脆弱性検査、ネットワークセキュリティ

\ せっかくなら /
ネットワークスペシャリストを
クイズ形式で学習しませんか?
クイズ画面へ遷移する→
すぐに利用可能!

