Software WebSecurity

Kali LinuxにGitHubを使ってMetasploitをセットアップする手順

投稿日:2014-05-08 更新日:

Kali Linux

Kali Linux上で、GitHubを使って Metasploit をセットアップする手順です。

Kali Linux には最初からMetasploit がインストールされていますが、最新のexploitを気軽に利用するのが難しいという面があります。一方、GitHubを使ってセットアップした場合は、簡単に最新のexploitを利用することができます。というのは、Metasploit は msfupdate という更新コマンドで更新操作を行うのですが、前者の場合は内部で apt-get update しているだけなのです。ですので、最新のexploitを試そうと思ってもパッケージが更新されていることを期待するしかありません。それに対して後者の場合は同コマンド内で git fetch, git merge しているため、直接リポジトリから最新のファイルを取得することができます。

環境

  • Kali Linux 1.0.6
  • 今回は、/root/ 以下の metasploit-framework ディレクトリにセットアップします。

手順

以下、rootユーザで作業します。(一部 postgresユーザ での作業となります)

# リポジトリ情報&パッケージを更新しておきます。
$ apt-get update
$ apt-get upgrade
# PostgreSQLを稼働させておきます。
$ /etc/init.d/postgresql start
# 既存のmetasploitデーモンが動いている場合は止めます。
$ /etc/init.d/metasploit stop
# 必要なパッケージをインストールしておきます。
# (注意)実際は必要ないパッケージも含まれているかもしれません ;)
$ apt-get install build-essential libreadline-dev libssl-dev libpq5 libpq-dev libreadline5 libsqlite3-dev libpcap-dev openjdk-7-jre subversion git-core autoconf postgresql pgadmin3 curl zlib1g-dev libxml2-dev libxslt1-dev vncviewer libyaml-dev ruby1.9.3 ruby-dev libpq-dev ruby-pcap libpcap-ruby libpcap0.8-dev
# ホームディレクトリ以下にセットアップするので移動します。
$ cd ~
# GitHubからMetasploitを取得します。
$ git clone https://github.com/rapid7/metasploit-framework.git
$ cd metasploit-framework
# Rubyのパッケージをインストールします。
$ bundle install
# PostgreSQLのユーザになって、データベースの設定を行います。
$ su - postgres
# ユーザを作成します。
# 今回、ユーザ名は "msfgit"、パスワードは "msf" にします。
$ createuser msfgit -P -S -R -D
# オプション
#     -D, --no-createdb
#        新しいユーザに対してデータベースの作成を禁止します。 これはデフォルトです。
#     -P, --pwprompt
#        このオプションが指定されると、createuserは新しいユーザのパスワードのプロンプトを表示します。 もしパスワード認証を使う予定がなければ、これは必要ありません。
#     -R, --no-createrole
#        新しいユーザに対して新しいロールの作成を禁止します。 これはデフォルトです。
#     -S, --no-superuser
#        新しいユーザはスーパーユーザにはなりません。 これはデフォルトです。
# データベースを作成します。今回は msfgit という名前にします。
$ createdb -O msfgit msfgit
# オプション
#     -O owner, --owner=owner
#        新しいデータベースの所有者となるデータベースユーザを指定します。 (この名前は二重引用符で囲まれた識別子として処理されます。)
# rootに戻ります。
$ exit
# データベースの接続情報を設定します。
$ cd ~/.msf4
$ vi database.yml
# 以下を記述します。
# production:
#     adapter: "postgresql"
#     database: "msfgit"
#     username: "msfgit"
#     password: "msf"
#     port: 5432
#     host: "localhost"
#     pool: 256
#     timeout: 5
#
# 以下のコマンドで Metasploitを実行することができます。
$ cd ~/metasploit-framework
$ ./msfconsole
# 以下のコマンドで Metasploitを更新することができます。
$ cd ~/metasploit-framework
$ ./msfupdate

参考

[最終更新日時: 2014年5月8日]

Pocket

-Software, WebSecurity
-

執筆者:


comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

CAPTCHA


*

おすすめ記事&スポンサーリンク

関連記事

ローカルのリポジトリを Github に追加する

ローカルには既に Git のリポジトリがあることが前提。 ブラウザで Github にアクセスし、リポジトリを新規作成する。 ローカルリポジトリにて、リモートの設定を追加する。 $ git remot …

OWASP ZAP で特定のパラメータだけ検査する方法

以下の内容をメモ Testing only specefied parameter. – Google Groups もう少し正確に言うと、リクエストヘッダ・ボディ内に存在している特定の文 …

OWASP ZAPのSQLインジェクション診断は何をしているのか?

OWASP ZAPのActive Scanで行っている脆弱性診断にはいろいろな項目があります。ここでは、その中の1つである「SQLインジェクション」の診断が何をしているのか説明します。 対象としている …

OWASP ZAPの「Cross Site Scripting (Persistent)」(持続型クロスサイト・スクリプティング)診断は何をしているのか?

OWASP ZAP の Active Scanで実行される脆弱性診断に「Cross Site Scripting (Persistent)」という項目(別名 Stored XSS)があります。日本語だ …

MSYS2のターミナルからWindowsのVim(GUI版)が実行されていることを判別する

「MSYS2のターミナルからWindowsのVim(GUI版)が起動されたことを、Vimの中から判別する」方法を調べていたんですが、なかなか見つからず、若干苦し紛れですが以下の Vimscriptで判 …


lathe