Metasploit-quick-guide

提供:Dev Guides
移動先:案内検索

Metasploit-はじめに

Metasploitは、侵入テストに使用される最も強力なツールの1つです。 そのリソースのほとんどは、https://www.metasploit.com/[www.metasploit.com]にあります。 商用版と無料版の2つのバージョンがあります。 2つのバージョンに大きな違いはないため、このチュートリアルでは、Metasploitのコミュニティバージョン(無料)を主に使用します。

倫理的ハッカーとして、他の倫理的ハッキングツールとともにMetasploitコミュニティバージョンが埋め込まれた「Kali Distribution」を使用します。 ただし、Metasploitを別のツールとしてインストールする場合は、Linux、Windows、またはMac OS Xで実行されるシステムで簡単にインストールできます。

Metasploitをインストールするためのハードウェア要件は次のとおりです-

  • 2 GHz以上プロセッサ
  • 1 GBのRAMが利用可能
  • 1 GB以上利用可能なディスク容量

Matasploitは、コマンドプロンプトまたはWeb UIで使用できます。

Metasploitの推奨OSバージョンは次のとおりです-

  • Kali Linux 2.0以降のバージョン
  • バックトラック3以降のバージョン
  • Red Hat Enterprise Linux Server 5.10+
  • Red Hat Enterprise Linux Server 6.5+
  • Red Hat Enterprise Linux Server 7.1+
  • Ubuntu Linux 10.04 LTS
  • Ubuntu Linux 12.04 LTS
  • Ubuntu Linux 14.04 LTS
  • Windows Server 2008 R2
  • Windows Server 2012 R2
  • Windows 7
  • Windows 8.1

Metasploit-環境設定

テスト環境をセットアップするには、次のアクションを実行します-

  • Virtual boxをダウンロードしてインストールします。
  • Kali ディストリビューションをダウンロードしてインストールします。
  • ハッキングマシンとなる Metasploitable をダウンロードしてインストールします。
  • 別のハッキングマシンとなるWindows XPをダウンロードしてインストールします。

合計で、同じネットワークに論理的に接続される3台のマシンがあります。

3台のマシン

仮想ボックスをインストールする

Virtual Boxをダウンロードするには、https://www.virtualbox.org/wiki/Downloads [www.virtualbox.org/wiki/Downloads]にアクセスしてください。

OSおよびシステムのハードウェア構成に応じて適切なバージョンを選択します。

仮想ボックスのインストール

Virtual Boxの適切なバージョンを選択すると、次の画面が表示されます。 [次へ]をクリックします。

適切なバージョンの選択

次の画面で、アプリケーションをインストールする場所を設定します。

場所の設定

インストールを続行する前に、警告メッセージが表示されます。

警告メッセージ

上記の画面で[はい]をクリックすると、次の画面が表示されます。 [インストール]をクリックして、インストールを開始します。

クリックしてインストール

インストールが完了すると、次の画面が表示されます。 [完了]をクリックして、セットアップウィザードを終了します。

完了をクリック

これで、VirtualBoxの開始画面が表示されます。

VirtualBox画面

これで、このチュートリアルの残りのホストをインストールする準備ができました。

Kali Linuxをインストールする

Kali Linuxは公式ウェブサイトからダウンロードできます-https://www.kali.org/downloads/[www.kali.org/downloads/]

Kali Linuxのインストール

公式Webサイトにアクセスして、ビルド済みのKali Linux VirtualBoxイメージをダウンロードします。

次に、VirtualBox Managerを開き、マシン→新規に移動します。

Open VirtualBox Manager

Kali Linuxがダウンロードされた場所に移動し、仮想ハードディスクファイルを選択します。

Kali Linux

次の画面では、仮想マシンを作成するように求められます。 次のスクリーンショットに示すように、[作成]ボタンをクリックします。

ボタンの作成をクリック

これで、Kali OSを起動できます。 デフォルトのユーザー名は root で、パスワードは toor です。

Kali OSの起動

Metasploit-基本コマンド

この章では、Metasploitで頻繁に使用されるいくつかの基本的なコマンドについて説明します。

まず、KaliでMetasploitコンソールを開きます。 これを行うには、アプリケーション→エクスプロイトツール→Metasploitのパスに従ってください。

Metasploit Console

Metasploitコンソールを開くと、次の画面が表示されます。 赤い下線で強調表示されているのは、Metasploitのバージョンです。

Metasploitバージョン

ヘルプコマンド

コンソールで help コマンドを入力すると、Metasploitのコアコマンドのリストとその説明が表示されます。

ヘルプコマンド

msfupdateコマンド

*msfupdate* は重要な管理コマンドです。 Metasploitを最新の脆弱性エクスプロイトで更新するために使用されます。 このコマンドを実行した後、更新が完了するまで数分待つ必要があります。

msfupdateコマンド

検索コマンド

  • 検索*はMetasploitの強力なコマンドで、探したいものを見つけるのに使用できます。 たとえば、マイクロソフトに関連するエクスプロイトを見つけたい場合、コマンドは次のようになります-
msf >search name:Microsoft type:exploit

ここで、 search はコマンド、 name は探しているオブジェクトの名前、 type は検索するスクリプトの種類です。

