[gelöst] Ist ein SSH-Login per RSA-key sicher?

Alles rund um sicherheitsrelevante Fragen und Probleme.
Antworten
tubbi
Beiträge: 10
Registriert: 17.08.2020 20:09:11

[gelöst] Ist ein SSH-Login per RSA-key sicher?

Beitrag von tubbi » 20.12.2024 00:26:00

Hallo Zusammen,

ich habe offentsichtlich ein Sicherheitsproblem:

ssh -i .ssh/user1_rsa.key user1@sshserver funktioniert super!

ssh -i .ssh/user1_rsa.key user2@sshserver funktioniert auch, und ich bin tatsächlich im user2 Home-Verzeichnis gelandet!

Warum ist das möglich und wie kann ich das verhindern?
Zuletzt geändert von tubbi am 20.12.2024 20:14:12, insgesamt 1-mal geändert.

wanne
Moderator
Beiträge: 7544
Registriert: 24.05.2010 12:39:42

Re: Ist ein SSH-Login per RSA-key sicher?

Beitrag von wanne » 20.12.2024 00:37:15

Öffentliche Schlüssel sind so gedacht, dass man die veröffentlichen kann. (Auch wenn es bei SSH auch gründe dagegen gibt.) Jeder der dir vertraut kann deinen öffentlichen Schlüssel kopieren und dir damit Zugang zum System geben. Wenn also user1 und user2 deinen Key kopiert haben kannst du auf beide Systeme. War ja deren freie Entscheidung das zu tun. (Umgekehrt nicht.) Der riesige Vorteil von RSA das ein Schlüssel Zugang zu vielen verschiedenen Dingen geben kann ohne die Sicherheit zu gefährden. Deswegen wird es an so vielen Stellen verwendet.
rot: Moderator wanne spricht, default: User wanne spricht.

uname
Beiträge: 12396
Registriert: 03.06.2008 09:33:02

Re: Ist ein SSH-Login per RSA-key sicher?

Beitrag von uname » 20.12.2024 07:02:19

Ein sehr großer Vorteil gegenüber Passwörtern egal wie komplex ist, dass die geheime Information nicht an einen Zielserver übertragen werden muss. Du kannst dich ja mal aus Spaß mit Debianstrace an den SSH-Server-Prozess deines Servers dranhängen und das beliebig komplexe Passwort im Klartext mitlesen. Bei einer Anmeldung mit einem SSH-Key wirst du den geheimen Schlüssel auf dem Server mit strace nicht erfahren, da er nie den Server erreicht es sei denn er wurde dort erzeugt bzw. muss dort verwendet werden.

mat6937
Beiträge: 3366
Registriert: 09.12.2014 10:44:00

Re: Ist ein SSH-Login per RSA-key sicher?

Beitrag von mat6937 » 20.12.2024 09:12:15

tubbi hat geschrieben: ↑ zum Beitrag ↑
20.12.2024 00:26:00
... wie kann ich das verhindern?
Das kannst Du verhindern, in dem Du in der config des ssh-Servers (sshd) einträgst/festlegst, dass der user2 such nicht anmelden/einloggen soll/darf.
Debian 12.8 mit LXDE, OpenBSD 7.6 mit i3wm, FreeBSD 14.1 mit Xfce

tubbi
Beiträge: 10
Registriert: 17.08.2020 20:09:11

Re: Ist ein SSH-Login per RSA-key sicher?

Beitrag von tubbi » 20.12.2024 11:16:31

@wanne @uname
Besten dank für die Hinweise. Ist schon auf meiner Todo-Liste.

@mat6937
Danke für deine Antwort. Aber ... ich will nicht verhindern, dass sich beide user anmelden können. Ich will lediglich NICHT, dass sich user1 mit seinem eigenen Schlüssel als user2 anmelden kann: ssh -i .ssh/user1_rsa.key user2@sshserver

uname
Beiträge: 12396
Registriert: 03.06.2008 09:33:02

Re: Ist ein SSH-Login per RSA-key sicher?

Beitrag von uname » 20.12.2024 11:20:58

tubbi hat geschrieben:Ich will lediglich NICHT, dass sich user1 mit seinem eigenen Schlüssel als user2 anmelden kann
Das könnte er nur, wenn er seinen öffentlichen Schlüssel im Speicherbereich von user2 also /home/user2/.ssh/authorized_keys ablegen könnte. Hat er diese Möglichkeit? Wenn ja, wie und warum?

wanne
Moderator
Beiträge: 7544
Registriert: 24.05.2010 12:39:42

Re: Ist ein SSH-Login per RSA-key sicher?

Beitrag von wanne » 20.12.2024 11:36:34

