[Eisfair_dev] Wichtige Änderung in Samba 4.13

Marcus Röckrath marcus.roeckrath at gmx.de
Mo Okt 26 14:49:51 CET 2020


Hallo Aleex,

Alex Busam wrote:

>> SAMBA_SHARE_x_ACTIVE='yes'
>> SAMBA_SHARE_x_NAME='Scanverzeichnis'
>> SAMBA_SHARE_x_COMMENT='Scanverzeichnis'
>> SAMBA_SHARE_x_RW='yes'
>> SAMBA_SHARE_x_BROWSE='yes'
>> SAMBA_SHARE_x_PATH='/home/scanner'
>> SAMBA_SHARE_x_USER='scanner user1 user2'
>> 
>> oder
>> 
>> SAMBA_SHARE_x_USER='+users'
>
> ich hab die angekündigte Änderung und deren Lösung nicht verstanden.

Nehmen wir mal an

/pfad/zur/einer/Freigabe

ist als Freigabe X in Samba definiert. Üblicherweise können die
Zugriffsberechtigten nur auf Dateien/Verzechnisse unterhalb dieses Pfades
zugreifen.

Legt man nun z. B. den Link

/pfad/zu/einer/Freigabe/link_zu_etc an und dieser Link zeigt auf /etc, liegt
das Linkziel außerhalb der Freigabe, es kann aber dennoch darauf nun wegen
unserer Einstelliung von same "wide links" zugegriffen werden.

Man verläßt damit den eigentlich zugewiesenen Raum der Freigabe.

Wenn du als Admin einen solchen Link anlegst, ist das prinzipiell ja so
gewollt und dieser Link somit nicht das potentielle Risiko.

Ein möglicher Angriff besteht darin, und es hat solche wohl gegeben, dass
zusammen mit der Einstellung "unix extensions (die deshalb zusammen mit
wide links nicht gesetzt werden können) es jemand schafft selbst irgendwo
innerhalb der Freigabe eigene Links mit Zielen außerhalb der Freigabe
anlegen kann.

Stell dir vor, es legt jemand einen Link auf / in die Freigabe. Damit
besteht über die Freigabe ein Vollzugriff auf das System.

Die Samba-Macher wollen also wide links nach einer Übergangsphase dauerhaft
entfernen, man also den Raum einer Freigabe nicht mehr ausweiten kann.

> Leider verstehe ich auch dein Konfig-Beispiel hier nicht. Kannst Du das
> näher erklären?
> Jetzt kann user1 das Scanverzeichnis als user1 auch mounten, obwohl das
> Verzehcnis dem User scanner gehört? Aber doch nur wenn beide Mitglied
> von users sind!?

Nein, wenn user1 explizit aufgeführt ist, dann hat er Zugriff. Eine Gruppe
(Prefix +) gibt einer ganzen Gruppe Zugriff. Das Aufzählen von einzelnen
Usern ist bei einer begrenzten Zahl Zugangsberechtigter sinnvoll, wenn man
die nicht in einer Gruppe zusammenfassen will.

SAMBA_SHARE_x_RW='yes'
SAMBA_SHARE_x_BROWSE='yes'
SAMBA_SHARE_x_PATH='/home/scanner'
SAMBA_SHARE_x_USER='scanner user1 user2'

Die User scanner, user1 und user1 erhalten rw-Zugriff auf die
Freigabe /home/scanner.

Mit

SAMBA_SHARE_x_USER='+users'

statt

SAMBA_SHARE_x_USER='scanner user1 user2'

hätte jedes Mitglied der Gruppe users rw-Zugriff auf die
Freigabe /home/scanner.

Man kann auch Gruppen und user mischen:

SAMBA_SHARE_x_USER='scanner +users'

-- 
Gruß Marcus
[eisfair-Team]


Mehr Informationen über die Mailingliste Eisfair_dev