参考にさせて頂いた記事。
Nmapとは?
一言では、ポートスキャンを行うツール
もっと詳しく言うと、対象サーバーのどのポートが開いているかを確認するツール。
ハッキングの偵察用ツールとしてよく紹介され、使用される。
Nmapは生の(raw)IPパケットを用いて、ネットワーク上でどのようなホストか利用可能になっているか、これらのホストが提供しているサービス(アプリケーション名とバージョン)は何か、ホストが実行しているOS(OS名とバージョン)は何か、どのような種類のパケットフィルタ/ファイアウォールが使用されているかなど、その他数多くの特徴を斬新な方法で判別
Nmapは、セキュリティ監査用に広く利用されているばかりでなく、ネットワーク・インベントリ(資産情報収集)、サービスのアップグレード予定管理、ホストやサービスのアップタイム(利用可能時間)の監視等の日常業務にNmapを役立てているシステム管理者やネットワーク管理者も多い。
ハッキング工程でNmapを使用するタイミング
-
偵察
- SNS
- 検索エンジン
- DNS 等...
-
スキャニング
- Nmap 等...
-
サーバーへの攻撃
- THC-Hydra
- Metasploit 等...
Nmapの特徴
- スキャン時に宛先サーバーにログが残らないようにバレないようにするステルススキャンが可能。
- ばれた時などに撹乱させるため、踏み台などで囮を使用することも可能!!
また、OSや動いているサービスを特定するなど、ポートスキャンだけでなく様々な機能がある。
基本構文
nmap 192.168.0.1
よく使うオプション
-sS ステルススキャン
-O ターゲットのOSを特定してくれるオプション。
-A 一番よく使う。「OS検出・バージョン検出・スクリプトスキャン・トレースルート」全てこれだけで行う。
-A が最強。もうこいつだけでいいんじゃね??
返り値
状態は、open、filtered、closed、またはunfilteredのいずれか
open(開いた)ポートは、調査対象マシン上のアプリケーションがそのポート上で接続/パケットを待ち受けている状態。
Filtered(フィルタあり)は、ファイアウォールやフィルタなどのネットワーク上の障壁でポートが遮られている状態。ポートが開いているか閉じているかをNmapが判断できない。
Closed(閉じた)ポートには、待ち受け状態のアプリケーションは何もないが、これらはいつでも開放することが可能。
ポートがNmapのプローブには応答するが、開いているか閉じているかをNmapが判別できない場合は、unfiltered。
ポートの状態がopen|filteredやclosed|filteredのように、2つの状態の組み合わせで報告されるのは、そのどちらがポートの状態を表しているかをNmapが判断できない場合である。