Auf vielfachen Wunsch erweitere ich mein HowTo zur Erstellung eines Backtrack 4 (pre final) USB-Sticks.
Was brauchen wir
- Ein USB Stick mit min. 4 GB Speicherplatz
- Das ISO-Image von Backtrack 4
- VMware Workstation oder eine Backtrack (anderes Linux geht auch) Live CD
- Nessus (client und server) Packete für Ubuntu (32 bit)
Wenn alle diese Zutaten vorhanden sind kann es los gehen. Ich werde in meinem Beispiel VMware Workstation verwenden – Benutzer einer Live CD müssen an den entsprechenden Stellen ihr Live Linux booten.
Partitionieren des USB Sticks
Der erste Schritt ist das Partitionieren des USB Sticks. Hierzu booten wir unser Linux (in VMWare einfach die Backtrack CD als Image auswählen und durch booten) und schließen nach erfolreichem booten den USB Stick an den Rechner an. Über nachfolgenden Befehl sollten wir den Namen des USB Sticks in Erfahrung bringen können:
dmesg | egrep hd.\|sd.
Unser USB Stick soll nun zwei Partitionen bekommen wobei die erste min. 1,5 GB groß sein sollte (ich werde 2 GB verwenden). Auf dieser vfat Partition (es geht auch fat32) wird backtrack abgelegt. Auf der zweiten Partition (ext3 oder ext2) werden alle Änderungen gespeichert. Angelegt werden die Partitionen mit fdisk.
WICHTIG: fdisk bearbeitet die Partitionstabelle – erwischt man damit versehentlich seine normale Festplatte (kann bei VMWare nicht passieren) dann sind die Daten darauf erst mal weg und Windows bootet nicht mehr… In meinem nachfolgenden Beispiel hat mein USB Stick die Bezeichnung sdb. Alle Befehle die ich eingebe sind in Fettschrift.
fdisk /dev/sdb
# Erstellen einer leeren Partitionstabelle Command (m for help): o # Erstellen der ersten Partition (vfat) Command (m for help): n Command action e extended p primary partition (1-4) p Partition number (1-4): 1 First cylinder (1-489, default 1): <enter> Using default value 1 Last cylinder, +cylinders or +size({K,M,G} (1-489, default 1): +2000M # Erstellen der zweiten Partition (ext3) Command (m for help): n Command action e extended p primary partition (1-4) p Partition number (1-4): 2 First cylinder (257-489, default 257): <enter> Using default value 257 Last cylinder, +cylinders or +size({K,M,G} (257-489, default 489): <enter> using default value 489 # Setzen des Partitionstyps der ersten Partition (vfat) Command (m for help): t Partition number(1-4): 1 Hex code (type L to list codes): b Changed system type of partition 1 to b (W95 FAT32) # Setzen des Partitionstyps der zweiten Partition (ext3) Command (m for help): t Partition number(1-4): 2 Hex code (type L to list codes): 83 # Die erste Partition als aktive Partition markieren Command (m for help): a Partition number(1-4): 1 # Schreiben der Änderungen Command (m for help): w
Ein fdisk –l /dev/sdb sollte nun folgende Ausgabe zurück geben:
Formatieren des USB Sticks
Nachdem die Partitionen für den USB Stick eingerichtet wurden müssen diese noch mit einem Dateisystem versehen werden. Dies erledigen die nachfolgenden zwei Befehle:
mkfs.vfat /dev/sdb1
mkfs.ext3 -b 4096 -L casper-rw /dev/sdb2
Die Schreibweise insbesondere das Label im zweiten Befehl sind wichtig! Das in BT4 verwendete casper-FS (persistent changes) benötigt genau dieses Label um die Partition für die Änderungen zu finden. Vorteil: Man muß kein Laufwerk mehr Hardcoden…
Kopieren der Backtrack Dateien
Um den USB Stick betanken zu können müssen wir diesen mounten:
mkdir /mnt/sdb1 && mount /dev/sdb1 /mnt/sdb1
Nun können wir die Backtrack Dateien auf unseren USB Stick kopieren.
cd /mnt/sdb1/ && rsync -r /media/cdrom0/* .
… jetzt ist ein guter Zeitpunkt eine Cola zu trinken 🙂
USB Stick bootbar machen
Als Bootmanager kommt heute Grub zum Einsatz. Diesen laden wir mit nachfolgendem Befehl in den den MBR des USB-Sticks
grub-install --no-floppy --root-directory=/mnt/sdb1 /dev/sdb
Persistent Changes
Um die Änderungen permanent auf die zweite Partition schreiben zu lassen müssen nur wenige Zeilen im Bootloader geändert werden. Öffnen Sie daher die menu.list mit vi und nehmen sie folgende Anpassungen vor:
vi /mnt/sdb1/boot/grub/menu.list
- Ändern Sie den Eintrag default auf 4 ab (damit wird per default in den persistent-mode gebootet)
- Löschen Sie die Zeile “splashimage=/boot/grub/bt4.xpm.gz” (löschen einer ganzen Zeile in vi durch zweimaliges drücken von “d”)
- Fügen Sie dem Booteintrag mit dem Titel “Start Persistent Live CD” in der Zeile Kernel folgende Zeichenkette hinzu: vga=0×317
Booten in das neue System
Nun können wir zum ersten mal in des neue System booten. Starten Sie dafür den Rechner neu und wählen Sie als Bootmedium den USB-Stick aus (i. d. R. erreicht man das durch drücken von F12 beim Booten). Stellen Sie sicher, dass der persistent mode gebootet wird.
Updaten des Systems
Als ersten Schritt würde ich nun den neuen USB-Stick mit updates versorgen. Da BT4 auf Ubuntu basiert geht das recht einfach mit nachfolgendem Befehl:
apt-get update && apt-get upgrade
Um den Befehl ausführen zu können ist natürlich eine Netzwerk / Internetverbindung notwendig! Sie können ein Interface ggf. mit nachfolgendem Befehl starten (per default sind alle Interfaces down!):
ifup eth0
Installieren von NESSUS
Um Nessus Installieren zu können müssen wir zuerst die entsprechenden Packete von nessus.org downloaden. Wir benötigen sowohl die client wie auch die Server Komponenten jeweils für “Ubuntu 8.10 and 9.04 (32 bits)”. Als Ergebnis sollten wir nun zwei .deb Dateien auf unserem USB stick liegen haben welche wir mit nachfolgenden Befehlen installieren können:
dpkg -i Nessus-4.0.1-ubuntu810_i386.deb dpkb -i NessusClient-4.0.1-ubuntu810_i386.deb
Als nächsten Schritt ist es notwendig einen Registrierungscode für Nessus zu bekommen. Für Privatpersonen ist dieser kostenlos für Firmen fallen Lizenzkosten pro Installation an. Man erhält den Code ebenfalls auf der Webseite von Nessus. Nach erhalt aktiviert man seine Kopie von Nessus mit folgendem Befehl (es werden auch direkt die Plugins auf den neusten Stand gebracht):
/opt/nessus/bin/nessus-fetch -register 0000-0000-0000-0000
Thats it! Der Nessus Server startet nun bei jedem booten automatisch und den client findet man im Programmenü der grafischen Oberfläche. Happy scanning!