見出し画像

Metasploitable3環境を構築してみる(Windows環境編)

前回のMacでのMetasploitable3の構築に続き、Winでもやってみます。せっかくなので今回はWin2008R2のイメージで。とりあえず前回と同じで、必要なソフトを事前に用意しておきます。
・VirtualBox
・Vagrant(Vagrant Reload Pluginも)
・Packer
VirtualBoxとVagrantはパッケージ落としてきてインストールしました。
Vagrantのプラグインはコマンドプロンプトから以下で追加されます。

> vagrant plugin install vagrant-reload

Packerはzipダウンロードしてきて適当なところに置いて(vagrantと一緒のフォルダに置きました)、packer.exeがあるフォルダにパス通しておけばOKです(コントロールパネルからシステムの詳細設定の環境変数のpathを編集して新規追加)・・・って、最初うまくいかなかったのでなんかよくわかんなかったけど再起動したら行けた。

画像1

ちゃんと通ってると、コマンドプロンプトでpackerと入れるとヘルプ表示されるとか、-vオプションでバージョン見るとか、とりあえず動けばいいと思います。

> packer
Usage: packer [--version] [--help] <command> [<args>]

Available commands are:
   build       build image(s) from template
   console     creates a console for testing variable interpolation
   fix         fixes templates from old versions of packer
   inspect     see components of a template
   validate    check that a template is valid
   version     Prints the Packer version

で、macの時と同じくgitからダウンロードしてこようと思ったのですが・・・ダウンロードしてきた途端、ばばばばば!っと「不正なファイル」として検知されてしまいました。いくつかのファイルが削除。さようなら・・・。

これめんどくさいな、一回止めなきゃダメかな。除外設定とかかな・・・とか考えながら、ふとReadme読むと・・・・・ク、クイックスタート!!!
ビルド済みのイメージが使えますとか書いてるし。いい子はReadmeをちゃんと最初に読みましょう。ふてくされながらPowerShellにて下記実行。

> mkdir metasploitable3-workspace
> cd metasploitable3-workspace
> Invoke-WebRequest -Uri "https://raw.githubusercontent.com/rapid7/metasploitable3/master/Vagrantfile" -OutFile "Vagrantfile"

このあとvagrant upでubuntuとwin2008R2の両方が上がってくるようですが、とりあえずwin2008R2動かしてみようということで、vagrant up w2k8 を唱えてみます。ubuntuだけ動かす場合はub1404でいけるようです。結果は以下。

Bringing machine 'win2k8' up with 'virtualbox' provider...
==> win2k8: Box 'rapid7/metasploitable3-win2k8' could not be found. Attempting to find and install...
   win2k8: Box Provider: virtualbox
   win2k8: Box Version: >= 0
==> win2k8: Loading metadata for box 'rapid7/metasploitable3-win2k8'
   win2k8: URL: https://vagrantcloud.com/rapid7/metasploitable3-win2k8
==> win2k8: Adding box 'rapid7/metasploitable3-win2k8' (v0.1.0-weekly) for provider: virtualbox
   win2k8: Downloading: https://vagrantcloud.com/rapid7/boxes/metasploitable3-win2k8/versions/0.1.0-weekly/providers/vi
rtualbox.box
   win2k8: Download redirected to host: vagrantcloud-files-production.s3.amazonaws.com
   win2k8:
==> win2k8: Successfully added box 'rapid7/metasploitable3-win2k8' (v0.1.0-weekly) for 'virtualbox'!
==> win2k8: Importing base box 'rapid7/metasploitable3-win2k8'...
==> win2k8: Matching MAC address for NAT networking...
==> win2k8: Checking if box 'rapid7/metasploitable3-win2k8' version '0.1.0-weekly' is up to date...
==> win2k8: Setting the name of the VM: metasploitable3-workspace_win2k8_1580788652338_34783
==> win2k8: Fixed port collision for 3389 => 3389. Now on port 2200.
==> win2k8: Clearing any previously set network interfaces...
==> win2k8: Preparing network interfaces based on configuration...
   win2k8: Adapter 1: nat
   win2k8: Adapter 2: hostonly
==> win2k8: Forwarding ports...
   win2k8: 3389 (guest) => 2200 (host) (adapter 1)
   win2k8: 22 (guest) => 2222 (host) (adapter 1)
   win2k8: 5985 (guest) => 55985 (host) (adapter 1)
   win2k8: 5986 (guest) => 55986 (host) (adapter 1)
==> win2k8: Running 'pre-boot' VM customizations...
==> win2k8: Booting VM...
==> win2k8: Waiting for machine to boot. This may take a few minutes...
   win2k8: WinRM address: 127.0.0.1:55985
   win2k8: WinRM username: vagrant
   win2k8: WinRM execution_time_limit: PT2H
   win2k8: WinRM transport: negotiate
==> win2k8: Machine booted and ready!
==> win2k8: Checking for guest additions in VM...
==> win2k8: Setting hostname...
==> win2k8: Waiting for machine to reboot...
==> win2k8: Configuring and enabling network interfaces...
==> win2k8: Running provisioner: shell...
   win2k8: Running: inline PowerShell script
   win2k8: C:\Windows\system32>netsh advfirewall set allprofiles state on
   win2k8: Ok.
==> win2k8: Running provisioner: shell...
   win2k8: Running: inline PowerShell script
   win2k8: C:\Windows\system32>netsh advfirewall firewall add rule name="Open Port 8484 for Jenkins" dir=in action=allo