tubbi hat geschrieben: ↑ zum Beitrag ↑
20.12.2024 11:16:31
Danke für deine Antwort. Aber ... ich will nicht verhindern, dass sich beide user anmelden können. Ich will lediglich NICHT, dass sich user1 mit seinem eigenen Schlüssel als user2 anmelden kann: ssh -i .ssh/user1_rsa.key user2@sshserver
Musst du den public-Key halt wieder löschen:
Also in die ~/.ssh/authorized_keys gehen und die passende Zeile für user1 löschen.
rot: Moderator wanne spricht, default: User wanne spricht.

tubbi
Beiträge: 10
Registriert: 17.08.2020 20:09:11

Re: Ist ein SSH-Login per RSA-key sicher?

Beitrag von tubbi » 20.12.2024 14:15:16

@ wanne uname matt6937

Ich habe dank eurer Mithilfe die Lösung bzw. die Ursache gefunden.
Zur besseren Übersicht hier nochmal das Ausgangsszenario:

ssh -i .ssh/user1_rsa.key user1@sshserver <--- funktioniert super!
ssh -i .ssh/user1_rsa.key user2@sshserver <--- user1 ist als user2 im Homeverzeichnis von user2 eingeloggt.

Der Knackpunkt:
user2 ist der bei der vServer-Installation angelegte administrative User. Lösche ich also von diesem, also von user2, die .ssh/authorized_keys, dann wird user1 der Zugang als user2 verwehrt. Lege ich aber wieder eine neue authorized_keys für user2 an und fülle diese NUR mit dem user2_rsa.pub, so wie es sein soll, ohne den RSA-Pub von user1, dann ist das Ausgangsszenario wieder gültig!

LÖSUNG:
Das Home-Verzeichnis von user2 hatte bei der vServer-Installation den Besitzer "user2" und die Gruppe "users" bekommen. Die bisher fehlende Gruppe "user2" habe ich nun erstellt und beim user2 Home-Verzeichnis habe via "chgrp user2 /home/user2" geändert.

Schlussszenario:
ssh -i .ssh/user1_rsa.key user2@sshserver <--- user1 kann sich NICHT als user2 in das Homeverzeichnis von user2 einloggen.

Nochmals vielen Dank an alle für die gelieferten "Zaunphähle"!
Wie setze ich meine Fragen, bzw. den gesamten Beitrag auf "gelöst"?

uname
Beiträge: 12396
Registriert: 03.06.2008 09:33:02

Re: Ist ein SSH-Login per RSA-key sicher?

Beitrag von uname » 20.12.2024 16:11:22

Wirklich nachvollziehen kann ich das nicht. Nur so, dass der Benutzer user1 unrechtmäßig den Key nach /home/user2/.ssh/authorized_keys kopiert hat. Trotz evtl. Berechtigung sollte das ein user1 normalerweise trotzdem nicht tun, da die Funktionalität standardmäßig nicht zu erwarten ist. Somit wohl Anwenderfehler und da die Berechtigung falsch war hat es funktioniert.

tubbi
Beiträge: 10
Registriert: 17.08.2020 20:09:11

Re: Ist ein SSH-Login per RSA-key sicher?

Beitrag von tubbi » 20.12.2024 18:21:27

@uname
Leider nicht so, wie du vermutest.
Es ist genauso, wie ich es in der Lösung beschrieben habe. Es gibt und gab lediglich nur 2 User die sich per SSH-Key anmelden.
Die pubs sind bzw. waren IMMER separat beim rechmäßigen User.

Ich verstehe es genauso wenig wie du. Deshalb auch mein Titel "Ist ein SSH-Login per RSA-key sicher?"

mat6937
Beiträge: 3366
Registriert: 09.12.2014 10:44:00

Re: Ist ein SSH-Login per RSA-key sicher?

Beitrag von mat6937 » 20.12.2024 20:26:12

tubbi hat geschrieben: ↑ zum Beitrag ↑
20.12.2024 14:15:16
ssh -i .ssh/user1_rsa.key user2@sshserver <--- user1 ist als user2 im Homeverzeichnis von user2 eingeloggt.
Warum sagst Du, dass user 1 als user2 angemeldet ist? Wie hast Du das festgestellt? Wie war die Ausgabe von:

Code: Alles auswählen

whoami
, nach der Anmeldung?
Debian 12.8 mit LXDE, OpenBSD 7.6 mit i3wm, FreeBSD 14.1 mit Xfce

mat6937
Beiträge: 3366
Registriert: 09.12.2014 10:44:00

Re: Ist ein SSH-Login per RSA-key sicher?

Beitrag von mat6937 » 20.12.2024 20:28:43

tubbi hat geschrieben: ↑ zum Beitrag ↑
20.12.2024 18:21:27
Die pubs sind bzw. waren IMMER separat beim rechmäßigen User.
Die pubs oder der pub-key? Du hast doch nur ein einziges Schlüsselpaar, oder? Wer hat wie den einzigen pub-key, bei beiden usern (user1 und user2) auf dem Server (sshd) eingetragen?
Debian 12.8 mit LXDE, OpenBSD 7.6 mit i3wm, FreeBSD 14.1 mit Xfce