検索コマンド

情報コマンド

*info* コマンドは、使用場所、作成者、脆弱性リファレンス、およびそのペイロード制限など、モジュールまたはプラットフォームに関する情報を提供します。

情報コマンド

Metasploit-アーミテージGUI

この章では、Metasploitで Armitage GUIを使用する方法について説明します。 アーミテージはMetasploitの補完ツールです。 ターゲットを視覚化し、エクスプロイトを推奨し、高度な悪用後の機能を公開します。 アーミテージはカーリーのディストリビューションに組み込まれています。 侵入テストを行う必要がある場合は、両方のツールを一緒に使用する必要があります。

アーミテージGUIの操作方法を学びましょう。 最初に、Metasploitコンソールを開き、アプリケーション→エクスプロイトツール→アーミテージに移動します。

Armitage GUI

次の画面で必要な詳細を入力し、[接続]をクリックします。

必要な詳細を入力

次に、次の画面が表示されます。

画面を見る

アーミテージは非常にユーザーフレンドリーです。 GUIには、 TargetsConsole 、および Modules の3つの異なる領域があります。

  • *ターゲット*エリアには、発見したすべてのマシンと作業中のマシンがリストされます。 ハッキングされたターゲットは赤い色で雷雨があります。 ターゲットをハッキングした後、それを右クリックして、フォルダーの探索(閲覧)など、必要な操作を続けて探索できます。
  • Console 領域は、フォルダーのビューを提供します。 クリックするだけで、Metasploitコマンドを使用せずに直接フォルダに移動できます。
  • *モジュール*領域は、脆弱性のモジュールをリストするセクションです。

Metasploit-Proコンソール

Pro ConsoleはMetasploitの商用コンソールバージョンです。 Linux、Microsoft OS、およびOSXで使用できます。 Metasploit Proは、侵入テスト担当者を支援できます-

  • Metasploitオープンソースプロジェクトとその主要なエクスプロイトライブラリを活用する
  • 大規模評価のデータを管理する
  • 侵害されたマシンを制御し、ネットワークを乗っ取る
  • 重要な調査結果を含むレポートを自動生成
  • 悪用可能な脆弱性に優先順位を付けてセキュリティを改善する
  • 是正の有効性を証明するか、監査人に統制を補償する
  • Rapid7 UserInsightと統合することにより、ユーザーリスクの包括的な可視性を取得
  • セキュリティ制御の有効性をテストする
  • 数千人のユーザーのフィッシングキャンペーンをシミュレートする

Metasploit Proは、コマンドプロンプトとWEB UIを提供します。

Metasploit Proを使用するには、Rapid7から購入してシステムにインストールする必要があります。 Windows環境でMetasploit Proを起動するには、スタート→すべてのプログラム→Metasploit→Metasploitコンソールに移動します。

Metasploit Pro

Linux環境で作業している場合は、コマンドラインターミナルを開き、 sudo msfpro と入力します。

sudo msfpro

Metasploit-脆弱なターゲット

脆弱なターゲットは、パッチが適用されていないセキュリティホールのあるマシンまたはデバイスです。 この場合、ホストが脆弱になります。

テスト目的で、Rapid7は多くの脆弱性を持つVMマシンを作成しました。 許可なくデバイスに侵入することは許可されていないことに注意してください。 したがって、Linuxマシンである metasploitable をダウンロードする必要があります。

Metasploitableは、-https://information.rapid7.com/metasploitable-downloadl?LS=1631875&CS=web[www.information.rapid7.com/]からダウンロードできます。

Metasploitableのダウンロード

フォームに必要事項を記入して登録してください。 次に、Metasploitableをダウンロードするための直接リンクを含む次の画面が表示されます。

登録

次に、VirtualBoxマネージャーを開き、[マシン]→[新規]に移動します。

VirtualBox Manager

[既存の仮想ハードディスクファイルを使用する]をクリックし、Metasploitableをダウンロードした場所を参照します。 [開く]をクリックします。

開くをクリック

次の画面で、[作成]をクリックします。

作成をクリック

これで、デフォルトの username:msfadmin およびパスワード: msfadmin を使用してMetasploitableにログインできます。

Metasploitable Login

Metasploit-ディスカバリースキャン

侵入の最初の段階では、ネットワークまたはホストをスキャンして情報を収集し、ターゲットマシンの概要を作成します。

  • 検出スキャン*は、基本的にターゲットネットワークにIPリストを作成し、マシン上で実行されているサービスを検出します。 Metasploitでこれを行うには、Metasploitに組み込まれているNMAPコマンドであるコマンドプロンプトを使用します。 NMAPとそのコマンドの詳細については、https://nmap.org/にアクセスしてください。

それでは、実際にどのように機能するかを実際に見てみましょう。 ターゲットマシン(Metasploitable)とWindows Server 2003マシンをIP 192.168.1.101 で起動しました。

メタスプロイタブル

次に、Metasploitを開始します。 ここでは、Kali Linuxを使用しています。 したがって、コマンドは常に nmap で始まります。

範囲192.168.0.0/24でネットワークのスキャンを開始し、マシンを検出しましょう。

