Sha256: 50bfb1847bef926ffcfb0f1bd7da7620af0a124d596481c6b7a17fdf8de47a70

Contents?: true

Size: 1.71 KB

Versions: 64

Compression:

Stored size: 1.71 KB

Contents

#!/usr/bin/env ruby
# frozen_string_literal: true

require 'yaml'

# Install Metasploit from Source
printf 'Installing Metasploit *****************************************************************'
if ENV['PWN_ROOT']
  pwn_root = ENV['PWN_ROOT']
elsif Dir.exist?('/pwn')
  pwn_root = '/pwn'
else
  pwn_root = Dir.pwd
end

pwn_provider = ENV['PWN_PROVIDER'] if ENV['PWN_PROVIDER']

metasploit_root = '/opt/metasploit-framework-dev'
`sudo git clone https://github.com/rapid7/metasploit-framework.git #{metasploit_root}`
`sudo apt install -y libpq-dev postgresql-server-dev-all`
metasploit_ruby_version = File.readlines("#{metasploit_root}/.ruby-version")[0].to_s.scrub.strip.chomp
metasploit_gemset = File.readlines("#{metasploit_root}/.ruby-gemset")[0].to_s.scrub.strip.chomp
`
  sudo bash \
    --login \
    -c "\
      rvm install ruby-#{metasploit_ruby_version} && \
      rvm use ruby-#{metasploit_ruby_version} && \
      rvm gemset create #{metasploit_gemset} && \
      cd #{metasploit_root} && \
      gem install bundler && \
      bundle install
    "
`

printf 'Starting up MSFRPCD *******************************************************************'
vagrant_example = "#{pwn_root}/etc/userland/#{pwn_provider}/metasploit/vagrant.yaml.EXAMPLE"
vagrant_yaml = "#{pwn_root}/etc/userland/#{pwn_provider}/metasploit/vagrant.yaml"

system(
  "
    sudo bash \
      --login \
      -c 'cp #{vagrant_example} #{vagrant_yaml}'
  "
)

system(
  "
    sudo bash \
      --login \
      -c \"\
        rvm use ruby-#{metasploit_ruby_version}@#{metasploit_gemset} && \
        cp #{pwn_root}/etc/systemd/msfrpcd.service /etc/systemd/system/ && \
        systemctl enable msfrpcd.service && \
        systemctl start msfrpcd.service
      \"
  "
)

Version data entries

64 entries across 64 versions & 1 rubygems

Version Path
pwn-0.4.407 packer/provisioners/metasploit.rb
pwn-0.4.406 packer/provisioners/metasploit.rb
pwn-0.4.405 packer/provisioners/metasploit.rb
pwn-0.4.404 packer/provisioners/metasploit.rb
pwn-0.4.403 packer/provisioners/metasploit.rb
pwn-0.4.402 packer/provisioners/metasploit.rb
pwn-0.4.401 packer/provisioners/metasploit.rb
pwn-0.4.400 packer/provisioners/metasploit.rb
pwn-0.4.399 packer/provisioners/metasploit.rb
pwn-0.4.398 packer/provisioners/metasploit.rb
pwn-0.4.396 packer/provisioners/metasploit.rb
pwn-0.4.394 packer/provisioners/metasploit.rb
pwn-0.4.393 packer/provisioners/metasploit.rb
pwn-0.4.391 packer/provisioners/metasploit.rb
pwn-0.4.390 packer/provisioners/metasploit.rb
pwn-0.4.389 packer/provisioners/metasploit.rb
pwn-0.4.388 packer/provisioners/metasploit.rb
pwn-0.4.387 packer/provisioners/metasploit.rb
pwn-0.4.386 packer/provisioners/metasploit.rb
pwn-0.4.385 packer/provisioners/metasploit.rb