Schwere Sicherheitslücke bei neuen "Homes" SMB Shares?

Status
Für weitere Antworten geschlossen.

TACiboy

Benutzer
Mitglied seit
10. Dez 2008
Beiträge
215
Punkte für Reaktionen
0
Punkte
16
Hallo zusammen,

ich habe eben die neue Firmware DSM 2.1-0832 installiert und die "Home-Folder" Funktion ausprobiert.

Ich werde aus diesem Feature einfach nicht schlau. Folgendes Szenario in meinem Netzwerk:

Vorhanden ist ein Laptop mit einem Windows Vista Benutzer namens "Toni". Weiterhin gibt es einen Desktop-Rechner, ebenfalls mit einem Vista Benutzer "Fine". Auf meiner DS207+ habe ich zwei Benutzer eingerichtet, die genauso heißen wie auf den beiden Computern ("Toni" und "Fine"). Nun möchte ich vom Laptop aus auf den Home-Ordner des Benutzers "Toni" zugreifen. Dies ist über die Netzwerkumgebung soweit auch kein Problem bei Eingabe des Pfads \\DS\home\.

Jetzt kommt allerdings der Hammer: Bei Eingabe des Pfades \\DS\Fine\ vom Laptop aus kann ich lesend auf den Home-Ordner des Benutzers "Fine" zugreifen, OBWOHL ich per SMB mit dem Benutzer "Toni" angemeldet bin!