マシンの検出

上記のスクリーンショットでわかるように、ネットワークには5つのホストがあり、詳細が示されています。 生きているホストが見つかったので、実行中のOSとそのバックグラウンドサービスを見つけようとします。

IP 192.168.1.101で脆弱なマシンを攻撃しようとします。 これを行うには、次のコマンドを実行します-

Nmap –sV-O –T4 192.168.1.101
*–* sV *パラメーターは、バージョンの詳細を含むサービスを検出します。
*–* O *は、OSのバージョン(この場合はLinux 2.6.X)を検出することです。
*–* T4 *は、スキャンを終了させる時間です

上記のコマンドを使用した出力として、次の画面が表示されます。

コマンド結果

Metasploit-タスクチェーン

タスクチェーンはMetasploit Proバージョンにある機能で、タスクをスケジュールして実行するのに役立ちます。 通常、ネットワークスキャンなど、定期的に実行されるプロセスに使用されます。

タスクを設定するには、タスク→チェーン→新しいタスクチェーンに進みます。

タスクチェーン

タスクチェーンの名前を指定します。

タスクチェーン名

次に、次のスクリーンショットに示すように、「+」記号をクリックします。

プラス記号をクリック

リストから選択するタスクを選択します。 SCANを選択しましょう。

Select SCAN

次に、*構成タスク設定*が次のように表示されます。

構成タスクの設定

タスクをタスクチェーンに追加しましょう。これは、サーバーが最初のタスクを完了した後に実行する必要がある機能です。 タスクをスケジュールするには、「今すぐスケジュール」アイコンをクリックします。

タスクのスケジュール

次の表が表示され、タスクを実行する頻度を選択できます。

タスクの実行

最後に、[保存]ボタンをクリックしてタスクチェーンをスケジュールします。

保存ボタンをクリック Metasploit-import-data

Metasploit-脆弱性スキャン

脆弱性とは、機密データへの不正アクセスを取得したり、悪意のあるコードを挿入したりするために悪用できる「システムホール」です。 Metasploitは、他のすべてのセキュリティアプリケーションと同様に、商用版で利用可能な*脆弱性スキャナー*を備えています。

脆弱性スキャナーを使用すると、1つのアプリケーションでほぼすべてのジョブを実行できます。 この機能は、Metasploitの無料バージョンにはありません。 Metasploitの無料バージョンを使用している場合は、Nessus Vulnerability Scannerを使用して、そこから結果をインポートする必要があります。 Metasploitは Nexpose を使用してスキャンを実行します。

MetasploitのProバージョンでNexposeでスキャンする方法を見てみましょう。

まず、NexposeコンソールをMetasploit WEB UIに追加します。 これを行うには、管理→グローバル設定→Nexpose Console→Configure Nexpose Consoleに移動します。

Nexposeコンソールの構成

NexposeがインストールされているサーバーのIPを入力します。 次に、ポート番号、ユーザー名、パスワードを入力します。 [有効にする]を選択します。

Select Enable

次に、Netexposeボタンをクリック→スキャンするホストまたはネットワークのIPアドレスを追加→スキャンテンプレートを選択します。 スキャンプロセスが開始されます。

Netexposeをクリック

スキャン結果を表示するには、分析→ホストに移動します。

Metasploit-脆弱性検証

この章では、Nexposeのような脆弱性スキャナーから発見した脆弱性を検証する方法を学びます。 このプロセスは、*脆弱性分析*とも呼ばれます。

次のスクリーンショットに示すように、脆弱性スキャナーは数百の脆弱性を提供する場合があります。 このような場合、すべての脆弱性を検証するのに非常に時間がかかる可能性があります。

脆弱性分析

Metasploit Proには Vulnerability Validation という機能があり、脆弱性を自動的に検証することで時間を節約し、システムに非常に有害な可能性のある最も重要な脆弱性の概要を示します。 また、脆弱性をその重大度に従って分類するオプションもあります。

このオプションの使用方法を見てみましょう。 Metasploit Pro Webコンソール→プロジェクト→脆弱性検証を開きます。

脆弱性検証

次に、プロジェクト名を入力し、プロジェクトに関する簡単な説明を入力します。 次に、[開始]ボタンをクリックします。

スタートボタンをクリック

[Nexposeからプル]をクリックします。 次のスクリーンショットに示すように、「既存のNexpose脆弱性データのインポート」を選択します。

Nexposeからプル

[タグ]→[OSによる自動タグ付け]をクリックします。 それはあなたのために脆弱性を分離します。

タグをクリック

次に、*エクスプロイト→セッション*に移動し、オプション「完了時にセッションをクリーンアップ」をチェックします。 これは、脆弱性がチェックされるとき、Metasploitマシンと脆弱なマシンの間に相互作用があることを意味しています。

脆弱性をチェック

[レポートの生成]→[開始]をクリックします。

レポートの生成をクリック

次に、検証ウィザードが表示されます。 ここで、 Push validations ボタンをクリックする必要があります。

プッシュ検証

テストされた脆弱性のすべてのリストを取得すると、次の画面が表示されます。

テストされた脆弱性

