Hashcat-LiveCD för iMac

Problembeskrivning

I can has hazhcat?

Datorn har ett bra grafikkort (Radeon HD 9670M) och borde lämpa sig för oclHashcat-plus. Tyvärr stödjer inte hashcat osx, bara GNU/Linux och Windows. iMacen har en intel-cpu så det går att köra GNU/Linux på den, men jag vill inte partitionera om hårddisken eller brottas med bootloadern då jag även använder datorn till annat och inte vill riskera att bricka den. Första tanken var att använda en livecd. Tyvärr hittade jag ingen livecd med tillräckligt ny ati-drivare (drivrutinen till grafikkortet). Nuvarande version av hashcat kräver minst catalyst 11.12.

Lösning

Gör en egen livecd med rätt drivrutin. Jag valde att basera livecdn på gentoo och använde instruktionerna här.

Det går visserligen att göra en generell livecd som detekterar alla möjliga hårdvaror, men nu vill jag göra en minimal som bara funkar på iMacen. Det ultimata vore att göra en 64-bitars livecd, men nu hade jag bara en 32-bitars host så även livecd:n fick bli 32 bitar.

/etc/make.conf:

CHOST="i686-pc-linux-gnu"
CFLAGS="-march=prescott -O2 -fomit-frame-pointer -pipe"
CXXFLAGS=${CFLAGS}
MAKEOPTS="-j5"
USE="aio alsa bash-completion flac gif iproute2 jpeg minimal mmx mp3 ogg png tiff sound svg smp sse sse2 ssse3 theora truetype unicode vorbis X -acl -berkdb -cups -dbus -fortran -gtk -hal -introspection -ipv6 -kde -mudflap -nls -qt4 -zeroconf"
VIDEO_CARDS="ati"
INPUT_DEVICES="evdev"
ALSA_CARDS="hda-intel"
SYNC="rsync://rsync.europe.gentoo.org/gentoo-portage"

Kernelconfig – config-imac-3.1.6 – vanilla 3.1.6 för iMac (spara som /usr/src/linux/.config)

Kompilera enligt instruktioner med genkernel och döp kerneln till /boot/vmlinuz och ramdisk till /boot/initrd. Ändra sen i /boot/grub/menu.lst:

title=LiveCD NO-FB
kernel /boot/vmlinuz real_root=/dev/loop0 looptype=squashfs loop=/livecd.squashfs initrd udev nodevfs cdroot nocoldplug snd-hda-intel.model=imac27
initrd /boot/initrd

Ändringen jag gjorde jämfört med instruktionerna är parametern nocoldplug. Det tog mig 4 cd-skivor att ringa in problemet till /etc/init.d/udev och rätt rad där inne. Det var en if-sats som tittar på parametern nocoldplug. Om inte nocoldplug ges trashas skärmen (blir myrornas krig och går inte att se vad man skriver).

Men det funkade ändå inte. Problemet var att jag hade minimal i useflags. Jag ringade in problemet till xorg-server och kom fram till att den måste kompileras med -minimal. För att göra en lång historia kort, här är inställningar som funkar för hashcat:

/etc/portage/package.use:

dev-lang/perl -minimal
media-libs/mesa -llvm
x11-drivers/ati-drivers opencl
x11-base/xorg-server -minimal

/etc/portage/package.keywords:

x11-drivers/ati-drivers ~x86

Det viktigaste för hashcat är inställningarna för ati-drivers och xorg-server ovan.

Om du är intresserad, se även fungerande

/etc/X11/xorg.conf
/etc/X11/xorg.conf.d/10-keymap.conf (redigera den här om du t.ex. vill ha dvorak ist.f. qwerty)

För en minimal livecd, välj en liten fönsterhanterare, t.ex. evilwm, xfce eller openbox. Om du vill kan du installera en grafisk texteditor (gedit, emacs eller dylikt) och en webbläsare (t.ex. firefox). Eftersom hashcat tar rätt stor plats valde jag att inte lägga in det på livecd:n utan på en extern usb-disk (funkar bra med sticka också). Då blir det mer ram-minne över och man kan även lägga ordlistor m.m. på den externa usb-disken.

Prestanda?

Jag kom upp i drygt 420 miljoner c/s för raw sha1 och drygt 810 miljoner c/s för raw md5! Som jämförelse kan nämnas att min laptop med nvidia-grafik på moderkortet kommer upp i 70 miljoner c/s för md5. Grafikkortet på iMacen är mer än 10ggr snabbare.

Avslutningsvis kan nämnas att de flesta av iMac-inställningarna ovan naturligtvis även fungerar vid installation till hårddiskpartition eller usb-disk. För att boota från livecd:n, håll knappen ‘c’ intryckt när startljudet låter och några sekunder till. För andra alternativ (t.ex. boota från usb-disk) håll ner option-knappen istället för att starta Startup Manager.

Om du inte kan öppna de bifogade filerna, döp om dem från .doc till .txt. Det är rena ascii-filer men det gick inte att ladda upp ascii-filer till wordpress (men ”säkra” msword doc-filer gick bra…).

Annonser

Om albertveli

Grävande programmerare.
Det här inlägget postades i Linux/DIY, Säkerhet. Bokmärk permalänken.

6 kommentarer till Hashcat-LiveCD för iMac

  1. jonas skriver:

    hej,
    mycket intressant artikel, då jag själv labbar med Hashcat en del men har inte hittat någon bra lösning för Os X, du har inte möjlighet eller lust att dela din fungerande liveCD?
    Mvh

  2. albertveli skriver:

    Jo, jag kan zippa ihop en iso och lägga upp på bayfiles eller så. Men jag har tyvärr en mycket primitiv fönsterhanterare, evilwm, som tar ett tag att lära sig. Jag kanske ska lägga in openbox eller nån annan enklare först och sen lägga upp, eller funkar det med evilwm för dig?

  3. Jonas skriver:

    hej,
    ja de skulle funka bra för mig! tack!

    • albertveli skriver:

      Testa den här:

      http://bayfiles.com/file/7Iht/7WyrsY/livecd.iso.7z

      Funkar förmodligen endast på imac. Jag misstänker att nån hårdvara är annorlunda på macbook pro. Det går naturligtvis att göra en livecd som funkar på bägge, men jag har ingen macbook pro att testa på 🙂

      Starta x med:

      startx

      För evilwm. Om du vill köra openbox, skriv:

      startx /usr/bin/openbox-session

      Högerklicka sen för att öppna en xterm.

      oclHashcat ligger *inte* på CD:n. Koppla in en extern USB-disk med hashcat på. Montera disken med typ:

      mkdir disk
      mount /dev/sdb1 disk

      Byt ut b i sdb1 mot den bokstav USB-disken fick (kolla med dmesg vilken bokstav den har).

  4. Jonas skriver:

    Ahh man tackar, ska genast dra ner och testa den, jag sitter med 3 olika macar, varav 2 imac, så någon av dessa borde fixa den 🙂

  5. Jonas skriver:

    Tack igen, det funkar hur bra som helst!

Kommentera

Fyll i dina uppgifter nedan eller klicka på en ikon för att logga in:

WordPress.com Logo

Du kommenterar med ditt WordPress.com-konto. Logga ut / Ändra )

Twitter-bild

Du kommenterar med ditt Twitter-konto. Logga ut / Ändra )

Facebook-foto

Du kommenterar med ditt Facebook-konto. Logga ut / Ändra )

Google+ photo

Du kommenterar med ditt Google+-konto. Logga ut / Ändra )

Ansluter till %s