PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Authentifizierung mittels Usbstick beim booten



moepmoep
07.04.07, 20:46
Hallo,
bin auf der Suche nach einem Script, dass in den Bootprozess eingebunden wird (nach der Kernelauswahl im Bootloader) und dort eine Authentifizierung mittels eines gemounteten Usbsticks durchführt.
Ich möchte keine verschlüsselten Partitionen o.ä. mounten, sondern vielmehr einen Abgleich zwischen einem Keyfile auf dem Usbstick und dem Gegenstück auf der Festplatte vornehmen.
Ist so etwas eventuell auch mit pam_usb (http://www.pamusb.org/) zu lösen?

Danke im Voraus!!!

cane
07.04.07, 21:50
Beschreibe genauer was Du erreichen willst.

mfg
cane

moepmoep
08.04.07, 11:10
Also ... Ziel ist es eine Passwortabfrage/Authentifizierung - wie sie bspw. auch beim einloggen auf der Console stattfindet (durch Eingabe des Benutzernamens und Passwortes) - in den Bootprozess einzubauen.
Hatte an eine Implementierung der notwendigen Module (um den Usbstick zu mounten) sowie des Binaries/Programms in das initramfs Image gedacht.
Das sollte dann folgendermaßen ablaufen:
1. PC einschalten
2. Kernel im Bootloader (Grub) auswählen
3. Start des Kernels sowie das Einhängen des initramfs
4. Bootprozess hält an und wartet auf das anstöpseln des Usbsticks
5. Usbstick ist angestöpselt und wird gemountet
6. Keyfile (also das Passwort) auf dem Usbstick wird abgeglichen (in welcher Form auch immer)
7. Authentifizierung erfolgreich
8. Bootprozess geht weiter

Danke!!!

jom
08.04.07, 16:58
Ahoi

Also so wie ich das verstehe willst du verhindern das man deinen Rechner booten kann ohne diesen USB-Stick zu haben.
Ich nehme weiter mal an es laufen irgendend welche daemons/services auf dem dingen die keiner ohne dein wissen bedienen bzw. einfach einschalten können soll.

Das mit der Benutzer Authentifizierung so wie du das beschreibst finde ich mächtig sinnlos... ich mein der Bootprozess hört ja mit nem Loginscreen auf, das ist doch genau das was du willst warum sollte man da noch ein Login zwischen haben wollen?
Es geht ja, so wie ich das verstehe, nicht um einen bestimmten User der fürs System irgendwie relevant ist sondern generell um nen Key für den einen Rechner unabhänig vom Benutzer... ansonsten gibts den Loginprompt/screen.

Um nen pub/priv key zu testen hängst du einfach nen initscript rein (ka. wie genau das aussehen soll) das den Pubkey hat, einen Random-String erstellt, diesen zu dem Pubkey verschlüsselt, danach den Privatekey vom USB nimmt den string wieder entschlüsselt und wenn raus kommt was reingegangen ist tata der USB-Stick stimmt (man rsautl). Das warten auf den stick müsste man dann über udev machen denk ich. (alles reine Theorie btw)
Prob daran ist es ist kinderleicht zu umgehen und im normalfall biste eh verloren wenn jmd vor deinem rechner steht ist meine Meinung.

Oder du nimmst zB pam_usb und startest den ganzen service quatsch erst nachdem du dich eingelogt hast, sudo sollte zB auch pam können, bin aber net sicher.

cheers
jo

moepmoep
08.04.07, 17:37
Danke schonmal für deine Ausführung!!!

Die ganze Geschichte soll eigentlich nur eine kleine Spielerei sein. Das ich damit keinen Sicherheitgewinn erziele ist mir bewusst.

Falls noch jemand ein passendes Script zur Hand hat, bitte posten.

Stephanw
08.04.07, 18:38
Das ich damit keinen Sicherheitgewinn erziele ist mir bewusst.

Also wenn ich vor deinem USB-im-Userspace-geschützten Rechner sitzen würde, würde ich grub mittels "e" unterbrechen, ein "init=/bin/bash" an deine Kernelparameter hängen und dein Spielzeug mittels vi und rm entfernen...

Gruß Stephan

moepmoep
09.04.07, 00:28
Hehe ... danke für den Tip!!!
Wobei ich noch ein remount des Wurzelverzeichnisses durchführen musste um Änderungen am System vornehmen zu können.

Allerdings sollte das Setzen eines GRUB-Passwortes, dass unbefugte Editieren der GRUB-Config verhindern.

MiGo
09.04.07, 09:43
Allerdings sollte das Setzen eines GRUB-Passwortes, dass unbefugte Editieren der GRUB-Config verhindern.
Das Editieren der Konfig oder die Neuinstallation von Grub von einer Live-CD dauert grobe 20 Sekunden :)


Nur für den Fall, dass einer, der diesen Thread zufällig findet, nicht auf die Idee kommt, mit sowas könne man einen Rechner gegen physischen Zugriff absichern :)

moepmoep
09.04.07, 10:12
Wie wäre es denn zur Abwechslung mal mit einer Lösung, um diese Vorgehensweise zu verhindern???

MiGo
09.04.07, 15:54
Wie wäre es denn zur Abwechslung mal mit einer Lösung, um diese Vorgehensweise zu verhindern???
Ich dachte eigentlich, das hätte sich inzwischen rumgesprochen - anscheinend nicht.

Wenn ein potentieller Angreifer physischen Zugriff auf den Rechner hat, dann war's das. Alles (tolle Passphrase auf USB, Bios-Passwort etc) ausser Festplattenverschlüsselung greift bei handelsüblichen Rechnern nicht.
Fazit: Wenn du deinen Rechner gegen unbefugten Zugriff schützen willst:

Schliess in in einem stabilen Raum mit festen Türen ein.
So macht das übrigends auch jede Firma mit ihren Rechnern.

cane
10.04.07, 12:41
Oder eben Festplattenverschlüsselung :)

Anleitungen gibts zuhauf per google.de

mfg
cane