0

I was installing Metasploit using the script invocation for quick installation and as I pasted the script in the terminal the error

./msfinstall: line 1:syntax error near unexpected token 'newline'
./msfinstall: line1: '<DOCTYPE html>'

appeared. How can I fix this?

TheWanderer
  • 19,315
  • 12
  • 49
  • 65

1 Answers1

0

It appears as if something is wrong with the script that you downloaded. I just tried it and it worked fine.

Run gedit ./msfinstall from the terminal (this is assuming you are still in the directory from where you ran the original command) to open the script for editing.

Delete everything there and paste this instead:

#!/bin/sh

print_pgp_key() {
  cat <<-EOF
-----BEGIN PGP PUBLIC KEY BLOCK-----
Version: GnuPG v1

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
lX5PgGasG3u3kHBl
=t69L
-----END PGP PUBLIC KEY BLOCK-----
EOF
}

install_deb() {
  LIST_FILE=/etc/apt/sources.list.d/metasploit-framework.list
  PREF_FILE=/etc/apt/preferences.d/pin-metasploit.pref
  if [ ! -f $LIST_FILE ]; then
    echo -n "Adding metasploit-framework to your repository list.."
    echo "deb $DOWNLOAD_URI/apt lucid main" > $LIST_FILE
    print_pgp_key | apt-key add -
  fi
  if [ ! -f $PREF_FILE ]; then
    mkdir -p /etc/apt/preferences.d/
    cat > $PREF_FILE <<EOF
Package: metasploit*
Pin: origin downloads.metasploit.com
Pin-Priority: 1000
EOF
  fi
  echo -n "Updating package cache.."
  apt-get update > /dev/null
  echo "OK"
  echo "Checking for and installing update.."
  apt-get install -y --force-yes metasploit-framework
}

install_rpm() {
  echo "Checking for and installing update.."
  REPO_FILE=/etc/yum.repos.d/metasploit-framework.repo
  GPG_KEY_FILE=/etc/pki/rpm-gpg/RPM-GPG-KEY-Metasploit
  if [ ! -f $REPO_FILE ]; then
    echo -n "Adding metasploit-framework to your repository list.."

    cat > /etc/yum.repos.d/metasploit-framework.repo <<EOF
[metasploit]
name=Metasploit
baseurl=$DOWNLOAD_URI/rpm
gpgcheck=1
gpgkey=file://$GPG_KEY_FILE
enabled=1
EOF
    print_pgp_key > ${GPG_KEY_FILE}
  fi
  yum install -y metasploit-framework
}

install_pkg()
{
  (
    cd ~/Downloads

    echo "Downloading package..."
    curl -O "$DOWNLOAD_URI/osx/metasploitframework-latest.pkg"

    echo "Checking signature..."

    if pkgutil --check-signature metasploitframework-latest.pkg; then
      echo "Installing package..."
      installer -pkg metasploitframework-latest.pkg -target /
    fi

    echo "Cleaning up..."
    rm -fv metasploitframework-latest.pkg
  )
}

DOWNLOAD_URI=http://downloads.metasploit.com/data/releases/metasploit-framework
PKGTYPE=unknown
ID=`id -u`

if [ -f /etc/redhat-release ] ; then
  PKGTYPE=rpm
else
  if uname -sv | grep 'Darwin' > /dev/null; then
    PKGTYPE=pkg
  else
    PKGTYPE=deb
  fi
fi

if [ "$ID" -ne 0 ]; then
  if ! hash sudo 2>/dev/null; then
    echo "This script must be executed as the 'root' user or with sudo"
    exit 1
  else
    echo "Switching to root user to update the package"
    sudo -E $0 $@
    exit 0
  fi
fi

case $PKGTYPE in
  deb)
    install_deb
    ;;
  rpm)
    install_rpm
    ;;
  *)
    install_pkg
esac

Save the file, then run ./msfinstall again.

TheWanderer
  • 19,315
  • 12
  • 49
  • 65