テストした脆弱性の結果を確認するには、[ホーム]→[プロジェクト名]→[脆弱性]に移動します。

脆弱性結果

Metasploit-エクスプロイト

脆弱性スキャンと脆弱性検証の後、マシンへのアクセスを取得し、計画していることを行うために、いくつかのスクリプト( exploits と呼ばれる)を実行およびテストする必要があります。

アーミテージGUIを使用したエクスプロイト

エクスプロイトを使用する方法はいくつかあります。 まず第一の方法は、Metasploitに接続してHAIL MARYと呼ばれる自動化されたエクスプロイトテストを実行するArmitage GUIを使用することです。 仕組みを見てみましょう。

Kaliディストリビューション→アプリケーション→エクスプロイトツール→アーミテージを開きます。

Open Kali

次に、 Attacks→Hail Mary に移動し、Yesをクリックします。

はいをクリック

次の画面が表示され、テストされているすべてのエクスプロイトが表示されます。

テストエクスプロイト

次に、悪用可能なシステム(悪用が機能したシステム)のアイコンが赤色に変わり、雷雨のパターンがその上に表示されます。 コンソールで、どのエクスプロイトが成功したか、それぞれのセッションIDが表示されます。

エクスプロイト可能システム

これで、マシンと対話できます。

コマンドプロンプトを使用したエクスプロイト

エクスプロイトを使用する2番目の方法(そしておそらく少し専門的な方法)は、コマンドプロンプトによるものです。

Vulnerability Scannerから、テスト用のLinuxマシンがFTPサービスに対して脆弱であることがわかりました。 今、私たちは私たちのために働くことができる*エクスプロイト*を使用します。 コマンドは-

msf > use “exploit path”

エクスプロイト

次に、次のコマンドを使用して、機能させるために設定する必要があるパラメーターを確認します。

msf > show options

このエクスプロイトは、RHOSTの「ターゲットIP」を設定する必要があることを示しています

ターゲットIP

次に、コマンドを使用します-

msf > set RHOST 192.168.1.101
msf > set RPORT 21

コマンドを使用

次に、コマンドを使用します-

msf > run

エクスプロイトが成功すると、次のスクリーンショットに示すように、1つのセッションが開かれます。

エクスプロイト成功

これで、このシステムと対話できます。

Metasploit-ペイロード

ペイロードは、簡単に言えば、ハッカーがハッキングされたシステムと対話するために利用する単純なスクリプトです。 ペイロードを使用して、被害者のシステムにデータを転送できます。

Metasploitのペイロードは3つのタイプがあります-

  • シングル-シングルは非常に小さく、ある種のコミュニケーションを作成し、次の段階に進むように設計されています。 たとえば、ユーザーを作成するだけです。
  • Staged -これは、攻撃者がより大きなファイルを被害者のシステムにアップロードするために使用できるペイロードです。
  • ステージ-ステージは、Stagersモジュールによってダウンロードされるペイロードコンポーネントです。 さまざまなペイロードステージは、MeterpreterやVNC Injectionなどのサイズ制限のない高度な機能を提供します。

Metasploitペイロードの使用を理解するために例を見てみましょう。 DCOM MS03-026に対して脆弱なWindows Server 2003マシンがあるとします。

最初に、この脆弱性で機能する*エクスプロイト*を検索します。 このエクスプロイトを最高の RANK で使用します。

RANK

次に、次のコマンドを使用して、このエクスプロイトで使用できるペイロードを確認します。

msf > show payloads

また、/executeファイルのアップロードに役立つペイロードを使用して、被害者をVNCサーバーとして表示できるようにします。

VNCサーバー

上記のコマンドは、被害者のシステムにファイルをアップロード/実行するのに役立つペイロードを表示します。

ファイルのアップロード/実行

必要なペイロードを設定するには、次のコマンドを使用します-

set PAYLOAD payload/path

攻撃者IP *および*ポート*である待機ホストと待機ポート(LHOST、LPORT)を設定します。 次に、 *victim IP および port であるリモートホストとポート(RPORT、LHOST)を設定します。

アタッカーIP

「エクスプロイト」と入力します。 以下に示すようにセッションを作成します-

タイプエクスプロイト

これで、このペイロードが提供する設定に従ってマシンを操作できます。

Metasploit-資格情報

マシンにアクセスした後、ユーザー名やパスワードなどのすべての機密情報を取得することが重要です。 監査目的でもこの操作を実行して、組織内のシステムが強力なパスワードを使用しているかどうかを分析できます。

Windowsでは、パスワードは* NTLMハッシュ*と呼ばれる暗号化された形式で保存されます。 Windows OSでは、常に番号500のユーザーを探す必要があります。これは、ユーザーが*スーパーユーザー*であることを意味します。

スーパーユーザー

Metasploitの無料版では、ハッシュ資格情報をテキストファイルまたはMetasploitデータベースに保存する必要があります。

前の章で使用したシナリオを使用しましょう。 DCOM MS03-026に対して脆弱なWindows Server 2003マシンがあるとします。 このシステムにアクセスし、 meterpreter ペイロードを挿入しました。

meterpreterで一般的に使用されるコマンドは hashdump で、すべてのユーザー名とパスワードがリストされます。