Ich weiß ja nicht ob diese "Lücke" bewußt offen gelassen wurde, allerdings halte ich diese Art der Konfiguration für nicht sehr sicher. Die neue Firmware (mit DSM 2.1) generiert die Home-Folder mit Linux-Rechten 0644 (erstes Problem) sowie als Owner die Gruppe "users" :-(.

Wieso kann ich als stinknormaler Benutzer auf jedes Home-Share lesend zugreifen? Das ist doch sicherlich nicht im Sinne des "home" Prinzips vom smbd oder?


Viele Grüße,
Christian
 
Zuletzt bearbeitet:

PeterG

Benutzer
Mitglied seit
12. Sep 2008
Beiträge
472
Punkte für Reaktionen
0
Punkte
0
Hi,
hier haben die Verzeichnisse allerdings 0755 (wieso ist das unterschiedlich?); der als default lesende Zugriff ist vielleicht wegen der persönlichen Homepage so eingerichtet? Sonst müßten dafür ja wohl gesondert Rechte gesetzt werden und das traut Synology den Nutzer evtl. nicht zu...?

Gruß
Peter
 

jahlives

Benutzer
Mitglied seit
19. Aug 2008
Beiträge
18.275
Punkte für Reaktionen
4
Punkte
0
smb verlässt sich letztendlich auf die Rechte der Verzeichnisse im Filesystem. Klar hat es eine eigene Rechteverwaltung in der smb.conf aber wenn sowohl smb.conf als auch Filesystem den Zugriff erlauben. Am einfachsten auf jedes Homeverzeichnis in home ein
Code:
$ chmod 0600 /path/to/home/user
Homeverzeichnisse sollten immer 0600 sein. Man kann sie für ALIAS Zugriff auch 0660 setzen, DANN aber darf es nicht einer Gruppe wie users gehören. So eingesetzt sollte man eine neue Gruppe erstellen, die nur die gewünschten User enthält
 

TACiboy

Benutzer
Mitglied seit
10. Dez 2008
Beiträge
215
Punkte für Reaktionen
0
Punkte
16
smb verlässt sich letztendlich auf die Rechte der Verzeichnisse im Filesystem. Klar hat es eine eigene Rechteverwaltung in der smb.conf aber wenn sowohl smb.conf als auch Filesystem den Zugriff erlauben. Am einfachsten auf jedes Homeverzeichnis in home ein
Code:
$ chmod 0600 /path/to/home/user
Homeverzeichnisse sollten immer 0600 sein. Man kann sie für ALIAS Zugriff auch 0660 setzen, DANN aber darf es nicht einer Gruppe wie users gehören. So eingesetzt sollte man eine neue Gruppe erstellen, die nur die gewünschten User enthält



Vielen Dank für eure Antworten - ich habe inzwischen die Rechte auf OS-Ebene wie von dir empfohlen angepasst.

Ich hoffe die Entwickler verrennen sich nicht in ihrem Berechtigungskonzept. Inzwischen ist es ja schon an zig verschiedenen Stellen möglich die Rechte anzupassen. Hoffentlich entwickelt sich das Thema nicht zu einem Fass ohne Boden.


Viele Grüße,
Christian
 

jahlives

Benutzer
Mitglied seit
19. Aug 2008
Beiträge
18.275
Punkte für Reaktionen
4
Punkte
0
Ich habe mir die Config von samba mal angeschaut. Synology hat hier wohl einen falschen Parameter erwischt.
Bei der Konfig der Freigabe in smb.conf sollte es valid users = %S heissen und nicht %U. %U bedeutet, dass der angemeldete Nutzer zugreifen darf (nur die Rechte im Dateisystem verhindern so, dass jemand auch schreibend auf das home eines anderen Users zugreifen kann). %S hingegen ist der Name der Freigabe und das bedeutet, dass nur der Benutzer dessen Name mit demjenigen der Freigabe überienstimmt zugreifen kann.
Ausserdem sind die Rechte beim Erstellen von Dateien/Verzeichnissen via samba in den homes zu lasch gesetzt. Sowohl directory mode als auch create mode sind 0777 viel zu lasch.
Sollte etwas wie 0600 resp 0700 sein
 

PeterG

Benutzer
Mitglied seit
12. Sep 2008
Beiträge
472
Punkte für Reaktionen
0
Punkte
0
Hi,
wäre da nicht noch mehr anzupassen?
Wie ist es mit den Einstellungen für homes: "browseable=no" und "guest ok=no" nicht besser?

[Edit] Meine Befürchtungen mit der persönlichen Website scheinen irgendwie nicht unberechtigt. Ich blicke da zwar nicht wirklich durch, aber klar ist, dass der Zugriff nach Änderung der Rechte des Benutzerverzeichnisses auf 0600 nicht mehr geht. Mit 0711 geht es wieder (dabei sind die Rechte für das Unterverzeichnis www die gesamte Zeit unverändert auf 0755 gewesen und auch an der index.html habe ich nichts geändert). Sollte das nicht unabhängig voneinander einstellbar sein?

Gruß
Peter
 
Zuletzt bearbeitet:

jahlives

Benutzer
Mitglied seit
19. Aug 2008
Beiträge
18.275
Punkte für Reaktionen
4
Punkte
0
Ja das dürfte wohl wirklich ein Problem der Userhomepage sein. Denn damit der User Apache überhaupt auf die Daten zugreifen kann, muss auch dem nobody Lesezugriff gewährt werden. Das würde erklären warum die Lesenrechte auf die Homeverzeichnisse so lax gesetzt sind.
Ich persönlich würde alle Dateien auf die der Apache zugreifen soll auch im dafür vorgesehenen Ordner unterbringen (doc root). Du könntest für die Userhomepages auch Subdomains in der Apache Config aufsetzen.
Auf jeden Fall würde ich davon abraten die Userhomepage Daten unter homes abzulegen. Das setzt zu weitreichende Leserechte auf der Dateisystem voraus (zumindest zu weitereichend für persönliche Verzeichnisse, wo man eventuell auch mal was persönliches Speichern will)
 

TACiboy

Benutzer
Mitglied seit
10. Dez 2008
Beiträge
215
Punkte für Reaktionen
0
Punkte
16
Sollten wir dieses Problem nicht an die Entwickler reporten? Ich denke dass hier noch einiges an Feinabstimmung erforderlich ist, bevor User-Homes effizient und sicher genutzt werden können.

Wie verhält es sich mit dem Zugriff des "admin" Benutzers? Der Ansatz von Synology ist ja, dem admin über das "homes" Share den Zugriff auf alle User-Home zu ermöglichen. Dies wird jedoch nicht mehr funktionieren, sobald ein 0700 gesetzt ist bzw. die SMB Shares den Zugriff verweigern.


Viele Grüße,
Christian
 

jahlives

Benutzer
Mitglied seit
19. Aug 2008
Beiträge
18.275
Punkte für Reaktionen
4
Punkte
0
Ich habe meine home Freigabe bei mir mal angepasst. So müsste es eigentlich nicht mehr möglich sein auf die Share eines anderen Users zuzugreifen
Code:
[%U]
valid users=%S
path=/volume1/homes/%U
comment=home
writable=yes
directory mode=0700
create mode=0600
browseable=yes
 

PeterG

Benutzer
Mitglied seit
12. Sep 2008
Beiträge
472
Punkte für Reaktionen
0
Punkte
0
Sollten wir dieses Problem nicht an die Entwickler reporten? Ich denke dass hier noch einiges an Feinabstimmung erforderlich ist, bevor User-Homes effizient und sicher genutzt werden können.

Die Ansicht teile ich. Denn wenn es schon User-Home und persönliche Websites gibt, sollte das auch "ab Werk" sicher funktionieren. Die User Homepages jetzt wieder verlegen zu müssen, wenn die Home-Verzeichnisse sicher sein sollen oder unsichere Verzeichnisrechte zu haben, ist beides unerfreulich. Eigenartig, dass das in der Beta-Phase anscheinend niemand bemerkt hat...

[Edit] Habe das per mail an Syno weitergegeben, mal sehen, was da kommt. Ist sicher nicht schädlich, wenn der OP hier und andere das auch weitermelden.

Gruß
Peter
 
Zuletzt bearbeitet:

PeterG

Benutzer
Mitglied seit
12. Sep 2008
Beiträge
472
Punkte für Reaktionen
0
Punkte
0
Hi,
boah, das nenn ich mal schnelle Reaktion. Habe schon Antwort erhalten (9 Minuten nach Versand meiner Mail!): Problem ist bekannt, Lösung soll mit einem neuen Release geplant für Ende März erfolgen.

Gruß
Peter
 

PeterG

Benutzer
Mitglied seit
12. Sep 2008
Beiträge
472
Punkte für Reaktionen
0
Punkte
0
Hi,
es wäre wohl doch ganz gut, wenn der Fehler auch von anderen noch gemeldet wird (soweit nicht schon geschehen). Verwirrenderweise habe ich nach der ersten Antwort (s. o.) jetzt eine weitere Mail bekommen, in der Synology meint, ich hätte ein Problem mit der Samba-Anmeldung mit dem richtigen Benutzer (wo bei fehlender Identität der Benutzerdaten die Anmeldung als guest erfolgt); eigentlich dachte ich, ich hätte das Problem auch mit Beispielen deutlich genug beschrieben. Wie auch immer: Ich habe es nochmal deutlicher zu machen versucht, vielleicht gelingt es anderen aber auch gleich besser.

Gruß
Peter
 

TACiboy

Benutzer
Mitglied seit
10. Dez 2008
Beiträge
215
Punkte für Reaktionen
0
Punkte
16
Hi Peter,

mach ich gerne - kannst du mir kurz verraten über welchen Kanal du Kontakt zu Synology aufgenommen hast (welche eMail Adresse, Kontaktforular???) ? Ich möchte gerne sicherstellen dass ich an die selbe Quelle gerate.


Viele Grüße,
Christian
 

jahlives

Benutzer
Mitglied seit
19. Aug 2008
Beiträge
18.275
Punkte für Reaktionen
4
Punkte
0
Hi,
es wäre wohl doch ganz gut, wenn der Fehler auch von anderen noch gemeldet wird (soweit nicht schon geschehen). Verwirrenderweise habe ich nach der ersten Antwort (s. o.) jetzt eine weitere Mail bekommen, in der Synology meint, ich hätte ein Problem mit der Samba-Anmeldung mit dem richtigen Benutzer (wo bei fehlender Identität der Benutzerdaten die Anmeldung als guest erfolgt); eigentlich dachte ich, ich hätte das Problem auch mit Beispielen deutlich genug beschrieben. Wie auch immer: Ich habe es nochmal deutlicher zu machen versucht, vielleicht gelingt es anderen aber auch gleich besser.

Gruß
Peter
Synology (zumindest der Supporter) hat echt behauptet du seist als guest angemeldet worden und hättest darum Zugriff auf andere Home Shares bekommen?
Das würde die Lücke eher grösser als kleiner erscheinen lassen :rolleyes:
Ich fürchte Synology wird das Problem nicht so einfach aus der Welt schaffen können, denn die User Homepages in den Userverzeichnissen verlangen, dass nobody (User unter dem der Apache läuft) lesend und ausführend darauf zugreifen kann. Damit kann man die Rechte nicht wirklich restriktiv setzen, ohne die Funktionalität der User Homepages zu verlieren
 

PeterG

Benutzer
Mitglied seit
12. Sep 2008
Beiträge
472
Punkte für Reaktionen
0
Punkte
0
Hi Peter,
mach ich gerne - kannst du mir kurz verraten über welchen Kanal du Kontakt zu Synology aufgenommen hast (welche eMail Adresse, Kontaktforular???) ?

Über das offizielle Supportformular. Lustigerweise hatte ich ja zunächst eine sehr schnelle Antwort "Problem bekannt, wir arbeiten dran" wie auch im englischen Forum berichtet, bekommen und dann die weitere Mail, die m. E. auf ein völliges Missverstehen des von mir geschilderten Problems zurückzuführen ist.
Anscheinend weiß Syno aber Bescheid; weiterer Meldungen bedarf es dann wohl nicht mehr unbedingt.

Gruß
Peter
 

jahlives

Benutzer
Mitglied seit
19. Aug 2008
Beiträge
18.275
Punkte für Reaktionen
4
Punkte
0
Es nimmt mich wirklich wunder wie das dann umgesetzt werden kann. Für besteht da ein konzeptionelles Problem: Solange die Daten der Userwebseiten in den Home Verzeichnissen liegen kann man die Rechte einfach nicht entsprechend setzen. Da wird immer eine Lücke bestehen.
Sie könnten z.B. durch einen Apache Master Prozess für die Zugriffe einen Child Prozess unter der Kennung des jeweiligen Besitzers des Homeverzeichnisses laufen lassen. Vorteil: Rechte auf die Verzeichnisse können restriktiv gesetzt werden. Nachteil: Der Webserver Prozess läuft mit viel zu weitreichenden Rechten auf's Dateisystem. Ausserdem müsste der Master Prozess wohl unter root laufen (ebenfalls viel zuviel Rechte für einen "normalen" Webserver)

Für mich die einzige Lösung ist es die Webpagedaten der User in ein eigenes Verzeichnis zu verfrachten (oder gleich in den Doc Root des User Apache). Die einzelnen Pages der User liessen sich immer noch mit http://DS_NAME/~USER ansprechen. Es wäre ggf einfach eine .htaccess Datei mit einem mod_rewrite drin nötig. Die Rewrite_Cond prüft ob der angegebene USER überhaupt existiert (einfach eine Rewrite_Cond für jeden Benutzer aus /etc/passwd der eine Page haben darf jeweils durch OR mit der nächsten verknüpft). Die abschliessende Rule machted alles hinter ~ und schreibt intern den Request auf das korrekte Userverzeichnis um.

Vorteil: korrekte Rechte auf den Homeverzeichnissen (auch die Eigentümerschaft liesse sich dann anpassen --> chgrp auf eine Gruppe des jeweiligen Users), der Apache weiterhin unter nobody. Nachteil: Daten nicht mehr in der User Home Share (liesse sich aber mit entsprechenden mount -o bind's in den bootscripts der DS schnell beheben)
 

itari

Benutzer
Mitglied seit
15. Mai 2008
Beiträge
21.900
Punkte für Reaktionen
14
Punkte
0
Wir werden es ja sehen. Es wird auf jeden Fall sehr spannend werden, wie sie das hinbekommen.

Itari
 

blackfir3

Benutzer
Mitglied seit
04. Mai 2008
Beiträge
294
Punkte für Reaktionen
0
Punkte
16
Wann ist dann mit einer neuen Firmware ohne dem Fehler zurechnen?
 

PeterG

Benutzer
Mitglied seit
12. Sep 2008
Beiträge
472
Punkte für Reaktionen
0
Punkte
0
Hi,
<KRISTALLKUGEL-MODE ON>Ende nächster Woche<KRISTALLKUGEL-MODE OFF>
Im Ernst: Wenn fertig, würde ich meinen. Synology hat das Problem bestätigt und arbeitet an der Behebung. Das gilt auch für die UPNP-Probleme und wohl noch ein paar andere Kleinigkeiten. Vermutlich wird es ein update geben, wenn das alles abgearbeitet ist. Zwar wurde gelegentlich vom Support etwas in Richtung meiner Kristallkugelprognose geäußert; allzu ernst nehmen würde ich das aber nicht. Vielleicht gibt es ja auch einen kleineren Patch zwischendurch...

Gruß
Peter
 
Status
Für weitere Antworten geschlossen.
 

Kaffeautomat

Wenn du das Forum hilfreich findest oder uns unterstützen möchtest, dann gib uns doch einfach einen Kaffee aus.

Als Dankeschön schalten wir deinen Account werbefrei.

:coffee:

Hier gehts zum Kaffeeautomat