Nmapまたは「ネットワークマッパー」は、1997年以来「Nmap開発者チーム」がセキュリティの専門家や開発者を対象としたオープンソースツールです。ここでは、Debian11BullseyeにNMAPをインストールするコマンドとその使用方法を学びます。
Nmapを使用すると、ユーザーはネットワークをスキャンしたり、インターネット/ローカル上の(つまり、IPアドレスを使用して)コンピューターをスキャンして、開いているポートとそれらをリッスンしているサービスを確認できます。既知および未知のスキャン方法により、このツールは非常に強力なプログラムになっています。
ネットワークマッパーは、ネットワーク環境内のすべてのアクティブなホスト(pingスイープ)と、それらのオペレーティングシステム(OSフィンガープリント)およびそこにインストールされているさまざまなサービスのバージョン番号を見つけるのに特に適しています。
Nmapを使用して、たとえば、ファイアウォール構成またはコンピューターで、開いているポートおよび(場合によっては望ましくない)バックグラウンドで実行されているサービスをテストできます。このツール自体にはコマンドラインインターフェイスが付属していますが、Zenmapを使用すると、ユーザーはより便利に処理できます。
デフォルトでは、NmapはTCPスタックのコンプライアンスに基づいたSYNスキャンを実行します。何千ものポートをスキャンするために使用でき、オープン、クローズ、またはフィルタリングされたステータスのポートを明確かつ信頼性の高い方法で区別できます。
NMAPの一般的な使用法:
- ネットワークの分析とスキャン
- ネットワークインベントリを取得する
- 接続されたアクティブなシステムを検出する
- サービス、構成、バージョンの詳細を決定する
- 稼働時間、ホスト、またはサービスの監視
- サービスの更新を確認する
Debian 11LinuxBullseyeにNmapをインストールする方法
Aptリポジトリの更新
最初に行うことの1つは、systemupdateコマンドを実行することです。これにより、システムリポジトリキャッシュが再構築され、インストールされたパッケージが最新バージョンを実現できるようになります。
sudo apt update
Debian11BullseyeにNMAPをインストールする
NMAPをインストールするための公式パッケージはDebian11のデフォルトのベースリポジトリですでに利用可能であるため、リポジトリを手動で追加する必要はありません。したがって、APTパッケージマネージャーコマンドを実行して取得するだけで十分です。
sudo apt install nmap -y
Debian 11へのZenMap(GUI)のインストール(オプション)
ネットワークのスキャンと分析にNMAPを使用するためのグラフィカルユーザーインターフェイスを探している人。彼らはZenMapに行くことができますが、最新のものはバイナリ形式のDebianでは利用できません。したがって、それをインストールするには、まず、既存のRPMバイナリをDebに変換する必要があります。手順に従いましょう。
エイリアンのインストール
sudo apt-get install alien -y
ZenMapRPMをダウンロード
Nmapの公式Webサイトにアクセスし、ZenmapRPMパッケージをダウンロードします。
RPMをDebに変換
ブラウザを使用してファイルをダウンロードした場合は、最初にダウンロードに切り替えます。 ディレクトリ-cd Downloads
sudo alien zenmap-*.noarch.rpm
Zenmapのインストール
sudo dpkg --install zenmap_*_all.deb
Nmapのバージョンを確認する
現在のNmapのバージョンを確認するには、次のコマンドを使用します。
nmap --version
Debian11でNmapスキャナーを使用する
Nmapオプションのターゲット範囲は、単一のIPアドレス(デフォルトではIPv4で機能しますが、IPv6アドレスを使用することもできます)、IPアドレス範囲、またはホストにすることができます。これ以上オプションを入力しない場合は、Nmapターゲット範囲を入力するだけで、Nmapはターゲットコンピューターの最初の1000ポートをチェックします。これらは、特定の一般的なアプリケーション(WebサーバーやPOP3など)に永続的に接続されている、いわゆる既知のポートの大部分です。
で使用できるすべてのオプションを確認するには、ヘルプページをご覧ください:
nmap -h
Nmap –ポートスキャン
ポートオプションを使用すると、ポートが開いているか閉じているかをスキャンしてポートの開始を知ることができます。ただし、フィルタリングされた開始は、管理者が他の方法でポートをスキャンするため、煩わしい場合があります。ネットワーク上のポートをスキャンしているときに通常取得するポートの一般的な状態をいくつか見てみましょう。
開く –これは、アプリケーションまたはサービスがこのポートでリッスンしているため、接続が可能であることを意味します。
閉鎖- これは、ホストがこのポートでの接続を拒否したことを意味します。その背後でリッスンしているアプリケーションはありません。
フィルタリング/ブロック これは、ホストがこのポートの要求に応答しないことを意味します。これは、接続が確認(OPEN)も拒否(CLOSED)もされていないことを意味します。それ以外の方法でホストに到達できる場合は、ファイアウォールによるフィルタリング(FILTERED)またはブロッキング(BLOCKED)が行われます。
フィルタリングされていない –この場合、Nmapはポートに到達可能ですが、開いているか閉じているかを確認できません。
スキャンを開始するコマンドは次のとおりです:
sudo nmap ip-address
または
sudo nmap website address
コンピューターを確認するには、次を使用できます。
sudo nmap localhost
サブネット全体をスキャンするには:
sudo nmap IP-address/24
サービスとバージョンの識別
サービスIDは、サービスフィンガープリントまたはバージョン検出(バージョンスキャン)とも呼ばれます。 Nmapのサービススキャンコマンドは、インストールされているアプリケーション(一部のポートを使用して世界の外で通信する)とそのバージョンを可能な限り正確に判別しようとします。これを使用して、アプリケーションのバージョンを検索し、ターゲットを絞った方法で利用可能な脆弱性を検索できます。
オペレーティングシステムのスキャンにNmapを使用する
OSの識別はOSフィンガープリントとも呼ばれます。OSの検出は、Nmapを使用して、ターゲットとするホストで使用されているオペレーティングシステムの種類を識別するプロセスです。
NMAPを使用したOSとサービスの識別
使用するオプション:
• OSスキャン(OS検出) =-O
可能であれば、オペレーティングシステムの正確な情報を提供します。スキャンでは、「オープン」または「オープン|オープン」と見なされるポートでさまざまなアプリケーションプロトコルが使用されます。フィルタリングされました」。
• サービススキャン/バージョンスキャン =-sV
ポートをスキャンして、開いているポートの背後で実行されているアプリケーションを特定します。
• RPCスキャン =-sR
–ポートでRPC(リモートプロシージャコール)サービスが利用可能な場合、Nmapはそれをスキャンして、オペレーティングシステムに関する詳細情報を提供します。
• OSとサービスの組み合わせスキャン -O -sV
または-A
OSとアプリケーションの情報を1つの出力にまとめて提供します。
sudo nmap -O [IP address] or sudo nmap -O [website address]
Nmapがターゲットホストのオペレーティングシステムに関する正確な情報を提供できない場合は、推測オプションを使用できます。これは信頼性がありませんが、信頼性のパーセンテージでアイデアを提供します。
sudo nmap -O --osscan-guess ip-address
与えられたスクリーンショットでそれを見ることができます。
従来のpingスキャン(ネットワークスキャン)
指定されたコマンドは、ICMPエコー要求(-PE)を使用する従来のpingスキャンを使用しますが、ポートスキャン(-sn)は使用しません。
sudo nmap -PE -sn -oG - ip-address-range/24
拡張pingスキャン(ネットワークスキャン)
このTCPpingスキャンを使用すると、従来のping(ICMPエコー)とTCPSYNスキャンが組み合わされます。
sudo nmap -sP -oG - ip-address-range/24
コマンドで使用できるNmapのさまざまなスキャンオプションまたはパラメータをもう一度見てみましょう。
Nmap –スキャン手法 | |
スキャン手法 | 説明 |
-sT | 単純な接続スキャン。 スキャンするポートごとに、完全なTCP接続が確立されてクリアされます。このスキャンは、Nmapが呼び出された場合にも利用できます ルート権限なし。 |
-sS | 「SYN-ステルススキャン」: 同様の-sT 、ただし、完全なTCP接続が確立されていないため、目立たなくなります。 (ルート権限を持つ標準) |
-sU | TCPの代わりにUDPポートをスキャンします。 |
-sn | pingスキャン: ICMPエコー要求、ポート443のTCP SYNパケット、ポート80のTCP ACKパケット、およびICMPタイムスタンプ要求を介してのみ可用性をチェックします。アクティブなホストのネットワーク領域全体をテストするのに役立ちます。このスキャンは、Nmapが呼び出された場合にも利用できます ルート権限なし(ポート80および443のSYNパケットのみ)。 |
専門家情報:
以下のよりエキゾチックなテクニック(およびその他)は、個々のケースで役立つ場合があります。ただし、nmapのマンページまたはホームページを事前に調べて、特別な機能と考えられる結果を理解することをお勧めします。
特別なスキャン手法 | |
スキャン手法 | 説明 |
-sF 、-sN 、-sX | Nmapは、意図的に操作された、または誤ったTCPパケットをスキャン対象のポートに送信します。ポート(またはサーバー)の反応に基づいて、ポートが開いているかファイアウォールで保護されているかについて結論を出すことができます。 -sT との比較 または-sR 目立たない。 |
-sA 、-sW | ポートが開いているか、閉じているか、保護されているかをテストするためにも使用されます。ファイアウォールの検出に特に適しています。 |
Nmapは、上記のスキャン手法と組み合わせることができるさまざまなオプションを知っています。
Nmapオプション(バージョンとOS) | |
オプション | 説明 |
-sR | RPCサービスが認識されると、追加のRPCパケットが送信されます。これにより、関連するポートでリッスンしているサービスに関する詳細情報を見つけることができます。 |
-sV | 追加のテストを試行して、開いている各ポートのサービスを特定します。 -sR が含まれています 。 |
-O | OS検出:ネットワーク実装の特別な機能を使用して、ターゲットのオペレーティングシステムを識別しようとします。 |
-A | -sV -O の略 |
デフォルトでは、Nmapは1から1024までのすべてのポートに加えて、 / usr / share / nmap / nmap-servicesにリストされている上位のポートをスキャンします。 ファイル。次のオプションは異なる動作を生成します:
Nmap –オプション(ポート ) | |
オプション | 説明 |
-p X | ポートXのみをスキャンします |
-p X-Y | ポートXからYのみをスキャンします |
-p X,Y,Z | ポートX、Y、Zをスキャンします |
-p- | すべてのポートをスキャンする |
-F | 高速スキャン。nmap-servicesにリストされている既知のポートのみをスキャンします。 ファイル。 |
-r | すべてのポートを番号順にスキャンします。オプション-v を使用するとわかりやすくなります。 。デフォルトでは、Nmapはランダムな順序を選択します。 |
Nmap –オプション(その他) | |
オプション | 説明 |
-Pn | フルポートスキャンの前に、Nmapは通常、コンピューターが存在し、オンラインであるかどうかを確認します(スキャンテクノロジー-sn を参照)。 )。このオプションはこれをオフに切り替え、Webサーバーが実行されておらず、pingをブロックするホストをスキャンするために必要です。 |
-e eth0 | Nmap eth0 に明示的に指示します ネットワークインターフェイスを使用します。通常、Nmapはインターフェース自体を選択します。 |
-oN DATEI | スキャンをファイルに記録します |
-v | スキャン中に追加情報を出力します。 |
Nmapのアンインストールまたは削除
ええと、Debian 11でNmapが不要になった場合は、同じAPTパッケージを使用して削除できます。
sudo apt remove nmap