0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

5分でサイバーレンジを構築:ハッキングプロへの第一歩を踏み出そう!

Posted at

サイバーセキュリティの初心者にとって、ペネトレーションテストのための演習環境を構築することは、多くの場合必要です。演習環境とは、基本的には実際のネットワーク環境をシミュレートするプラットフォームであり、セキュリティ担当者が管理された設定で様々なセキュリティテスト(ペネトレーションテスト、脆弱性探索、攻防演習など)を実施できるようにするものです。このような演習環境を構築することで、専門家は現実世界の攻撃や脆弱性を合法的かつ倫理的にシミュレートする練習ができ、最終的にはセキュリティ防御の有効性と精度を高めることができます。

演習環境を構築するための技術アーキテクチャは、基本的に実際のウェブサイトをデプロイするのと同じです。本番環境ではより複雑な設定(負荷分散、セキュリティ強化など)が必要になる場合もありますが、主要な実行環境は以下の主要コンポーネントに依存しています。

  1. ウェブサイトアプリケーションコード: フロントエンドとバックエンドのロジックを含みます。
  2. ウェブサーバー: リクエストを処理し、コンテンツを提供します。一般的な例としては、Nginx、Apache、Caddyなどがあります。
  3. データベース: MySQL、MongoDB、PostgreSQLなど、データを保存・管理します。

これら3つのコンポーネントが、機能するウェブサイトの基盤を形成します。

これらのコンポーネントに基づいて、フロントエンド + Python + Nginx + MySQLフロントエンド + Java + Nginx + MySQLフロントエンド + PHP + Apache + MongoDBなど、様々な技術スタックを組み合わせることができます。

演習環境のためにこれらすべてのコンポーネントとその依存関係を手動で設定・管理するのは、非常に面倒で時間のかかる作業でしょう。そのため、デプロイを簡素化し、演習自体に集中するために、ServBayのような便利な統合ツールの使用をお勧めします。これにより、様々な組み合わせのウェブサイト実行環境を迅速かつ簡単にセットアップできます。

さて、演習環境の構築を始めましょう!

ServBay

ServBayの紹介

ServBayは、一般的な開発言語(Python、PHP、Go、Node.jsなど)や、主要なウェブサーバー、データベースを統合した開発環境管理ツールです。ペネトレーションテストのニーズに応えるためには、様々なシナリオを考慮する必要があります。ServBayの主な利点は、異なるソフトウェアバージョン間をワンクリックで切り替えられることであり、これにより既知の脆弱性を持つ様々なターゲット環境を迅速にシミュレートできます。

画像の説明

ServBayのインストール

まず、ServBayをインストールしましょう。公式ダウンロードリンク: https://www.servbay.com/download

ServBayの初期化インターフェースに入り、インストールする必要のあるウェブサーバー、言語、データベースを選択します。

画像の説明

インストールが完了するのを待ちます。ServBayは自動的に起動します。

次の画面は、インストールが完了したことを示しています。

画像の説明

MySQLデータベースをダウンロードして起動します。

画像の説明

次に、必要なウェブサーバーを起動します。ここではNginxを選択しました。

画像の説明

環境の準備ができたら、演習用アプリケーションをインストールする必要があります。ここではDVWAをお勧めします。

DVWA

DVWAの紹介

DVWA (Damn Vulnerable Web Application) とは、簡単に言えば、演習用に意図的に脆弱性だらけ("damn vulnerable")にされたウェブサイトです。SQLインジェクション、XSS(クロスサイトスクリプティング)、ファイルアップロードの脆弱性など、一般的なウェブの脆弱性が意図的に多数含まれており、サイバーセキュリティ学習者が練習するのに最適です。

DVWAには10個の攻撃モジュールが含まれています。

画像の説明

さらに、DVWAではソースコードのセキュリティレベルをLow、Medium、High、Impossibleに手動で調整できます。レベルが高いほどセキュリティ対策は厳しくなり、侵入難易度も上がります。初心者から専門家まで、DVWAはあなたの練習ニーズに応えることができます!

DVWAのインストール

DVWAダウンロードリンク: https://github.com/digininja/DVWA

ダウンロードして展開(解凍)後、ファイルを/Applications/ServBay/www/ディレクトリに移動します。(注意:このパスはmacOS固有です。異なるOSを使用している場合は、通常ServBayが指定するウェブルートフォルダ内に調整してください。)

次に、config.inc.php.dist ファイルの名前を config.inc.php に変更します。データベースのユーザー名とパスワードを変更するだけで、他の設定は変更しなくても構いません。

画像の説明

画像の説明

注意点: ここにMySQLの認証情報(ユーザー名とパスワード)を入力する必要があります。セットアップ中またはその後に変更していない限り、デフォルト値は通常ServBayパネルで確認できます。MySQLのユーザー名またはパスワードを変更した場合は、ここでカスタム認証情報を使用してください。

画像の説明

データベースとウェブサイトの設定

ブラウザで https://servbay.host/ (またはServBayで設定したホスト)にアクセスしてインスタンスのウェブサイトを開きます。phpMyAdminをクリックしてログインページに移動します。

画像の説明

MySQLのユーザー名とパスワード(ServBayで確認できるか、自分で設定したもの)を入力し、データベース管理ページにアクセスして、新しいデータベースを作成します。

画像の説明

新しいデータベースの名前(通常はDVWAの設定ファイルで指定されている 'dvwa')を入力し、「作成」をクリックします。

次に、ServBayを開き、新しいサイトを作成します。そのルートディレクトリを先ほど配置したDVWAフォルダ(例:/Applications/ServBay/www/DVWA)に指定します。ドメイン名(例:dvwa.test)を割り当てます。

画像の説明

ブラウザで、先ほどサイトに設定したドメイン名を入力します。DVWAのセットアップ/ログインページに正常にアクセスできるはずです。セットアップページの場合は、まず「Create / Reset Database」ボタンをクリックします。

画像の説明

デフォルトのユーザー名 admin とパスワード password を入力して、ペネトレーションテストの演習ページにログインします。

これで、DVWAのセットアップは完了です!おめでとうございます!!!

画像の説明

左側のメニューにある「DVWA Security」ボタンをクリックします。このページで、DVWA演習環境のセキュリティレベル(Low、Medium、High、Impossible)を設定できます。ニーズに合わせて希望のレベルを選択し、ペネトレーションテストの練習を開始してください。

ServBayとDVWAを組み合わせることで、サイバーセキュリティ演習環境を迅速に構築できます。サイバーセキュリティの初心者からプロへの道は、もう始まっています!

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?