ハッシュダンプ

次のスクリーンショットに示すように、 Armitage を使用してこの情報を取得することもできます。

アーミテージを使用

商用版のMetasploitには、 Credential という別のセッションがあり、資格情報を収集、保存、再利用できます。 それをどうやって進めるか見てみましょう。

機密データを収集するには、最初に「ホーム」→「プロジェクト名」→「セッション」に移動します。

認証情報

アクティブなセッションをクリックします。

アクティブセッションをクリック

次に、[システムデータの収集]をクリックします。 すべてのハッシュとパスワードを収集します。

システムデータの収集

次のような画面が表示されます-

スクリーン

収集された資格情報を表示するには、[ホーム]→[プロジェクト名]→[資格情報]→[管理]に移動します。

管理

次のスクリーンショットに示すように、取得されたすべてのパスワードとクラックされる可能性のあるパスワードが表示されます。

パスワード

Metasploit-ブルートフォース攻撃

ブルートフォース攻撃では、ハッカーは文字、数字、特殊文字、小文字と大文字のすべての可能な組み合わせを自動化された方法で使用して、ホストまたはサービス経由でアクセスします。 このタイプの攻撃は成功する可能性が高くなりますが、すべての組み合わせを処理するのに膨大な時間を必要とします。

ブルートフォース攻撃は遅く、ハッカーはこれらすべての順列と組み合わせをより速く実行するために、高い処理能力を備えたシステムを必要とする場合があります。 この章では、Metasploitを使用してブルートフォース攻撃を実行する方法について説明します。

MetasploitableマシンをNMAPでスキャンすると、どのサービスが実行されているかがわかります。 サービスは、FTP、SSH、mysql、http、およびTelnetです。

実行中のサービス

これらのサービスに対してブルートフォース攻撃を実行するには、各サービスの auxiliaries を使用します。 補助はMetasploitで使用される小さなスクリプトであり、被害者のマシンでシェルを作成しません。ブルートフォース攻撃が成功した場合、マシンへのアクセスを提供するだけです。 補助剤の使用方法を見てみましょう。

ここでは、Kaliディストリビューションマシンのルートに辞書リストを作成しました。

辞書リスト

FTPサービスを攻撃する

Metasploitを開きます。 攻撃を試みる最初のサービスはFTPであり、この目的のために役立つ補助は auxiliary/scanner/ftp/ftp_login です。

この補助を使用するには、次のコマンドを入力します-

msf > use auxiliary/scanner/ftp/ftp_login

Auxiliary

辞書を含むファイルのパスを設定します。

パスの設定

被害者のIPを設定して実行します。

被害者IPの実行

それは次の出力を生成します-

被害者IP出力

ご覧のとおり、完了していますが、セッションは作成されていません。 これは、有用なユーザー名とパスワードの取得に失敗したことを意味します。

SSHサービスを攻撃する

SSHサービスを攻撃するために、補助を使用できます: auxiliary/scanner/ssh/ssh_login

次のスクリーンショットでわかるように、RHOSTSを192.168.1.101(被害者のIP)、ユーザー名リストとパスワード(userpass.txt)に設定しています。 次に、 run コマンドを適用します。

実行コマンドの適用

上記のスクリーンショットに見られるように、3つのセッションが作成されました。 3つの組み合わせが成功したことを意味します。 ユーザー名に下線を付けました。

3つのセッションのいずれかと対話するには、コマンド msf> sessions –i 3 を使用します。これは、セッション番号3で接続することを意味します。

対話セッション

Telnetサービスを攻撃する

Telnetサービスにブルートフォース攻撃を適用すると、提供された資格情報のセットとIPアドレスの範囲を取得し、Telnetサーバーへのログインを試行します。 このために、補助を使用します: auxiliary/scanner/telnet/telnet_login

補助を使用するプロセスは、FTPサービスまたはSSHサービスを攻撃する場合と同じです。 補助を使用し、RHOSTを設定してから、パスワードのリストを設定して実行する必要があります。

次のスクリーンショットをご覧ください。 青い矢印で強調表示されているのは、補助装置が行った不正な試行です。 赤い矢印は、セッションを作成した成功したログインを示します。

作成されたセッション

あなたがブルートフォース攻撃に適用できる他のいくつかの補助は-

  • * SMBサービス*-補助/スキャナー/smb/smb_login
  • * SNMPサービス*-補助/スキャナー/snmp/snmp_login

Metasploit-ピボット

ピボットとは、Metasploitがハッキングされたコンピューターからのトラフィックを、ハッカーマシンがアクセスできない他のネットワークにルーティングするために使用する手法です。

ピボット機能の仕組みを理解するシナリオを見てみましょう。 私たちは2つのネットワークがあると仮定します-

  • ハッカーマシンがアクセスできる範囲が192.168.1.0/24のネットワーク、および
  • 範囲が10.10.10.0/24の別のネットワーク。 これは内部ネットワークであり、ハッカーはアクセスできません。

ハッカーは、両方のネットワークにアクセスできるこのマシンが2番目のネットワークをハッキングして、他の内部マシンを悪用してハッキングしようとします。

