324.2 ネットワークセキュリティスキャン機能
324.2 ネットワークセキュリティスキャン機能
重要度 5
説明 ネットワークセキュリティ検知ツールの方法と設定に精通していること。
主要な知識範囲
・nessusの設定、NASL及び使用方法
重要なファイル、用語、ユーティリティ
- nmap
- wireshark
- tshark
- tcpdump
- nessus
- nessus-adduser/nessus-rmuser
- nessusd
- nessus-mkcert
- /etc/nessus
Nessus
Nessusはセキュリティホールを調査するソフトウェアです
ポートスキャン機能があり、使用していないポートやセキュリティ上危険なポートを検知する
セキュリティホールをついて攻撃し、システムへの侵入を試みる機能がある
検査対象サーバの外部にNessusをインストールした端末を用意し、外部から対象サーバのセキュリティホールを探します
サーバのセキュリティ検査の厳密さという点では、「Safe Checks」という設定項目により次のようになります
・Safe Checks をONにした場合
対象サーバへの影響が少なくなりますが、厳密なセキュリティ検査はできません
・Safe Checks をOFFにした場合
厳密なセキュリティ検査が可能ですが、検査対象サーバへの影響を及ぼす可能性があります
nessus-mkcert
nessus-mkcertは、暗号化通信用の鍵や証明書を生成するNessusコマンドです
このコマンドを利用することで、Nessusの鍵や証明書を簡単に生成できます
書式
nessus-mkcert [オプション]
[]省略可能
NASL
NASLは、正式名称をNessus Attack Scripting Languageと言います
Nessusセキュリティスキャナのためにデザインされたスクリプト言語 です。
誰にでも数分で与えられたセキュリティホールのテストが書け、OSを心配する必要なくそのテストを人々と共有できます。
NASLスクリプトが、指定されたターゲットへの与えられたセキュリティテスト以外の悪さを出来ない、ということが目的になっている
Nmap
ネットワーク探索とセキュリティスキャナの機能を備えたコマンドです
nmapコマンドを実行するには、一部を除いてroot権限が必要です
書式
nmap [スキャンタイプ] [オプション] ターゲット
[]省略可能
主なスキャンタイプ
-sA | ACKスキャン |
-sF | ステルスFINスキャン |
-sL | リストスキャン |
-sN | Nullスキャン |
-sO | IPプロトコルスキャン |
-sP | Pingスキャン |
-sS | TCP SYNスキャン |
-sT | TCP Connectスキャン |
-sW | Windowsスキャン |
-sX | Xmasツリースキャン |
主なオプション
-F | 高速のスキャンモード |
-iL [ファイル名] | ターゲットをファイルから読み込む |
-p [ポート番号] | スキャンするポート番号を指定。範囲指定も可 |
-PO | スキャンを行う前にPingを全く行わないように指定 |
-PT | TCP Pingを利用しえt稼働中サーバを指定 |
-T [タイミングテンプレート] | スキャン速度。スキャンするタイミングを設定 |
例
・localhostの22-25ポートにTCPスキャン
# nmap -sT localhost -p 22-25 Starting Nmap 6.40 ( http://nmap.org ) at 2015-10-14 15:07 JST Nmap scan report for localhost (127.0.0.1) Host is up (0.000082s latency). Other addresses for localhost (not scanned): 127.0.0.1 rDNS record for 127.0.0.1: localhost.localdomain PORT STATE SERVICE 22/tcp closed ssh 23/tcp closed telnet 24/tcp closed priv-mail 25/tcp closed smtp
tcpdump
tcpdumpはネットワークのトラフィックをダンプするコマンドです
書式
tcpdump [オプション] [条件式]
[]省略可能
主なオプション
-i [インターフェイス名] | 監視するインターフェイスを指定 |
-n | アドレス・ポート番号を名前変換しない |
-r [ファイル名] | パケットをファイルから読み込む |
-s [サイズ] | キャプチャするサイズを指定。サイズ0に受診すると、すべてをキャプチャ |
-w [ファイル名] | 受診したパケット内容をファイルに出力 |
-x | パケットの中身を16進数で表示 |
-X | パケットの中身を16進数とASCII文字で表示 |
条件式
host [ホスト] | 指定したホストを対象とする |
port [ポート番号] | 指定したポート番号を対象とする |
dst host [ホスト] | 指定したホストに送信するパケットを対象とする |
src host [ホスト] | 指定したホストに受診するパケットを対象とする |
dst port [ポート番号] | 指定したポート番号に送信するパケットを対象とする |
src port [ポート番号] | 指定したポート番号に受診するパケットを対象とする |
net [ネットワークアドレス] | 指定したネットワークアドレスを対象とする |
net [ネットワークアドレス] mask [マスク] | 指定したネットワークアドレス / マスクを該当するものを対象とする |
複数の条件接続
[条件式1] and [条件式2] | 条件式1と条件式2の両方を満たすものを対象とする |
[条件式1] or [条件式2] | 条件式1と条件式2のどちらかを満たすものを対象とする |
not [条件式1] | 指定した条件以外のもを対象とする |
例
・192.168.0.11 のパケットを表示
# tcpdump host 192.168.0.11
・192.168.0.11 のポート番号80のパケットを表示
# tcpdump host 192.168.0.11 and port 80
・インターフェイスeth0 のパケットをASCII文字と16進数で表示
# tcpdump -s0 -i eth0 -X
・192.168.0/24 ネットワークのパケットをASCII文字と16進数で表示
# tcpdump -s0 -i eth0 -X net 192.168.0 mask 255.255.255.0
ディスカッション
コメント一覧
まだ、コメントがありません