F
@Fragender sagte in Webserver, sudo, ssh client usw. - richtiger Umgang mit Passwörtern!:
Man muss doch ohnehin darauf vertrauen, dass das System insgesamt nicht kompromittiert ist... Also nicht nur ein einzelner Benutzer... Dann braucht man sich um die Schadensbegrenzung keine Gedanken machen.
Beispiel: Du hast ein Haus mit einer verschlossenen Haustür, dann würdest du doch auch nicht noch eine Mauer und Wassergraben außen drumherum bauen, damit die Auswirkungen nicht so schlimm sind, wenn ein Einbrecher zwar die Mauer überwindet, jedoch nicht den Wassergraben...
Es ist richtig, ein System bereits als kompromittiert anzusehen, wenn ein Angreifer bereits Rechte eines normalen Users hatte. Das heisst aber nicht, dass man dem Angreifer dann auch gleich maximale Rechte einräumen sollte. Wenn man die User-Berechtigungen restriktiv genug gestaltet, dann reduziert man damit nämlich den potentiellen Schaden eines solchen Angriffs.
Ich sehe das eher als mehrere Verteidigungsringe um meine Festung, und ja, da gehört auch ein Wassergraben dazu. Es ist schon eine ziemliche Hürde nach dem initialen Angriff auch erstmal noch eine Rechteausweitung auf root hinzubekommen. Solche Exploits gibts nicht im Supermarkt am Grabbeltisch - im Gegensatz zu solchen, die "normale" Userrechte gewähren, bei all den zusammengeschusterten Webanwendungen.
Ich lasse Dienste wie Webserver sogar noch in einem unprivilegierten LXC-Container laufen. Wenn sich da jemand root ergattert, und es auch noch schafft aus dem Container auszubrechen, stellt er fest, dass er auf dem darüber liegenden System nur eine User-ID hat, die so ziemlich gar nichts darf - und da hinter ist das Ding nur ein Gastsystem unter einem Hypervisor. Ganz schön Arbeit, wirklich die volle Kontrolle über die physische Hardware zu bekommen ... diese Verteidigungsringe machen schon Sinn, vor allem wenn man die tatsächlich sensiblen Daten, die man schützen will, nicht gleich hinter dem ersten Ring liegen hat.