このシナリオでは、ハッカーは最初に最初のネットワークに侵入し、それをステージングポイントとして使用して、2番目のネットワークの内部マシンを悪用し、ハッキングします。 ハッカーは最初のネットワークをピボットとして使用して2番目のネットワークにアクセスするため、このプロセスは*ピボット*と呼ばれます。

ピボット

仕組みを理解してみましょう。 DCOM脆弱性を持つWindows Server 2003システムを取り上げ、このシステムをハッキングするためにこの脆弱性を使用します。

DCOMの脆弱性

これに対するエクスプロイトは ms03_026_dcom になり、 meterpreter ペイロードを使用します。

メータープリター

このシステムにアクセスできるようになったので、コマンド session -i 1 を使用してセッションを操作します。「1」は作成されたセッションの番号です。

セッション

ここで、コマンド ipconfig を使用して、このホストが他のネットワークにアクセスできるかどうかを確認しましょう。 次のスクリーンショットは出力を示しています。 あなたは、このホストが他の2つのネットワークに接続されていることを観察することができます-

  • 1つは、役に立たないループバックネットワークです。
  • もう1つのネットワークは10.10.10.0/24であり、これについて検討します。

IPConfig

MetasploitにはAutoRoute meterpreterスクリプトがあり、最初の侵害されたマシンを介してこの2番目のネットワークを攻撃することができますが、最初にセッションを*バックグラウンド*にする必要があります。

背景

範囲10.10.10.0/24の内部ネットワークへのルートを追加する

ルートの追加

トラフィックのルーティング(ピボット)が完了したので、このネットワークで見つかったホストのスキャンを試みることができます。

ピボット

ホスト10.10.10.102でポートスキャンを実行しました。 次のスクリーンショットは結果を示しています。

ポートスキャン

これで、内部ネットワークにアクセスできました。 ただし、ハッキングされたマシンのセッションを失うと、内部ネットワークへのアクセスも失われます。

Metasploit-アクセスの維持

この章では、アクセスしたシステムでアクセスを維持する方法について説明します。 アクセスを維持しないと、ハッキングされたシステムが閉じられたり、パッチが適用されたりした場合に、最初からアクセスを試みる必要があるため、重要です。

最善の方法は、バックドア*をインストールすることです。 前の章で悪用したハッキン​​グされたマシンのWindows Server 2003では、 *meterpreter のペイロードを設定し、このペイロードには metsvc というバックドアオプションがあります。 このバックドアオプションを使用して、必要なときにいつでも被害者のマシンにアクセスできますが、このバックドアには誰もが認証なしでこのセッションに接続できるというリスクがあります。

実際にどのように機能するかを詳しく理解しましょう。 Windows Server 2003マシンを活用し、 meterpreter ペイロードを設定した段階です。 ここで、このマシンで実行されているプロセスを確認し、プロセスを本物のプロセスの背後に隠したいと思います。

meterpreterセッションで「ps」と入力して、被害者プロセスを確認します。

メータープリターセッション

プロセスは起動時に実行されるプロセスであり、常に存在するため、 explorer.exe の背後にプロセスを非表示にするのが好きです。 これを行うには、次のスクリーンショットに示すように、コマンド「PID番号の移行」を使用します。

PID番号の移行

バックドアをインストールするには、 run metsvc と入力します。 実行中に、作成されたポートとファイルがアップロードされているディレクトリが表示されます。

Metsvcの実行

このバックドアに接続するには、 windows/metsvc_bind_tcp のペイロードを持つ multi/handler が必要です。

接続

Metasploit-特権エスカレーション

被害者のシステムを悪用してアクセスした後、次のステップはその管理者権限またはルート権限を取得することです。 この権限を取得すると、ファイルやプロセスのインストール、削除、編集が非常に簡単になります。

Windows Server 2003システムをハッキングし、ペイロード meterpreter を配置したのと同じシナリオを続けましょう。

Meterpreterは、「getsystem」コマンドを使用して特権をエスカレートします。 しかし、最初に、特権昇格のためにハッキングされたシステムを準備するために「priv」コマンドを使用する必要があります。

次に、「getsystem」コマンドを実行します。

getsystemの実行

ご覧のとおり、実際に管理者としてログインしています。

Metasploit-メタモジュール

メタモジュールは複雑で自動化されたセキュリティタスクであり、セキュリティ部門がより効率的に仕事を行えるように設計されています。たとえば、開いたり閉じたりするファイアウォールポートのテスト、デフォルトの資格情報のテストなどです。

MetaModulesは、Metasploit Pro(商用版)で導入された新機能です。 星の評価が最高のMetaModulesを使用すると、最高の結果が得られることに注意してください。

メタモジュールを開くには、ホーム→プロジェクト名→モジュール→メタモジュールに移動します。

ホームに移動

ご覧のとおり、さまざまな要件に対応する6つのメタモジュールがあります。

6つのメタモジュール

セグメンテーションとファイアウォールのテスト

このMetaModuleは、出力スキャンターゲットとして機能するRapid7がホストする外部サーバーに対して完全なNmap SYNスキャンを実行します。 このメタモジュールを使用して、攻撃者が情報をフィルタリングするために使用できるファイアウォール上のアウトバウンドポートを検出します。 監査するポートとプロトコルを指定する必要があります。