w protocol=TCP localport=8484
   win2k8: Ok.
   win2k8: C:\Windows\system32>netsh advfirewall firewall add rule name="Open Port 8282 for Apache Struts" dir=in actio
n=allow protocol=TCP localport=8282
   win2k8: Ok.
   win2k8: C:\Windows\system32>netsh advfirewall firewall add rule name="Open Port 80 for IIS" dir=in action=allow prot
ocol=TCP localport=80
   win2k8: Ok.
   win2k8: C:\Windows\system32>netsh advfirewall firewall add rule name="Open Port 4848 for GlassFish" dir=in action=al
low protocol=TCP localport=4848
   win2k8: Ok.
   win2k8: C:\Windows\system32>netsh advfirewall firewall add rule name="Open Port 8080 for GlassFish" dir=in action=al
low protocol=TCP localport=8080
   win2k8: Ok.
   win2k8: C:\Windows\system32>netsh advfirewall firewall add rule name="Open Port 8585 for Wordpress and phpMyAdmin" d
ir=in action=allow protocol=TCP localport=8585
   win2k8: Ok.
   win2k8: C:\Windows\system32>netsh advfirewall firewall add rule name="Java 1.6 java.exe" dir=in action=allow program
="C:\openjdk6\openjdk-1.6.0-unofficial-b27-windows-amd64\jre\bin\java.exe" enable=yes
   win2k8: Ok.
   win2k8: C:\Windows\system32>netsh advfirewall firewall add rule name="Open Port 3000 for Rails Server" dir=in action
=allow protocol=TCP localport=3000
   win2k8: Ok.
   win2k8: C:\Windows\system32>netsh advfirewall firewall add rule name="Open Port 8020 for ManageEngine Desktop Centra
l" dir=in action=allow protocol=TCP localport=8020
   win2k8: Ok.
   win2k8: C:\Windows\system32>netsh advfirewall firewall add rule name="Open Port 8383 for ManageEngine Desktop Centra
l" dir=in action=allow protocol=TCP localport=8383
   win2k8: Ok.
   win2k8: C:\Windows\system32>netsh advfirewall firewall add rule name="Open Port 8022 for ManageEngine Desktop Centra
l" dir=in action=allow protocol=TCP localport=8022
   win2k8: Ok.
   win2k8: C:\Windows\system32>netsh advfirewall firewall add rule name="Open Port 9200 for ElasticSearch" dir=in actio
n=allow protocol=TCP localport=9200
   win2k8: Ok.
   win2k8: C:\Windows\system32>netsh advfirewall firewall add rule name="Open Port 161 for SNMP" dir=in action=allow pr
otocol=UDP localport=161
   win2k8: Ok.
   win2k8: C:\Windows\system32>netsh advfirewall firewall add rule name="Closed port 445 for SMB" dir=in action=block p
rotocol=TCP localport=445
   win2k8: Ok.
   win2k8: C:\Windows\system32>netsh advfirewall firewall add rule name="Closed port 139 for NetBIOS" dir=in action=blo
ck protocol=TCP localport=139
   win2k8: Ok.
   win2k8: C:\Windows\system32>netsh advfirewall firewall add rule name="Closed port 135 for NetBIOS" dir=in action=blo
ck protocol=TCP localport=135
   win2k8: Ok.
   win2k8: C:\Windows\system32>netsh advfirewall firewall add rule name="Closed Port 3389 for Remote Desktop" dir=in ac
tion=block protocol=TCP localport=3389
   win2k8: Ok.
   win2k8: C:\Windows\system32>netsh advfirewall firewall add rule name="Closed Port 3306 for MySQL" dir=in action=bloc
k protocol=TCP localport=3306
   win2k8: Ok.
==> win2k8: Running provisioner: shell...
   win2k8: Running: inline PowerShell script
   win2k8: C:\Windows\system32>copy C:\vagrant\scripts\installs\setup_linux_share.bat C:\Windows
   win2k8: The system cannot find the path specified.
   win2k8: C:\Windows\system32>reg add HKLM\Software\Microsoft\Windows\CurrentVersion\Run /v share /t REG_SZ /d "C:\Win
dows\setup_linux_share.bat" /f
   win2k8: The operation completed successfully.
==> win2k8: Running provisioner: shell...
   win2k8: Running: inline PowerShell script
   win2k8: CMDKEY: Credential added successfully.
   win2k8: System error 67 has occurred.
   win2k8: The network name cannot be found.
==> win2k8: Running provisioner: shell...
   win2k8: Running: inline PowerShell script

行けましたね・・・なんて簡単な・・・。macでも余計な事やったかな。すいません。ということでVM確認。

画像2

ログイン後(パスワードはvagrant)、しっかりライセンス認証画面が出てきます。ライセンスのこと気になってたけど、やっぱそうですよね普通に聞かれますよね。IISが立ち上がってるようなので、とりあえず見てみたら・・・

画像3

なんだよもう・・・こわいよ・・・やめてよ・・・。
ソース見たら、ああなるほどねということで。CTFになってるのですね。16進数になっててバイナリ変換してごにょごにょ・・・・って感じのようです。おもしろい。でもCTFやりたいのではない。

とりあえずホストからnmapだけしてみたのを貼って今回は終わりにしておきます。

画像4


この記事が気に入ったらサポートをしてみませんか?