Normalen User in seinen Rechten weiter beschneiden

Mardor

Well-Known Member
Hallo,

gibt es die Möglichkeit einen normalen User (der nicht in der Gruppe wheel ist) so zu beschneiden, dass er beispielsweise keine Recht hat seine IP Adresse über ifconfig zu sehen. Ich persönlich stelle mir das schwierig vor, denn wenn der User ein Programm startet der ifconfig benötigt wird dies nicht funktionieren.

Liege ich da richtig ?

Gruß Mardor
 
Prinzipiell jein :)

Du müsstest dir im Vorfeld im Klaren sein, was du erreichen möchtest.
Auch wenn die IP-Adresse nur ein Beispiel ist, musst du dir immer den Sicherheitszugewinn vor Augen führen, den eine Maßnahme mit sich bringt.
Ein System sollte auch weiterhin sicher sein, wenn ein User die IP-Adresse kennt. Weiterhin gibt es in der Regel auch immer mehrere Wege nach Rom (bspw. Arp-Cache auslesen, Zielsystem pingen und die Quelladresse auslesen...)

Du kannst versuchen dem User eine eingeschränkte Shell bereitzustellen, wo vordefinierte Kommandos angegeben sind.

Wie gesagt: Was ist dein genauer Anwendungsfall?
Gruß
Markus
 
Hallo Markus,

es ging mir nicht speziell um die IP Adresse, ich habe mir nur Gedanken gemacht ob es die Möglichkeit gibt einen User mehr einzukesseln. Mir ist klar, dass ein nicht vertrauenswürdiger User eigentlich auf dem System sowieso nix zu suchen hat, aber eigentlich sollte es für dieses Problem eine Lösung geben.

Ich möchte zusätzlich einfach auch verhindern, dass ein User zu viel internas (die beispielsweise in /etc liegen) rausbekommt.

Gruß Mardor
 
Dafür reicht ja das normale Unix-Berechtigungskonzept.
Wenn du die Rechte von /etc/ entsprechend setzt, kommt kein User ohne Gruppe wheel lesen oder gar schreibend auf die Verzeichnisse.

Weiterhin gibt es z.B. Auditing, welches du nur aktivieren musst.

Untrusted Users haben aber, wie du sagst, nichts auf dem System zu suchen.
Gruß
Markus
 
Mir ist klar, dass ein nicht vertrauenswürdiger User eigentlich auf dem System sowieso nix zu suchen hat, [...]
UNIX ist ein Mehrbenutzersystem, das eben gerade auch für nicht vertrauenswürdige User betrieben werden kann. Wenn man jedem User trauen müsste, dürfte es keine Webserver oder Shellserver geben. Setze die Rechte der Binaries/Dateien entsprechend und benutze eine restriktive Shell.

Rob
 
Generell basiert das klassische Unix-Rechtesystem auf einer einfachen Form der ACL. Der Nutzer hat eine Eigenschaft (seine UID und GID), Objekte haben anhand dieser Eigenschaft definierte Berechtigungen. Die Zugriffsrechte eben. Das System ist einfach verständlich und umsetzbar, allerdings nicht immer ausreichend. FreeBSD bietet daher - wie auch die meisten anderen modernen Systeme - noch zwei weitere Wege:
- ACL, sowohl in POSIX- (nur auf UFS), als auch NFSv4-Systax). ACL erweitern das klassische Unix-Rechtesystem um eine Reihe weiterer, einfach zu kombinierender Attribute. Vor allem erlaubt es Rechtekombinationen, die mit dem klassischen Rechtesystem nur schwer bis gar nicht abzubilden sind. Die Doku dazu ist: http://www.freebsd.org/doc/handbook/fs-acl.html
- MAC. MAC funktionieren "anders herum" zu normalen ACL-Rechten. Die Rechte werden hier an den Benutzer gebunden und nicht an das Objekt. Hieraus ergeben sich extrem weitreichende Möglichkeiten, die Nutzer extrem einschränken können und das System im vergleich zu klassischen Rechten deutlich stärker "härten" zu können. Allerdings sind MAC auch weitaus komplexer zu verstehen und einzurichten, weshalb man ihnen ein langes und dennoch nur oberflächliches Handbuchkapitel widmete: http://www.freebsd.org/doc/handbook/mac.html
 
Zurück
Oben