このMetaModuleを実行するには、 Launch ボタンをクリックして、そこにある指示に従ってください。 次のスクリーンショットに示すように、開いているポート、閉じているポート、フィルタリングされたポートのレポートが表示されます。

セグメンテーションテスト

資格情報ドミノ

このMetaModuleは、有効なログインまたはアクティブセッションを使用して、侵害されたホストから資格情報を収集する資格情報の反復攻撃を実行します。 収集された資格情報を再利用して、他の可能な攻撃ルートを識別します。 このMetaModuleは、すべての資格情報を試行するか、終了条件に達するまで実行されます。

このメタモジュールを実行するには、開始画面の[起動]ボタンをクリックします。 テストするホストIPとログイン資格情報を選択する必要がある次のスクリーンショットが生成されます。

資格情報ドミノ

入力した資格情報が正しい場合、次の結果が生成されます。

認証情報

SSHキーテスト

このMetaModuleは、復元されたSSHキーを使用してシステムへのログインを試行します。 各サービスの成功と失敗の結果を記録します。 ユーザー名、SSHキーのファイル名、必要なホストの範囲を指定する必要があります。

このMetaModuleを実行するには、開始画面で[起動]をクリックします。 次の画面が表示されます。

SSHキーテスト

  • 認証情報*を入力し、*起動*ボタンをクリックします。

資格情報の入力

受動的ネットワーク発見

このMetaModuleは、トラフィックをスニッフィングしてローカルネットワーク上のホストとサービスを検出するように設計されています。 パケットを送信しないため、このアプリを実行してステルスネットワーク検出スキャンを実行し、ホスト、サービス、クリアテキストの資格情報を特定できます。

このメタモジュールを実行するには、開始画面の[起動]ボタンをクリックします。 次の画面が表示されます。

パッシブネットワーク検出

  • ネットワークインターフェース*を選択します(通常は自動的に検出されます)。 *フィルター*をクリックします。 その後、監視するすべてのプロトコルを確認します。 この場合、HTTPのみをチェックしました。

ネットワークインターフェイス

キャプチャされたデータとパケットを含む次の画面が表示されます。 IPまたは資格情報が見つかった場合は、それらも表示されます。

IP

Metasploit-ソーシャルエンジニアリング

ソーシャルエンジニアリングは、機密情報(ユーザー名やパスワードなど)を巧妙に抽出するプロセスとして広く定義できます。 ハッカーは、この目的で偽のWebサイトやフィッシング攻撃を使用することがあります。 いくつかの例を通して、ソーシャルエンジニアリング攻撃の概念を理解してみましょう。

例1

古い会社のドキュメントがゴミとしてゴミ箱に捨てられていることに気づいたに違いありません。 これらの文書には、名前、電話番号、口座番号、社会保障番号、住所などの機密情報が含まれる場合があります。 多くの企業はまだファックス機でカーボンペーパーを使用しており、ロールが終了すると、そのカーボンは機密データの痕跡があるゴミ箱に入ります。 ありそうもないように聞こえますが、攻撃者はゴミを盗むことで会社のゴミ箱から簡単に情報を取得できます。

例2

攻撃者は会社の従業員と仲良くなり、一定期間にわたって彼と良好な関係を築くことができます。 この関係は、ソーシャルネットワーク、チャットルーム、またはコーヒーテーブル、遊び場、その他の手段を介してオンラインで確立できます。 攻撃者はオフィスの人員を自信を持って連れて行き、最終的に手がかりを与えずに必要な機密情報を探し出します。

実施例3

ソーシャルエンジニアは、身分証明書を偽造するか、単に従業員に会社での地位を説得することにより、従業員または有効なユーザーまたはVIPのふりをすることができます。 このような攻撃者は、制限された領域に物理的にアクセスできるため、攻撃の機会がさらに増えます。

実施例4

ほとんどの場合、攻撃者があなたの周りにいて、ユーザーIDやパスワード、アカウントPINなどの機密情報を入力している間に*ショルダーサーフィン*を行うことができます。

Metasploitのソーシャルエンジニアリング攻撃

このセクションでは、Metasploitを使用してソーシャルエンジニアリング攻撃を開始する方法について説明します。

まず、Metasploitのホームページに移動し、次のスクリーンショットに示すように、[フィッシングキャンペーン]をクリックします。

フィッシングキャンペーン

プロジェクトの名前を入力し、「次へ」をクリックします。

プロジェクト

キャンペーンの名前を入力します。 この例では、 Lab です。 次に、 Campaign Components の下の E-mail アイコンをクリックします。

キャンペーンコンポーネント

次の画面で、キャンペーンに従って要求されたデータを提供する必要があります。

サプライ

次に、メールの内容を変更する場合は、*コンテンツ*アイコン(番号2)をクリックします。 コンテンツを変更したら、[保存]をクリックします。

コンテンツアイコン

次に、*ランディングページ*アイコンをクリックして、だまされたユーザーをリダイレクトするURLを設定します。

ランディングページ

