Gehaxelts Blog

IT-Security & Hacking

Metasploit auf dem Raspberry Pi installieren

In diesem Blogpost erkläre ich, wie ihr Metasploit auf eurem Raspberry Pi installiert.

Softwarevorraussetzungen

Zunächst müssen wir einige Pakete aus dem Repository installieren:

1
2
3
4
5
6
7
8
9
sudo apt-get -y install \
  build-essential zlib1g zlib1g-dev \
  libxml2 libxml2-dev libxslt-dev locate \
  libreadline6-dev libcurl4-openssl-dev git-core \
  libssl-dev libyaml-dev openssl autoconf libtool \
  ncurses-dev bison curl wget postgresql \
  postgresql-contrib libpq-dev \
  libapr1 libaprutil1 libsvn1 \
  libpcap-dev screen

Dieser Prozess ist nach ungefähr 15 Minuten abgeschlossen. Dann können wir Ruby in Kombination mit RVM installieren.

RVM & Ruby installieren

Die Installation dauerte bei 105 Minuten, sodass ihr nach den folgenden Befehlen erstmal einen Kaffee trinken könnt :)

Ich habe den Prozess innerhalb eines Screens gestartet. Falls die Verbindung zum Pi abbricht, läuft die Installation munter weiter.

Den Screen starten wir mittels:

screen -S rvm

Von diesem könnt ihr euch mit “Strg+A+D” trennen.

Möchtet ihr wieder dort rein, dann geht das folgendermaßen:

screen -r rvm

Im Screen führt ihr dann die Installation aus. Wer aus Sicherheitsgründen den Inhalt einer Webseite nicht direkt in die Shell pipen möchte, der kann sich das Script erstmal herunterladen, anschauen und ausführen.

Die schnellere Variante:

curl -L https://get.rvm.io | bash -s stable --ruby

Dauer:

1
2
3
real    104m26.266s
user    83m48.590s
sys     4m19.720s

Nachdem die Installation abgeschlossen ist, müssen wir das RVM-Script neu laden:

source ~/.rvm/scripts/rvm

Als nächstes erzeugen wir unser Default-Gemset:

rvm use --create --default 2.0.0@msf

Metasploit herunterladen

Ich habe für Metasploit einen extra Ordner angelegt:

1
2
pi@raspberrypi ~ $ mkdir metasploit
pi@raspberrypi ~ $ cd metasploit/

Ich gehe hier davon mal aus, dass man einen GitHub Account besitzt, und einen SSH-Key vom Pi hinterlegt:

1
2
3
4
ssh-keygen -t rsa -f ~/.ssh/github
vim ~/.ssh/config
Host github.com
  IdentityFile ~/.ssh/github

Nun können wir das Metasploit-Repository klonen (wir sind immer noch im ~/metasploit):

git clone git@github.com:rapid7/metasploit-framework.git .

Nachdem der Prozess erfolgreich abgeschlossen wurde, müssen wir postgresql starten, damit wir in Metasploit mit Datenbanken arbeiten können:

sudo /etc/init.d/postgresql start

Nachdem Postgresql gestartet ist, müssen wir für Metasploit noch einen Benutzer anlegen:

1
2
sudo su postgres
createuser msf_user -P

Wir geben zweimal ein Passwort, sowie dreimal ein “Nein” als Antwort.

1
2
createdb --owner=msf_user msf_database
exit

Damit haben wir dann die entsprechende Datenbank angelegt und die switch-user Umgebung verlassen.

Final Step

Nun können wir das erste Mal Metasploit starten. Ihr solltet Metasploit mit dem Parameter “-L” aufrufen, da es sonst zu einem Haufen Fehlermeldungen kommt.

ruby ./msfconsole -L

Nachdem wir ein paar Minuten gewartet haben, begrüßt uns die MSFConsole.

Zuletzt möchten wir noch die Datenverbindung einrichten:

db_connect msf_user:PASSWORT@localhost/msf_database

Nun sollte uns Metasploit das auch bestätigen:

db_status

Fazit

Ihr könnt nun auch auf dem kleinen Pi große Exploits ausnutzen :D Zumindest, wenn ihr die entsprechende Geduld aufweisen könnt, denn die Eingabe bzw. die Verarbeitung dauert ein Weilchen.

Gruß

gehaxelt