Xfce 端末で Null スキャンと SYN スキャンを比較する
このステップでは、Null スキャンの結果と SYN スキャンの結果を比較します。これにより、これら 2 つのスキャンタイプの違いと、ターゲットに関するさまざまな情報を収集するための使い方を理解できるようになります。
SYN スキャン(半オープンスキャンとも呼ばれます)は、TCP ハンドシェイクを完了させない、よりステルスなスキャンです。ターゲットに SYN パケットを送信し、ターゲットが SYN/ACK で応答する場合、そのポートが開いていることを示します。その後、Nmap は接続を閉じるために RST パケットを送信します。
一方、Null スキャンでは、フラグが設定されていない TCP パケットを送信します。ターゲットの応答は、ターゲットのオペレーティングシステムとファイアウォールの設定に応じて、ポートが開いているか、閉じているか、フィルタリングされているかを示すことができます。
まず、localhost(127.0.0.1)に対して SYN スキャンを実行し、結果を syn.txt
という名前のファイルに保存しましょう。
Xfce 端末を開き、次のコマンドを実行します。
sudo nmap -sS -oN syn.txt 127.0.0.1
このコマンドは、Nmap に対象の localhost(127.0.0.1)に対して SYN スキャン (-sS
) を実行し、結果を通常の形式 (-oN
) で syn.txt
というファイルに保存するよう指示します。Nmap を実行するには sudo
権限が必要です。
次に、前のステップで作成した null.txt
の内容と syn.txt
の内容を比較しましょう。2 つのファイルを比較するには、diff
コマンドを使用できます。
diff null.txt syn.txt
diff
コマンドは、2 つのファイルの違いを表示します。また、nano
のようなテキストエディタを使って両方のファイルを開き、横並びに比較することもできます。
nano null.txt syn.txt
両方のスキャンの出力を調べてみましょう。特に、ターゲットシステムがフラグが設定されていないパケットをドロップするように構成されている場合、SYN スキャンの方が Null スキャンよりも開いているポートを特定しやすいことに気付くかもしれません。Null スキャンは、ファイアウォールや侵入検知システムを迂回しようとするためによく使われますが、必ずしも信頼性が高いわけではありません。
主な違いは、SYN スキャンが接続を確立しようとするのに対し、Null スキャンはフラグが設定されていないパケットを送信し、ターゲットの応答に基づいてポートの状態を推測する点です。