Nmap と Metasploit を使ったネットワークスキャンと脆弱性分析

NmapBeginner
オンラインで実践に進む

はじめに

この実験では、ネットワークスキャンと脆弱性分析に Nmap と Metasploit を使用する方法を学びます。Nmap (Network Mapper) はネットワーク探索とセキュリティ監査に使用される強力なオープンソースユーティリティで、Metasploit は様々な攻撃ツールとペイロードを含む広く使われているペネトレーションテストフレームワークです。

この実験の目的は、Nmap を使用して様々な種類のスキャンを実行し、結果を分析し、Metasploit を活用してターゲットシステムの潜在的な脆弱性をさらに調査する実践的な経験を提供することです。

環境のセットアップ

このステップでは、Kali Linux コンテナと Metasploitable2 仮想マシンを起動して実験環境をセットアップします。

sudo virsh start Metasploitable2

ターゲットマシンが起動するのを待ちます。起動には 1 ~ 3 分かかる場合があります。

仮想マシンが起動しているかどうかを ping コマンドでテストします。

ping 192.168.122.102

次に、Kali Linux コンテナを起動し、その bash 環境に入ります。

docker run -ti --network host b5b709a49cd5 bash

Kali コンテナ内で仮想ネットワーク接続をテストします。ping を終了するには Ctrl - C を使用します。

ping 192.168.122.102

Nmap の基本的な使い方

このステップでは、ホスト発見、ポートスキャン、バージョン検出、オペレーティングシステム検出などの基本的なスキャンタスクに Nmap を使用する方法を学びます。

次のコマンドを実行して包括的なスキャンを行います。

nmap -T4 -A 192.168.122.102

次のコマンドを実行してホスト発見をスキャンします。

nmap -T4 -sn 192.168.122.102

次のコマンドを実行してポートスキャンを行います。

nmap -T4 192.168.122.102

次のコマンドを実行してオペレーティングシステムの検出を行います。

nmap -T4 -O 192.168.122.102

-T4 オプションはタイミングテンプレートを積極的なスキャンに設定し、-A オプションは OS 検出、バージョンスキャン、スクリプトスキャン、およびトレースルートを有効にします。-sn オプションは単純なホスト発見スキャンを行い、-O オプションはリモートのオペレーティングシステムを検出しようとします。

Nmap の高度な使い方

このステップでは、サブネット全体のスキャン、特定のポート範囲のスキャン、ネットワークインターフェイスの指定など、より高度な Nmap スキャン技術を探索します。

次のコマンドを実行してサブネット全体をスキャンします。

nmap 127.0.0.1/24

次のコマンドを実行して特定のポートをスキャンします。

nmap -p80,22,66 127.0.0.1

次のコマンドを実行してローカルのネットワークインターフェイスを一覧表示します。

nmap --iflist

次のコマンドを実行してネットワークインターフェイスを指定します。

nmap -e eth0 127.0.0.1

これらの高度な技術を使用すると、スキャンを微調整し、ターゲットネットワークまたはホストに関するより詳細な情報を収集することができます。

Nmap のスキャン結果を Metasploit にインポートする

このステップでは、Nmap のスキャン結果を Metasploit にインポートして、さらなる分析と攻撃を行う方法を学びます。

  1. 次のコマンドを実行して包括的なスキャンを行い、出力を XML ファイルに保存します。XML ファイルはホームディレクトリ ~/ に保存するようにしてください。このステップには時間がかかる場合があります。
nmap -sV -Pn -oX ~/shiyanlou.xml 192.168.122.102/24
  1. Metasploit コンソールを起動します。
cd ~
service postgresql start
msfdb init
msfconsole
  1. Metasploit コンソールで次のコマンドを実行して、XML ファイルを Metasploit にインポートします。
db_import shiyanlou.xml
  1. Metasploit コンソールで次のコマンドを実行して、インポートされたサービスを表示します。
services
  1. Ctrl+D を押して Metasploit コンソールを終了し、検査を開始します

Nmap のスキャン結果を Metasploit にインポートすることで、Metasploit フレームワークに用意されている強力なツールとモジュールを活用して、ターゲットシステムの脆弱性を分析し、攻撃することができます。

Metasploit でモジュールを使用する

このステップでは、Metasploit フレームワーク内でモジュールを検索し、使用する方法を学びます。

  1. まず、Metasploit コンソールにいない場合は、Metasploit コンソールを起動する必要があります。
cd ~
msfconsole
  1. これで、Metasploit コンソールで search コマンドを使用してモジュールを検索できます。
search ms12-020
  1. Metasploit コンソールでモジュールを使用するには、次のようにします。
use auxiliary/dos/windows/rdp/ms12_020_maxchannelids
  1. Metasploit コンソールでモジュールの利用可能なオプションを表示します。
show options
  1. Metasploit コンソールで必要なオプションを設定します。
set RHOST 192.168.122.102
  1. Metasploit コンソールでモジュールを実行します。
exploit
  1. Ctrl+D を押して Metasploit コンソールを終了し、検査を開始します

Metasploit は、エクスプロイト、ペイロード、補助モジュールなど、様々な目的のための幅広いモジュールを提供しています。適切なモジュールを検索して使用することで、ターゲットシステムの脆弱性を利用したり、他のアクションを実行したりすることができます。

まとめ

この実験では、ネットワークスキャンと情報収集に Nmap を使用する方法、およびスキャン結果を Metasploit にインポートしてさらなる分析と攻撃を行う方法を学びました。ホスト発見、ポートスキャン、バージョン検出、オペレーティングシステム検出など、さまざまな Nmap スキャン技術を実践しました。さらに、Metasploit フレームワーク内でモジュールを検索し、ターゲットシステムの脆弱性を利用する方法も学びました。

実験全体を通じて、制御された環境のセットアップ、情報収集、潜在的な脆弱性の分析など、ペネトレーションテストに必要な基本的なスキルを練習しました。これらのスキルはサイバーセキュリティの分野で重要であり、ネットワークセキュリティの概念とエシカルハッキング技術に対する理解を深めるのに役立ちます。