次のスクリーンショットに示すように、 Path にURLを入力し、 Next をクリックします。

パス

次の画面で、ウェブサイトのクローン*ボタンをクリックすると、別のウィンドウが開きます。 ここで、クローンを作成するWebサイトを入力する必要があります。 次のスクリーンショットでわかるように、このフィールドに *tutorialpoint.com と入力しました。 次に、[クローン]ボタンをクリックして、変更を保存します。

クローンWebサイト

次に、[*リダイレクトページ]ボタンをクリックします。

リダイレクトページ

[次へ]をクリックすると、次の画面が表示されます。

次へをクリック

[Webサイトの複製]ボタンをクリックして、リダイレクトされたWebサイトを再度複製できます。

ウェブサイト

次に、[サーバー構成]セクションで[*メールサーバー]ボタンをクリックします。

サーバー構成

次の画面で、このフィッシングメールを送信するためのリレーとして使用される mailserver settings を入力します。 次に、[保存]をクリックします。

メールサーバー設定

通知*セクションには、*キャンペーンを開始する前に*他の人に通知する*オプションがあります。 このオプションを使用して、他の人に通知することを選択できます。 次に、[*保存]をクリックします。

通知

次に、新しいウィンドウが表示されます。 ここで、[スタート]ボタンをクリックして、フィッシングメールの送信プロセスを開始する必要があります。

スタートボタン

Metasploitには、フィッシングキャンペーンの統計レポートを生成するオプションがあります。 次のスクリーンショットに示すように表示されます。

統計レポート

Metasploit-データのエクスポート

この章では、プロジェクトのバックアップであるデータをエクスポートする方法を説明します。 後で、このバックアップを別のMetasploitプロジェクトにインポートできます。

この機能「データのエクスポート」は、Metasploitの無料版と商用版の両方で利用できます。

Metasploit Proからデータをエクスポートする場合、ファイルのコピーが「/path/to/Metasploit/apps/pro/exports」の場所に保存されます。

データのエクスポート

このディレクトリに保存されているファイルは、Webインターフェイスに表示されるエクスポートのリストと一致します。 エクスポートログは、「/path/to/Metasploit/apps/pro/ui/log」ディレクトリで検索および表示できます。 エクスポートログの名前は「exports.log」です。

エクスポートログの表示

エクスポートログをクリアするには、「/path/to/Metasploit/apps/pro/ui/log」にあるログディレクトリからエクスポートログを削除する必要があります。

Metasploit Proでのデータのエクスポート

データをエクスポートするには、[ホーム]→[プロジェクト名]→[エクスポート]→[データのエクスポート]に移動します*。

データのエクスポート

次の画面で、エクスポートデータを保存する*ファイル形式*を選択できます。

  • PWDump -プレーンテキストパスワード、SMBハッシュ、SSHキーなど、プロジェクトのすべての資格情報を含むテキストファイル。 資格情報をマスクして、ユーザー名のみを列挙できます。
  • リプレイスクリプト-ターゲットホストでセッションを開いたタスクを再実行するバッチファイル。 再生スクリプトは、複数のリソースファイル(.rc)で構成されます。
  • XML -プロジェクト内のほとんどのオブジェクトの属性を含み、別のプロジェクトにインポートできるXMLファイル。
  • ZIP Workplace -XMLエクスポートとルートファイル、レポートファイル、およびタスクログを含むzip。

ファイル形式

  • エクスポートタイプ*で、エクスポートデータのファイル名を入力します。 次に、*アドレス設定*で、ホストのIPを入力します。

次に、*オプション*セクションで、*資格情報をマスク*チェックボックスをクリックして、資格情報を非表示にすることができます。 次に、[データのエクスポート]ボタンをクリックします。

エクスポートタイプ

次の画面が表示され、エクスポートされたファイルを確認できます。

エクスポートされたファイル

[ダウンロード]をクリックして、エクスポートされたファイルを取得します。

クリックしてダウンロード

Metasploit-レポート

Metasploitには、すべてのアクティビティと結果を要約するレポートを生成するために使用できる組み込みオプションがあります。 この章では、Metasploitでレポートを生成する方法について説明します。

Metasploitでレポートを作成するには、以下の手順に従ってください-

  • ステップ1 *-[ホーム]→[レポート]→[新しいレポート]に移動します。
  • ステップ2 *-ニーズに応じてレポートタイプを選択します。 「?」をクリックするとアイコン、すべての種類のレポートに関する情報が表示されます。
  • ステップ3 *-*名前*フィールドにファイル名を入力します。
  • ステップ4 *-*セクション*フィールドで、要件に従ってオプションをチェックします。

セクション

  • ステップ5 *-同様に、[オプション]フィールドで、要件に従ってオプションを確認します。
  • ステップ6 *-[レポートをメールで送信]セクションで、レポートを直接メールで送信する受信者のメールIDを入力できます。
  • ステップ7 *-次に、[レポートの生成]ボタンをクリックします。

レポート生成

これで、レポートが生成されました。 次に、すべてのレポートについて、[レポート]→[レポートの表示]に移動します。

レポートの表示

  • アクション*の下にある*表示*をクリックすると、レポートを表示できます。

クリックして表示