tubbi
Beiträge: 10
Registriert: 17.08.2020 20:09:11

Re: [gelöst] Ist ein SSH-Login per RSA-key sicher?

Beitrag von tubbi » 20.12.2024 21:37:08

@matt6937
"whoami" hatte ich nicht bemüht, weil allein die Tatsache, dass ich mit dem user1-key mich ins user2 Homeverzeichnis anmelden und dort alle Dateien und Ordner sehen konnte, nicht sein durfte. Außerdem stand der sudo-Befehl von user2 zur Verfügung.

Nein, nicht ein pub, sondern zwei unterschiedliche analog zu den Usern. Mit "pubs" waren die Einträge in den entsprechenden authorized_keys gemeint.

mat6937
Beiträge: 3366
Registriert: 09.12.2014 10:44:00

Re: [gelöst] Ist ein SSH-Login per RSA-key sicher?

Beitrag von mat6937 » 20.12.2024 21:48:18

tubbi hat geschrieben: ↑ zum Beitrag ↑
20.12.2024 21:37:08
Mit "pubs" waren die Einträge in den entsprechenden authorized_keys gemeint.
"Einträge" sind nicht relevant. Lt. deinem 1. Beitrag hast Du nur ein Paar keys:

Code: Alles auswählen

ssh -i .ssh/user1_rsa.key user1@sshserver 
ssh -i .ssh/user1_rsa.key user2@sshserver 
die Du mit beiden usern benutzt hast.
Debian 12.8 mit LXDE, OpenBSD 7.6 mit i3wm, FreeBSD 14.1 mit Xfce

tubbi
Beiträge: 10
Registriert: 17.08.2020 20:09:11

Re: [gelöst] Ist ein SSH-Login per RSA-key sicher?

Beitrag von tubbi » 20.12.2024 22:00:09

@matt6937
ok, dann hatte ich unvollständig informiert. Sorry!!

Vervollständigung:
user1 hat seinen eigenen RSA-Key "user1_rsa.key" und user2 hat einen eigenen RSA-Key "user2_rsa.key". Daraus resultieren die beiden unterschiedlich gefüllten authorized_keys.

mat6937
Beiträge: 3366
Registriert: 09.12.2014 10:44:00

Re: [gelöst] Ist ein SSH-Login per RSA-key sicher?

Beitrag von mat6937 » 20.12.2024 22:08:39

tubbi hat geschrieben: ↑ zum Beitrag ↑
20.12.2024 22:00:09
user1 hat seinen eigenen RSA-Key "user1_rsa.key" und user2 hat einen eigenen RSA-Key "user2_rsa.key". Daraus resultieren die beiden unterschiedlich gefüllten authorized_keys.
OK, Du hast den 2. key aber nicht benutzt, denn:

Code: Alles auswählen

ssh -i .ssh/user1_rsa.key user1@sshserver 
ssh -i .ssh/user1_rsa.key user2@sshserver
Debian 12.8 mit LXDE, OpenBSD 7.6 mit i3wm, FreeBSD 14.1 mit Xfce

tubbi
Beiträge: 10
Registriert: 17.08.2020 20:09:11

Re: [gelöst] Ist ein SSH-Login per RSA-key sicher?

Beitrag von tubbi » 20.12.2024 22:19:10

@mat6937
der 2. Key machte ja keine Probleme:

ssh -i .ssh/user2_rsa.key user2@sshserver <--- user2 landet in seinem Homeverzeichnis.
ssh -i .ssh/user2_rsa.key user1@sshserver <--- erzwingt die Passworteingabe für die Anmeldung (nicht für die Passphrase) von user1.

mat6937
Beiträge: 3366
Registriert: 09.12.2014 10:44:00

Re: [gelöst] Ist ein SSH-Login per RSA-key sicher?

Beitrag von mat6937 » 20.12.2024 22:27:32

tubbi hat geschrieben: ↑ zum Beitrag ↑
20.12.2024 22:19:10
ssh -i .ssh/user2_rsa.key user1@sshserver <--- erzwingt die Passworteingabe für die Anmeldung (nicht für die Passphrase) von user1.
Weil Du neben pub-key-authentication auch noch password-authentication ermöglichst/erlaubst. BTW: Die Passphrase gehört dem Schlüssel und nicht dem user.
Debian 12.8 mit LXDE, OpenBSD 7.6 mit i3wm, FreeBSD 14.1 mit Xfce

tubbi
Beiträge: 10
Registriert: 17.08.2020 20:09:11

Re: [gelöst] Ist ein SSH-Login per RSA-key sicher?

Beitrag von tubbi » 20.12.2024 22:36:40

@mat6937
Genau, so soll es auch sein!
Danke nochmals, auch an die "anderen"!

Antworten