[linux-l] aesloop root filesystem encryption

Frank Reker frank at reker.net
Mi Mai 19 16:14:20 CEST 2004


Oliver Beck disse:
> On Tue, 18 May 2004 19:18:24 +0200
> Jan-Benedict Glaw <jbglaw at lug-owl.de> wrote:
>
>> Klar. Warum nicht?
>>
>> MfG, JBG
>
> Nunja, mit CryptoAPI/cryptoloop ist das nicht (ohne größere
> Eigeninitiative) möglich. Da ich da selbst ein Programm schreiben müßte,
> das die Authentifizierung übernimmt und die Daten dafür a) verschlüsselt
> ablegt und b) diese dann auch wieder ausliest. Mit 'losetup' ist das
> meines Wissens nicht möglich.

Normalerweise nutzt man ein Startscript, dass das Passwort abfragt.
Das Problem, wenn du das Passwort verschluesselt ablegen willst,
woher bekommst du dann das Passwort zum entschluesseln des Passwortes!?!
Du kannst dir natuerlich einen kleinen Daemon schreiben, der die
Daten aus einer verschluesselten Datei ausliest, und sich dann
merkt. Dazu muss man dem Daemon nur einmal das passwort mitteilen.
Bei spaeterem gebrauch kennt er es dann schon. Vorausgesetzt der
Daemon (was die natur eines Daemons ist) laeuft die ganze Zeit.
Es gibt dann aber immer noch die moeglichkeit mittels eines
ptraces das passwort zu erschnueffeln, aber nur, wenn der angreifer
root-zugriff auf deinen Rechner hat. Einen solchen daemon kannst
du dir auch leicht als shellscript schreiben:
Entschluesselung des config-files mittels gpg, dann in den
hintergrund forken und die commandos zum mounten ueber eine
named pipe auslesen und ausfuehren.
Die alternative, du nutzt smartcards zum entschluesseln des config-files.
Dazu kannst du dir das programm openssl patchen. um mit openssl
auf smartcards zuzugreifen kannst du z.B. ein patch von bull
einspielen. (ich hab grad die addresse nicht mehr griffbereit,
aber such mal nach: bull und openssl oder pkcs11 und openssl.
Das patch erlaubt aber keine authentifizierung. Sprich, wenn deine
SC ein PIN verlangt funktionierts nicht. Ich hab das Patch fuer
ein projekt nochmals gepatcht um auch logins zu unterstuetzen,
wenn es dich interessiert, kann ich's dir ja mal schicken...
Du brauchst natuerlich noch eine pkcs11 compatible bibliothek.
Wenn dein SC-Hersteller dir keine fuer Linux zur verfuegung stellt,
kannst du dir auch mal opensc anschauen.
Das problem ist natuerlich, dass die meisten SCs einen PIN verlangen.
Du hast also wieder das problem, dass du den PIN irgendwo ablegen
musst. Wenn du dich natuerlich auf den Standpunkt stellst: "ich
bewahre die SC sicher auf, und den PIN kann ruhig jeder wissen",
ok, ansonsten bist du wieder bei dem gleichen Dilemma wie oben ;-))


-- 
Don't worry be happy ...
Ciao Frank



Mehr Informationen über die Mailingliste linux-l